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 :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)root@(none):/# lspci -v
0000:00:00.0 Class 0604: Device 1957:0100 (rev 11)
Flags: bus master, fast devsel, latency 0
Memory at <ignored> (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 <ignored> (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
2012/9/21 Kumar Gala <galak@kernel.crashing.org>What do you mean by first instance of the device ?
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.
Probably a dts issue.
> 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)
What does lspci in linux say?
- k