public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Stefano Babic <sbabic@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] mx51evk: Make use of the i.MX GPIO API
Date: Fri, 20 May 2011 10:47:14 +0200	[thread overview]
Message-ID: <4DD62A92.6010001@denx.de> (raw)
In-Reply-To: <1305832522-20712-1-git-send-email-fabio.estevam@freescale.com>

On 05/19/2011 09:15 PM, Fabio Estevam wrote:
> Make use of the i.MX GPIO API.

Hi Fabio,

thanks for cleanup this code.

> 
> While at it created a separate function for the FEC PHY reset,
> so that it can be decoupled from the power_init function.
> 
> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
> ---
>  board/freescale/mx51evk/mx51evk.c |   33 +++++++++++++++++----------------
>  1 files changed, 17 insertions(+), 16 deletions(-)
> 
> diff --git a/board/freescale/mx51evk/mx51evk.c b/board/freescale/mx51evk/mx51evk.c
> index ef7c6e4..2dabef9 100644
> --- a/board/freescale/mx51evk/mx51evk.c
> +++ b/board/freescale/mx51evk/mx51evk.c
> @@ -33,6 +33,11 @@
>  #include <fsl_esdhc.h>
>  #include <fsl_pmic.h>
>  #include <mc13892.h>
> +#include <mxc_gpio.h>
> +
> +#define MX51EVK_PHY_RESET	(1 * 32 + 14)	/* GPIO2_14 */
> +#define MX51EVK_SD1_CD		(0 * 32 + 0)	/* GPIO1_0 */
> +#define MX51EVK_SD2_CD		(0 * 32 + 6)	/* GPIO1_6 */
>  
>  DECLARE_GLOBAL_DATA_PTR;
>  
> @@ -261,27 +266,22 @@ static void power_init(void)
>  	pmic_reg_write(REG_MODE_1, val);
>  	udelay(200);
>  
> -	reg = readl(GPIO2_BASE_ADDR + 0x0);
> -	reg &= ~0x4000;  /* Lower reset line */
> -	writel(reg, GPIO2_BASE_ADDR + 0x0);
> -
> -	reg = readl(GPIO2_BASE_ADDR + 0x4);
> -	reg |= 0x4000;	/* configure GPIO lines as output */
> -	writel(reg, GPIO2_BASE_ADDR + 0x4);
> -
> -	/* Reset the ethernet controller over GPIO */
> -	writel(0x1, IOMUXC_BASE_ADDR + 0x0AC);
> -
>  	/* Enable VGEN3, VCAM, VAUDIO, VVIDEO, VSD regulators */
>  	val = VGEN3EN | VGEN3CONFIG | VCAMEN | VCAMCONFIG |
>  		VVIDEOEN | VAUDIOEN  | VSDEN;
>  	pmic_reg_write(REG_MODE_1, val);
> +}
> +
> +static void reset_phy_fec(void)
> +{
> +	mxc_request_iomux(MX51_PIN_EIM_A20, IOMUX_CONFIG_ALT1);
> +	mxc_gpio_direction(MX51EVK_PHY_RESET, MXC_GPIO_DIRECTION_OUT);
>  
> +	mxc_gpio_set(MX51EVK_PHY_RESET, 0);	/* Lower reset line */
> +
>  	udelay(500);
>  
> -	reg = readl(GPIO2_BASE_ADDR + 0x0);
> -	reg |= 0x4000;
> -	writel(reg, GPIO2_BASE_ADDR + 0x0);
> +	mxc_gpio_set(MX51EVK_PHY_RESET, 1);	/* Set reset line to high */
>  }

Something is not clear to me. To get the same functionality, I am
expecting that the phy is reset, then the PMIC is programmed, and at the
end the phy is freed from reset.

You add reset_phy_fec(), that sets the phy in reset. In actual code, at
the end of power_init the phy is out of reset. Now who remove the reset
? I do not see in your code.

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-0 Fax: +49-8142-66989-80  Email: office at denx.de
=====================================================================

      reply	other threads:[~2011-05-20  8:47 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-19 19:15 [U-Boot] [PATCH] mx51evk: Make use of the i.MX GPIO API Fabio Estevam
2011-05-20  8:47 ` Stefano Babic [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4DD62A92.6010001@denx.de \
    --to=sbabic@denx.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox