Re: 2.6.22-rc: regression: no irda0 interface (2.6.21 was OK), smsc does not find chip

From: Bjorn Helgaas
Date: Mon Aug 13 2007 - 13:08:14 EST


On Saturday 11 August 2007 12:39:35 pm Andrey Borzenkov wrote:
> This stopped working again in 2.6.23-rc. In 2.6.22 we decided to disable PnP
> by default; it is apparently enabled now and fails to activte IrDA
> completely. So it moves to post-2.6.22 regressions :)
>
> let me know which information you need
>
> [ 2192.666450] pnp: PnP ACPI init
> [ 2192.666589] ACPI: bus type pnp registered
> [ 2192.686035] pnp: Device 00:0a activated.
> [ 2192.686089] 00:0a: SMCf010 not responding at SIR 0x100, FIR 0x2e8;
> auto-configuring
> [ 2192.687610] pnp: Device 00:0a disabled.
> [ 2192.693179] pnp: Device 00:0a activated.
> [ 2192.693210] 00:0a: not responding at SIR 0x100, FIR 0x2e8; swapping
> SIR/FIR and reconfiguring
> [ 2192.694720] pnp: Device 00:0a disabled.
> [ 2192.701232] pnp: Device 00:0a activated.
> [ 2192.701259] 00:0a: responds at SIR 0x2e8, FIR 0x100
> [ 2192.709309] pnp: PnP ACPI: found 12 devices
> [ 2192.709351] ACPI: ACPI bus type pnp unregistered
>
> ....
>
> [ 2207.986550] Detected unconfigured Toshiba laptop with ALi ISA bridge SMSC
> IrDA chip, pre-configuring device.
> [ 2207.986587] Activated ALi 1533 ISA bridge port 0x02e8.
> [ 2207.986602] Activated ALi 1533 ISA bridge port 0x02f8.
> [ 2207.986817] found SMC SuperIO Chip (devid=0x5a rev=00 base=0x002e):
> LPC47N227
> [ 2207.986851] smsc_superio_flat(): fir: 0x2f8, sir: 0x2e8, dma: 03, irq: 7,
> mode: 0x0e
> [ 2207.986873] smsc_ircc_present: can't get sir_base of 0x2e8

As of 2.6.23-rc2, we should have:
- probes for 8250 legacy devices (as in 2.6.21 and previous)
- smsc PNP probes turned off by default (2.6.21 and previous had no
PNP probes for smsc at all)
- some complicated PNP quirks for SMCf010 devices

In other words, I think we're basically back where we started. The 8250
driver should find a ttyS3 device at 0x2e8, and it should claim those
ports, which will prevent smsc from claiming them.

If you use "setserial /dev/ttyS3 none", the 8250 driver should release
the ports at 0x2e8, and then the smsc-ircc2 driver should be able to
load correctly. I think this is what we always had to do in the past,
right?

If that doesn't work, try removing the body of quirk_smc_enable() in
drivers/pnp/quirks.c in addition. It's possible that the quirk changes
the config in a way that messes up the smsc-ircc2 probe.

Bjorn
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/