On Monday 04 June 2007, Bjorn Helgaas wrote: > On Sunday 03 June 2007 02:16:05 am Andrey Borzenkov wrote: > > On Sunday 03 June 2007, Andrey Borzenkov wrote: > > > Under 2.6.22-rc I lost irda0 interface - smsc claims no device present. > > > Nothing was changed in setup except kernel version. > > > > > > 2.6.21: > > > > > > Detected unconfigured Toshiba laptop with ALi ISA bridge SMSC IrDA > > > chip, pre-configuring device. > > > Activated ALi 1533 ISA bridge port 0x02e8. > > > Activated ALi 1533 ISA bridge port 0x02f8. > > > found SMC SuperIO Chip (devid=0x5a rev=00 base=0x002e): LPC47N227 > > > smsc_superio_flat(): IrDA not enabled > > The "IrDA not enabled" makes me think that even in the working case, > the BIOS left the IR port disabled. Are there any BIOS setup switches > that affect this port? > No (at least in BIOS setup screens). The closest is COM port setting (IRQ/DMA). This looks funny as I do not have COM interface anyway but may be docking station has. > > > smsc_superio_flat(): fir: 0x2f8, sir: 0x2e8, dma: 03, irq: 7, mode: > > > 0x02 SMsC IrDA Controller found > > > IrCC version 2.0, firport 0x2f8, sirport 0x2e8 dma=3, irq=7 > > It seems strange that both FIR and SIR would use legacy COM ports > (0x2f8 == COM2, 0x2e8 == COM4). My HP nw8240 has SIR at 0x3e8 (COM3) > and FIR at 0x100. > Well, this is how code was written. There was no autodetection anyway, it used hardcoded builtin (unless overridden). > Do you know if both the FIR and SIR interfaces work? I'm wondering if > your irda0 only uses SIR at 0x2e8, and FIR has always been broken. > How can I check it? > > > No transceiver found. Defaulting to Fast pin select > > > IrDA: Registered device irda0 > > > > > > > > > 2.6.22-rc3: > > > Detected unconfigured Toshiba laptop with ALi ISA bridge SMSC IrDA > > > chip, pre-configuring device. > > > Activated ALi 1533 ISA bridge port 0x02e8. > > > Activated ALi 1533 ISA bridge port 0x02f8. > > > pnp: Device 00:0a activated. > > > smsc_ircc_present(), addr 0x02e8 - no device found! > > > pnp: Device 00:0a disabled. > > > > {pts/1}% cat /sys/bus/pnp/devices/00:0a/resources > > state = active > > io 0x100-0x107 > > io 0x2e8-0x2ef > > irq 5 > > dma 1 > > The PNP probe I added expects SIR at the first range and FIR at the > second. I would think the 0x2e8 range would be SIR, since it's compatible > with a COM port. Is it possible the BIOS just reports these in the > opposite order, with FIR first and SIR second? Can you try the patch > below? > It does not work unfortunately: Detected unconfigured Toshiba laptop with ALi ISA bridge SMSC IrDA chip, pre-configuring device. Activated ALi 1533 ISA bridge port 0x02e8. Activated ALi 1533 ISA bridge port 0x02f8. pnp: Device 00:0a activated. smsc_ircc_pnp_probe(): fir 0x100 sir 0x2e8 dma 1 irq 5 High: 0x11, Chip 0x0 smsc_ircc_present(), addr 0x0100 - no device found! pnp: Device 00:0a disabled. > Index: linux-2.6/drivers/net/irda/smsc-ircc2.c > =================================================================== > --- linux-2.6.orig/drivers/net/irda/smsc-ircc2.c 2007-06-04 > 10:21:46.000000000 -0600 +++ > linux-2.6/drivers/net/irda/smsc-ircc2.c 2007-06-04 10:21:57.000000000 -0600 > @@ -386,8 +386,8 @@ > pnp_dma_valid(dev, 0) && pnp_irq_valid(dev, 0))) > return -EINVAL; > > - sirbase = pnp_port_start(dev, 0); > - firbase = pnp_port_start(dev, 1); > + firbase = pnp_port_start(dev, 0); > + sirbase = pnp_port_start(dev, 1); > dma = pnp_dma(dev, 0); > irq = pnp_irq(dev, 0);
Attachment:
signature.asc
Description: This is a digitally signed message part.
- References:
- 2.6.22-rc: regression: no irda0 interface (2.6.21 was OK), smsc does not find chip
- From: Andrey Borzenkov <[email protected]>
- Re: 2.6.22-rc: regression: no irda0 interface (2.6.21 was OK), smsc does not find chip
- From: Andrey Borzenkov <[email protected]>
- Re: 2.6.22-rc: regression: no irda0 interface (2.6.21 was OK), smsc does not find chip
- From: Bjorn Helgaas <[email protected]>
- 2.6.22-rc: regression: no irda0 interface (2.6.21 was OK), smsc does not find chip
- Prev by Date: Re: [PATCH ext3/ext4] orphan list check on destroy_inode
- Next by Date: Re: 2.6.22-rc: regression: no irda0 interface (2.6.21 was OK), smsc does not find chip
- Previous by thread: Re: 2.6.22-rc: regression: no irda0 interface (2.6.21 was OK), smsc does not find chip
- Next by thread: [PATCH] Replace remaining comment references to "driverfs" with "sysfs".
- Index(es):