[U-Boot] [PATCH] mpc83xx: pcie.c enumeration for mpc83xx/pcie.c

Baidu Boy liucai.lfn at gmail.com
Sat Nov 27 12:15:38 CET 2010


Dear Wolfgang:

2010/11/27 Wolfgang Denk <wd at denx.de>:
> Would you please explain what this paych is trying to do? Are you
> fixing a bug (if so, how does it manifest and hoiw can we test that
> your patch really fixes the bug), or are you adding a new feature?
> (which one?)
>
> On which board(s) has this patch been tested?
>
> Best regards,
>

This patch is a bug fix for mpc83xx board.
I use the uboot-2010.09 to do the pcie enumeration for MPC8378E board,
and It failed. From the code we can see the reason is that:
in function
mpc83xx_pcie_register_hose(...,struct pci_region *reg...)
we pass the parameter reg which is a pointer to the pcie_regions_0[]
to this function.
but we changed this pointer in this function mpc83xx_pcie_register_hose().
---
	for (i = 0; i < 2; i++, reg++) {
...
}
---
And at the end of this function we call
mpc83xx_pcie_register_hose(bus, reg, reg16 >= PCI_LTSSM_L0) which use
the changed variable "reg".
I think this is the root cause.

Thanks!
-- 
------
Best Regards
Leo Liu


More information about the U-Boot mailing list