PCI mapping problems? (440EP/Bamboo)

Andriy Korud a.korud at vector.com.pl
Fri May 6 23:18:33 EST 2005


Hi, I'm trying to make PCI on Bamboo usable at 33MHz and have the following problem:
Kernel 2.6.11 with Bamboo patches (either from the list or my own) boots, PCI is scanned fine:

PCI: Probing PCI hardware
Scanning bus 00
Found 00:20 [1260/3890] 000280 00
Fixups for bus 00
Bus scan for 00 returning with max=00
PCI fixup irq: (0000:00:04.0) got 25
PCI: bridge rsrc 0..ffff (100), parent c01b0f80
PCI: bridge rsrc a0000000..afffffff (200), parent c01b0f64
PCI:0000:00:04.0: Resource 0: afffe000-afffffff (f=200)

lspci is also working fine, but when trying to load any driver, kernel crashes on first actual device access, i.e. on writew() operation.
When tried to look which address it's trying to access - 0xd1058000 in my case - seems confusing for me - should not this address be withing PCI address range - 0xa... and withing this device address range - 0xafffe000-afffffff?
Tracking deeper I've found that this address is taken from calling pci_resource_start(pdev, 0) whithing probe function in driver. 

This problem is generic - at least 3 different pci drivers crash when trying to writew() to bad address.

Can anybody give some advice in which direction should I continue my debugging?

Thanks in advance,

--

Andriy Korud



More information about the Linuxppc-embedded mailing list