trouble with TI PCI1410 on IBM G40 w/ 2.6.6
proski at gnu.org
Thu May 27 15:16:11 EDT 2004
On Thu, 27 May 2004, joshua reich wrote:
>> Please post the output of "lspci -v" for the bridge again, after booting
>> with --no-mem-option and 1Gb of memory.
>> Also please post the contents of /proc/iomem (you posted /proc/meminfo).
> Booted with 1GB and no-mem-option:
> 0f700000-3f6effff : System RAM
> 3f6f0000-3f6f7fff : ACPI Tables
> 3f6f8000-3f6f9fff : ACPI Non-volatile Storage
> 3f6fa000-3f6fa3ff : 0000:00:1f.1
> 3f6fb000-3f6fbfff : 0000:02:01.0
> 3f6fb000-3f6fbfff : yenta_socket
> 3f700000-3fffffff : reserved
> 40000000-403fffff : PCI CardBus #03
> 40400000-407fffff : PCI CardBus #03
> BIOS-e820: 000000003f6f8000 - 000000003f6fa000 (ACPI NVS)
> BIOS-e820: 000000003f700000 - 0000000040000000 (reserved)
It looks like your BIOS insists on mapping the bridge I/O memory over the
RAM if you have enough of the later. I think it's a BIOS bug, but I'm not
an expert in BIOSes. Or maybe BIOS turns off memory in that area but
Linux re-enables it. It's interesting that the 0x3f6fa000-0x3f700000 area
is missing from the map supplied by the BIOS. The kernel assumes that the
area should be OK for I/O and trusts the address configured by BIOS.
I'm afraid other people are more qualified to comment of this. You may
want to ask in linux-kernel at vger.kernel.org (a.k.a. LKML) or
acpi-devel at lists.sourceforge.net (the ACPI list).
The workaround that would almost certainly work is to reserve the area
manually. Add this to the kernel command line:
More information about the linux-pcmcia