[U-Boot] [PATCH] pci: mx6: Implement reset callback

Stefano Babic sbabic at denx.de
Tue Jan 28 16:06:12 CET 2014


Hi Marek,

On 24/01/2014 16:25, Marek Vasut wrote:
> Add a callback so that a board can implement it's own specific routine to
> toggle the port's nRESET line.
> 
> Signed-off-by: Marek Vasut <marex at denx.de>
> Cc: Stefano Babic <sbabic at denx.de>
> ---
>  drivers/pci/pcie_imx.c | 12 +++++++++---
>  1 file changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/pci/pcie_imx.c b/drivers/pci/pcie_imx.c
> index 0a74867..b554075 100644
> --- a/drivers/pci/pcie_imx.c
> +++ b/drivers/pci/pcie_imx.c
> @@ -450,6 +450,13 @@ static int imx6_pcie_init_phy(void)
>  	return 0;
>  }
>  
> +__weak int imx6_pcie_toggle_reset(void)
> +{
> +	/* This function ought to be overridden ! */
> +	puts("WARNING: Make sure the PCIe nRESET line is connected!\n");
> +	return 0;
> +}
> +

Just to know: I assume that the nRESET is implemented with a GPIO. I am
expecting then in the board files a diffusion of imx6_pcie_toggle_reset,
where the oinly difference is the number of GPIO.

What about to define the GPIO in the board configuration file instead of
defininig the function as __weak ?

Something like

imx6_pcie_toggle_reset(int nReset)
{
..
}

static int imx6_pcie_deassert_core_reset(void)
{

...
	imx6_pcie_toggle_reset(CONFIG_IMX6_PCIE_RESET);

}

Best regards,
Stefano Babic

-- 
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================


More information about the U-Boot mailing list