[U-Boot] [PATCH 2/2] imx27lite: update with gpio api change

Stefano Babic sbabic at denx.de
Mon Aug 6 11:45:57 CEST 2012


On 05/08/2012 12:00, Philippe Reynes wrote:
> Signed-off-by: Philippe Reynes <tremyfr at yahoo.fr>
> ---
>  board/logicpd/imx27lite/imx27lite.c |    7 ++++---
>  1 files changed, 4 insertions(+), 3 deletions(-)
> 

Hi Philippe,


>  {
> -	struct gpio_regs *regs = (struct gpio_regs *)IMX_GPIO_BASE;
> +	struct gpio_port_regs *regs = (struct gpio_port_regs *)IMX_GPIO_BASE;
>  #if defined(CONFIG_SYS_NAND_LARGEPAGE)
>  	struct system_control_regs *sc_regs =
>  		(struct system_control_regs *)IMX_SYSTEM_CTL_BASE;
> @@ -43,8 +44,8 @@ int board_init(void)
>  #ifdef CONFIG_FEC_MXC
>  	mx27_fec_init_pins();
>  	imx_gpio_mode((GPIO_PORTC | GPIO_OUT | GPIO_PUEN | GPIO_GPIO | 31));
> -	writel(readl(&regs->port[PORTC].dr) | (1 << 31),
> -				&regs->port[PORTC].dr);
> +	writel(readl(&regs->port[PORTC].gpio_dr) | (1 << 31),
> +				&regs->port[PORTC].gpio_dr);

This is not what I am expecting from the patch when it will move to
generic GPIO API.

The GPIO API uses really generic as in kernel functions, independently
from the SOC where it is running. This hides the physical registers of
the GPIOs.

Instead of that, gpio_set_value(), gpio_get_value(),
gpio_direction_input() and gpio_direction_output() should be used. You
can take a look at other iMX (MX3, MX28, MX5, MX6), that are already
using the generic API.

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