[PATCH] Fix the PCI-Ex link training bug on MPC8641HPCN board.

Kumar Gala galak at kernel.crashing.org
Wed Jul 11 00:36:14 EST 2007


On Jul 10, 2007, at 1:34 AM, Zhang Wei wrote:

> If the PCI-Ex hose link training is failed, the kernel will halt at  
> the
> PCI scan process on MPC8641HPCN board.
>
> This patch will remove and free the hose from PCI host list if the
> PCI hose link training is failed.
>
> Signed-off-by: Zhang Wei <wei.zhang at freescale.com>

Thanks.  Going to roll this into the work Roy's been doing to make  
PCI code work across 85xx/86xx.

- k

> ---
>  arch/powerpc/platforms/86xx/pci.c |    4 +++-
>  1 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/arch/powerpc/platforms/86xx/pci.c b/arch/powerpc/ 
> platforms/86xx/pci.c
> index 73cd5b0..0b7835c 100644
> --- a/arch/powerpc/platforms/86xx/pci.c
> +++ b/arch/powerpc/platforms/86xx/pci.c
> @@ -210,8 +210,10 @@ int __init mpc86xx_add_bridge(struct  
> device_node *dev)
>
>  	/* Probe the hose link training status */
>  	early_read_config_word(hose, 0, 0, PCIE_LTSSM, &val);
> -	if (val < PCIE_LTSSM_L0)
> +	if (val < PCIE_LTSSM_L0) {
> +		pcibios_free_controller(hose);
>  		return -ENXIO;
> +	}
>
>  	/* Setup the PCIE host controller. */
>  	mpc86xx_setup_pcie(hose, rsrc.start, rsrc.end - rsrc.start + 1);
> -- 
> 1.5.1




More information about the Linuxppc-dev mailing list