[ltp] IR (SIR) success!

Thomas Hood linux-thinkpad@www.bm-soft.com
Mon, 26 Feb 2001 20:28:39 +0000 (GMT)


--- Tom Grydeland <Tom.Grydeland@phys.uit.no> wrote: 
> Thanks a bundle to Thomas Hood, Till Straumann and Tom Allison for
> patient explanations!

I've been learning alot from these discussions too.
Thanks, guys.

> What remains:
>  * Switching the devices around -- having IR on /dev/ttyS0 (4,64) and
>    the DB9 on /dev/ttyS2 (4,66) or have them use different IRQs.  Not
>    because it makes a difference, I just want to convince myself that it
>    can be done.

Okay, we have a Linux addict on our hands here.
Somebody help him!

>  * FIR
>   findchip -v reports:
> reg=0x011
> Found NSC PC87338 Controller at 0x2e, DevID=0x0b, Rev. 2
>     SIR Base 0x2f8, FIR Base 0x2f8
>     IRQ = 4, DMA = 3
>     Enabled: yes, Suspended: no
>     UART compatible: yes
>     Half duplex delay = 0 us
> 
> I don't understand where 0x2e or 0x2f8 comes from -- lspnp -v -b 13
> reports:
> 13 IBM0071 IBM Thinkpad infrared port
>         irq 4
>         io 0x03e8-0x03ef
>         dma 3
> 
> And tpctl --rs2 reports:
>    serial port 2:                                     enable  0x3e8 IRQ4

0x2e is the io address of the National Semiconductor
PC97338 chip's control registers.  (This is where the
PnP BIOS puts the PC97338 chip.)  By twiddling these
registers, the addresses of the serial port UARTs 
(which are on the PC97338 but which are talked to at
different io addresses) can be changed.  tpctl --rs2
looks at these registers to find out where serial port
#2 has been put, viz., 0x3e8.

The PC97338 chip has two modes, called 'legacy' and
'PnP' and there are different configuration registers
for each mode.  Usually the chip is in PnP mode because
the BIOS has done PnP configuration to it by the time
Linux boots.  Consequently the PnP configuration regs
are the ones to look at; and those are the ones that
lspnp and tpctl do look at.  The findchip program may
be looking at the "legacy" configuration registers.

> In this configuration, I can
> 
>     irattach /dev/ttyS2 -d
> 
> followed by
> 
>     pilot-xfer -p /dev/irnine -l
> 
> and I get a listing of the databases on the palm.
> 
> When I try to load the nsc-ircc module for FIR connection,
> 
>     kernel: nsc-ircc, Wrong chip version ff 

Hmm.  We need to look into this.

Thomas

____________________________________________________________
Do You Yahoo!?
Get your free @yahoo.co.uk address at http://mail.yahoo.co.uk
or your free @yahoo.ie address at http://mail.yahoo.ie

----- The Linux ThinkPad mailing list -----
The linux-thinkpad mailing list home page is at:
http://www.bm-soft.com/~bm/tp_mailing.html