On Sunday 10 June 2007 12:47:07 am Andrey Borzenkov wrote: > > Maybe we should also run the legacy probe when the PnP one fails. I > > don't know how the preconfiguration stuff will behave with the device > > being PnP enabled, but with your patch Andrey will still need to > > modprobe smsc-ircc with smsc_nopnp. > > One thing that makes me uneasy - ideally we have to do it *after* PnP probe > fails. Currently we lie to PnP layer that we successfully probed for device > while in effect we did not (at least, not where PnP told us to). > > > So, here is the patch I propose (I had to move smsc_ircc_legacy_probe() > > a bit earlier in the code to avoid forward declaration, but it's > > basically your patch plus a call to smsc_ircc_legacy_probe() from the > > pnp_probe() routine):
This patch does the legacy probe if PNP says we have an SMCf010, but we couldn't make it work. In that situation, I think we need a PNP quirk or other kernel PNP fix. Ultimately, we should only use the legacy probe if we don't have PNP at all. But we're a long ways from that. First, we have to figure out how to make PNP detection work at all, then make sure it works for all the machines we know about. > Yes this patch works: > > [58674.337465] pnp: Device 00:0a activated. > [58674.337465] smsc_ircc_present(), addr 0x02e8 - no device found! > [58674.337465] PnP probe failed > [58674.340799] Detected unconfigured Toshiba laptop with ALi ISA bridge SMSC > IrDA chip, pre-configuring device. So while this patch works, I don't think it's the right long-term direction. > {pts/1}% lspnp -vv 00:0a > 00:0a SMCf010 SMC Fast Infrared Port > state = active > allocated resources: > io 0x100-0x107 > ... > {pts/1}% cat /proc/ioports > ... > 0100-013f : pcmcia_socket0 > ... > {pts/1}% sudo cat > /sys/class/pcmcia_socket/pcmcia_socket0/available_resources_io > 0x00000100 - 0x000003af > 0x000003e0 - 0x000004ff > 0x00000820 - 0x000008ff > 0x00000a00 - 0x00000aff > 0x00000c00 - 0x00000cf7 It's indeed very interesting that pcmcia_socket0 seems to have its fingers in the same ioport range the IR device thinks it's using. I don't know much about PCMCIA, but I can see I'm going to have to learn something :-) Can you send me your "lspci -vv" output, the whole /proc/ioports and /proc/iomem, and your dmesg log? And maybe your pcmcia_socket available_resources_io and available_resources_mem for good measure. Bjorn - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/