[U-Boot] [PATCH 2/2] imx27lite: update with gpio api change
Philippe Reynes
tremyfr at yahoo.fr
Mon Aug 6 17:27:21 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,
Hi Stefano,
>> {
>> - 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(®s->port[PORTC].dr) | (1 << 31),
>> - ®s->port[PORTC].dr);
>> + writel(readl(®s->port[PORTC].gpio_dr) | (1 << 31),
>> + ®s->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.
Oh, I understand. As I don't have this board, I've done the smallest change to fix the compilation.
I add the driver mxc_gpio on imx27lite, remove this direct acces to gpio register,
and send the new version of the patch.
regards,
Philippe
More information about the U-Boot
mailing list