Re: Question: 2 PCIE controllers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[+cc Yinghai]

On Sat, Dec 7, 2013 at 7:48 PM, Ruchika <ruchika.k@xxxxxxxxxxxx> wrote:
>
> Hi,
> I am working with an Soc with 3 PCIE controllers.
> I need to have 2 configured.
>
> In uboot I have no problems scanning and discovering what is connected
> to both bridges PCIE1 and PCIE2
>
> For both uboot sets up the Primary, secondary and Subordinate bus
> numbers to 0,1,1 respectively.
>
> When linux boots up and probes the controllers, PCIE1 is probed and the
> bridge scanned properly but PCIE2 is probed at the bridge but not
> attempted a scan.
> I see this message
> "pci 0001:02:00.0: bridge configuration invalid ([bus 01-01]), reconfiguring
> "
>
> I updated uboot to set the secondary and subordinate numbers to 2 (left
> the primary number to 0) and a subsequent kernel boot scanned the bus
> for PCIE2 successfully.
> I found these numbers to be very critical since the device tree blob
> (bus-range) for pci is also based off these.

Linux is not very good at reconfiguring bridges, as you've discovered.
 If the firmware or boot loader leaves things correctly configured,
Linux usually won't mess it up, but we may not be able to configure
things from scratch.  That's why Yinghai suggested having uboot set
things up beforehand.  That's not a very satisfactory answer, but it
is probably the easiest short-term solution.

In the longer term, it'd be nice if somebody would fix Linux to handle
this correctly, and one way to help that along would be to file a bug
at http://bugzilla.kernel.org in the drivers/PCI category, and attach
a complete dmesg log showing the problem.  If you can include a log or
other info about how uboot enumerates everything, that would also
help.

Bjorn
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux