[U-Boot] [PATCH 2/3] tx25: Use generic gpio_* calls

Fabio Estevam festevam at gmail.com
Sun Jun 10 16:38:32 CEST 2012


On Sun, Jun 10, 2012 at 10:03 AM, Vikram Narayanan <vikram186 at gmail.com> wrote:

>        /* drop PHY power and assert reset (low) */
> -       val = readl(&gpio4->gpio_dr) & ~((1 << 7) | (1 << 9));
> -       writel(val, &gpio4->gpio_dr);
> -       val = readl(&gpio4->gpio_dir) | (1 << 7) | (1 << 9);
> -       writel(val, &gpio4->gpio_dir);
> +       gpio_direction_output(GPIO_FEC_RESET_B, 0);
> +       gpio_direction_output(GPIO_FEC_ENABLE_B, 0);
> +
> +       gpio_direction_output(GPIO_FEC_RESET_B, 1);
> +       gpio_direction_output(GPIO_FEC_ENABLE_B, 1);

gpio_direction_output should be set only once for each GPIO.

After you set the direction (input or output) you should use
'gpio_set_value' for setting the GPIO to 0 or 1.

Also, please remove the:

> +       gpio_direction_output(GPIO_FEC_RESET_B, 1);
> +       gpio_direction_output(GPIO_FEC_ENABLE_B, 1);

lines, as the setting to 1 should be after the delay (via gpio_set_value).


More information about the U-Boot mailing list