PCI configuration with multiple PCI controllers

Kumar Gala galak at kernel.crashing.org
Thu Jan 31 01:24:05 EST 2008


On Jan 29, 2008, at 8:20 AM, Laurent Lagrange wrote:

> Hello,
>
> I have a MPC8641 based board. I try to use the two PCIe controllers.  
> My
> firmware configures (physically) the PCI buses as follow:
>
> ------------------+
> MPC8641 PCIe 1	|	bus 1		+--------------+
> 			| --------------> | PCI device 0 |
> 	BUS 0		|			+--------------+
> - - - - - - - - - +
> MPC8641 PCIe 2	|	bus 3		+--------------+
> 			| --------------> | PCI device 1 |
> 	BUS 2		|			+--------------+
> ------------------+
>
> I launch the Linux image (2.6.23.9). During the Kernel PCI  
> configuration,
> buses behind the 2nd MPC8641 PCIe are skipped because its primary  
> bus don't
> start at bus number 0. The kernel reconfigure the primary bus number  
> of the
> MPC8641 PCIe 2 controller from 2 to 0.
>
> I can patch the kernel to work with my firmware but I don't know if  
> my PCI
> configuration is the good one.
>
> What is the common way to configure the PCI for Linux when a new  
> controller
> is found: start the bus number to 0 or to the last bus number + 1?

Linux now has the concept of PCI domains so each controller is a new  
domain and thus the first bus should be 0 in each domain.  (at least  
that's the "normal" way we handle things).

- k



More information about the Linuxppc-dev mailing list