Here are the settings for PCI we currently have in uboot: #define CONFIG_PCI 1 /* Enable PCI/PCIE */ #define CONFIG_PCIE1 1 /* PCIE controler 1 (slot 1) */ #define CONFIG_PCIE2 1 /* PCIE controler 2 (slot 2) */ #define CONFIG_FSL_PCI_INIT 1 /* Use common FSL init code */ #define CONFIG_FSL_PCIE_RESET 1 /* need PCIe reset errata */ #define CONFIG_FSL_LAW 1 /* Use common FSL init code */ #define CONFIG_SYS_PCIE1_ADDR (CONFIG_SYS_CCSRBAR+0x9000) #define CONFIG_SYS_PCIE2_ADDR (CONFIG_SYS_CCSRBAR+0xa000) /* * General PCI */ #define CONFIG_SYS_PCIE1_MEM_VIRT 0xA0000000 #define CONFIG_SYS_PCIE1_MEM_BUS 0xA0000000 #define CONFIG_SYS_PCIE1_MEM_PHYS 0xA0000000 #define CONFIG_SYS_PCIE1_MEM_SIZE 0x10000000 #define CONFIG_SYS_PCIE1_IO_VIRT 0xFFC10000 #define CONFIG_SYS_PCIE1_IO_BUS 0x00000000 #define CONFIG_SYS_PCIE1_IO_PHYS 0xFFC10000 #define CONFIG_SYS_PCIE1_IO_SIZE 0x00010000 /* 64k */ #define CONFIG_SYS_PCIE2_MEM_VIRT 0xB0000000 #define CONFIG_SYS_PCIE2_MEM_BUS 0xB0000000 #define CONFIG_SYS_PCIE2_MEM_PHYS 0xB0000000 #define CONFIG_SYS_PCIE2_MEM_SIZE 0x10000000 #define CONFIG_SYS_PCIE2_IO_VIRT 0xFFC00000 #define CONFIG_SYS_PCIE2_IO_BUS 0x00000000 #define CONFIG_SYS_PCIE2_IO_PHYS 0xFFC00000 #define CONFIG_SYS_PCIE2_IO_SIZE 0x00010000 /* 64k */ I'd really appreciate I you could take a look at it Thanx alot in advance Davide 2012/9/24 Davide Viti > Hi, > does the output I've included show anything wrong or should I post > something else to help identifying the cause of the problem? > > thank you in advance, > Davide > > 2012/9/21 Davide Viti > >> I mean there are two controllers and both of them have a device >> "subtended" (both 0x1b65:0xabba). >> u-boot can see both devices, linux detects only the device attached to >> the first controller. >> >> Here's the output of lspci and /proc/iomem : >> >> root@(none):/# lspci -v >> >> 0000:00:00.0 Class 0604: Device 1957:0100 (rev 11) >> >> Flags: bus master, fast devsel, latency 0 >> >> Memory at (32-bit, non-prefetchable) >> >> Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 >> >> I/O behind bridge: 00000000-00000fff >> >> Memory behind bridge: a0000000-afffffff >> >> Capabilities: [44] Power Management version 2 >> >> Capabilities: [4c] Express Root Port (Slot-), MSI 00 >> >> Capabilities: [100] Advanced Error Reporting >> >> >> >> 0000:01:00.0 Class 0280: Device 1b65:abba (rev 01) >> >> Flags: bus master, fast devsel, latency 0, IRQ 16 >> >> Memory at a0000000 (32-bit, non-prefetchable) [size=1K] >> >> Memory at a0010000 (32-bit, non-prefetchable) [size=64K] >> >> Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+ >> >> Capabilities: [78] Power Management version 3 >> >> Capabilities: [80] Express Endpoint, MSI 00 >> >> Capabilities: [100] Virtual Channel >> >> Capabilities: [800] Advanced Error Reporting >> >> >> >> 0001:02:00.0 Class 0604: Device 1957:0100 (rev 11) >> >> Flags: bus master, fast devsel, latency 0 >> >> Memory at (32-bit, non-prefetchable) >> >> Bus: primary=00, secondary=03, subordinate=03, sec-latency=0 >> >> I/O behind bridge: 00000000-00000fff >> >> Memory behind bridge: b0000000-bfffffff >> >> Capabilities: [44] Power Management version 2 >> >> Capabilities: [4c] Express Root Port (Slot-), MSI 00 >> >> Capabilities: [100] Advanced Error Reporting >> >> >> root@(none):/# cat /proc/iomem >> >> a0000000-afffffff : /pcie@ffe09000 >> >> a0000000-afffffff : PCI Bus 0000:01 >> >> a0000000-a00003ff : 0000:01:00.0 >> >> a0010000-a001ffff : 0000:01:00.0 >> >> b0000000-bfffffff : /pcie@ffe0a000 >> >> b0000000-bfffffff : PCI Bus 0001:03 >> >> ef000000-efffffff : ef000000.nor >> >> ffe04500-ffe04507 : serial >> >> ffe04600-ffe04607 : serial >> >> >> thanx for your help, >> >> Davide >> >> >> I mean that the kernel detects the first controller and the device >> attached to it, plus the second controller: the device on the second >> controller is not detected (same device as the one detected on the first >> controller) >> >> 2012/9/21 Kumar Gala >> >>> >>> On Sep 21, 2012, at 6:33 AM, Davide Viti wrote: >>> >>> > Hi, >>> > I'm working on a custom board based on P1020 with two (identical) PCI >>> devices attached; >>> > The work is derived from another board with a single instance of that >>> device. >>> > The system is based on u-boot-2009.11 and Linux 2.6.34.6 >>> > >>> > The "pci" command on u-boot, shows me both the PCI controllers and >>> > the attached devices: >>> > >>> > Scanning PCI devices on bus 0 >>> > BusDevFun VendorId DeviceId Device Class Sub-Class >>> > _____________________________________________________________ >>> > 00.00.00 0x1957 0x0100 Processor 0x20 >>> > >>> > Scanning PCI devices on bus 1 >>> > BusDevFun VendorId DeviceId Device Class Sub-Class >>> > _____________________________________________________________ >>> > 01.00.00 0x1b65 0xabba Network controller 0x80 >>> > >>> > Scanning PCI devices on bus 2 >>> > BusDevFun VendorId DeviceId Device Class Sub-Class >>> > _____________________________________________________________ >>> > 02.00.00 0x1957 0x0100 Processor 0x20 >>> > >>> > Scanning PCI devices on bus 3 >>> > BusDevFun VendorId DeviceId Device Class Sub-Class >>> > _____________________________________________________________ >>> > 03.00.00 0x1b65 0xabba Network controller 0x80 >>> > >>> > The kernel detects only the first instance of the device. >>> >>> What do you mean by first instance of the device ? >>> >>> > Didn't get very far while looking at dts file and kernel logs, so I'm >>> > asking for some help on narrowing down the problem. >>> > >>> > I'm wondering if I can assume that the problem is restricted to >>> > kernel/dts and avoid concentrating on uboot. >>> > I can provide any log (didn't want to post tons of details on the first >>> > message) >>> >>> Probably a dts issue. >>> >>> What does lspci in linux say? >>> >>> - k >>> >>> >> >