From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anton Vorontsov Date: Thu, 19 Feb 2009 18:20:50 +0300 Subject: [U-Boot] [PATCH 6/7] mpc83xx: PCI: Fix hard-coded first_busno value In-Reply-To: <20090219151943.GA3310@oksana.dev.rtsoft.ru> References: <20090219151943.GA3310@oksana.dev.rtsoft.ru> Message-ID: <20090219152050.GF19823@oksana.dev.rtsoft.ru> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de We should use pci_last_busno() in pci_init_bus(), otherwise we'll erroneously re-use PCI0's first_busno for PCI1 hoses. NOTE: The patch is untested. All MPC83xx FSL boards I have have PCI1 in miniPCI form, for which I don't have any cards handy. But looking in cpu/mpc85xx/pci.c: ... #ifdef CONFIG_MPC85XX_PCI2 hose = &pci_hose[1]; hose->first_busno = pci_hose[0].last_busno + 1; And considering that we do the same for MPC83xx PCI-E support, I think this patch is correct. Signed-off-by: Anton Vorontsov --- cpu/mpc83xx/pci.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/cpu/mpc83xx/pci.c b/cpu/mpc83xx/pci.c index 8f5017c..a42b230 100644 --- a/cpu/mpc83xx/pci.c +++ b/cpu/mpc83xx/pci.c @@ -91,7 +91,7 @@ static void pci_init_bus(int bus, struct pci_region *reg) hose->regions[i].size = gd->ram_size; hose->regions[i].flags = PCI_REGION_MEM | PCI_REGION_SYS_MEMORY; - hose->first_busno = 0; + hose->first_busno = pci_last_busno() + 1; hose->last_busno = 0xff; pci_setup_indirect(hose, CONFIG_SYS_IMMR + 0x8300 + bus * 0x80, -- 1.5.6.5