ioports 0x100-0x3af and iomem 0xd000-0xdffff, 0xa0000000-0xa0ffffff -- safe to use on x86 for pcmcia?

Alan Cox alan at lxorguk.ukuu.org.uk
Wed Nov 25 06:36:22 EST 2009


>   This latter configuration file most often contains 
> 	include port 0x100-0x3af
> 	include memory 0xc0000-0xfffff
> 	include memory 0xa0000000-0xa0ffffff

Which crashes older thinkpads, some ATI chipset systems and
usually anything containing an NE2000 clone in ISA space.

> And so Komuro (CCed) suggested to add these default resource entries to the
> kernel, so that it can later use parts of these resource areas to enable
> PCMCIA devices without userspace interaction.
> 
> Do you think it would be safe to enable these areas by (kernel) default on
> x86? Of course, other entries in /proc/io{mem,ports} would be honoured, there
> would be a boot option to disable this feature, and some tests are run on the
> iomem and ioport resource areas.

The problem you have is that you change the ordering.

If you load the ne2k ISA driver before pcmcia (as occurs now because of
it being done from user space) the resources get claimed first. If you do
it the other way around and test then merely reading an I/O register
mapped to an NE2K or most NE2K clones crashes the machine.

Are there any modern systems where the PCI based autoconfig is
insufficient, or is this just ancient stuff  ?

Alan



More information about the linux-pcmcia mailing list