[U-Boot] [PATCH 2/3] tx25: Use generic gpio_* calls
Vikram Narayanan
vikram186 at gmail.com
Mon Jun 11 16:58:30 CEST 2012
Hi Fabio,
On 6/10/2012 8:08 PM, Fabio Estevam wrote:
> 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.
That was my understanding too. But some board file used it in the above
way. Hope I got a wrong example. I'll fix this.
> 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).
Any idea about the delay value?
Thanks,
Vikram
More information about the U-Boot
mailing list