[U-Boot] [PATCH v2 5/7] tegra: Implement gpio_early_init() on Tamonten

Thierry Reding thierry.reding at avionic-design.de
Fri May 25 19:40:03 CEST 2012


* Stephen Warren wrote:
> On 05/25/2012 07:46 AM, Thierry Reding wrote:
> > The PI4 GPIO is used on Tamonten to reset carrier board peripherals.
> > Power sequencing hardware on the carrier pulls the reset low before
> > powering up the Tegra, and the CPU is supposed to signal readiness,
> > and therefore bring peripherals out of reset by pulling PI4 high.
> 
> > +void gpio_early_init(void)
> > +{
> > +	gpio_request(GPIO_PI4, NULL);
> > +	gpio_direction_output(GPIO_PI4, 1);
> > +	gpio_free(GPIO_PI4);
> > +}
> 
> Do you really mean to free the GPIO here?
> 
> While gpio_free() does not do this at present, it seems perfectly
> reasonable for someone to modify gpio_free() so that instead of leaving
> the HW in some random state when free, it actively reprograms the pin to
> be an input instead, since that's the most conflict-free setting when
> the pin is actively unused.

I believe that even a pulse would be enough for the undelying mechanisms to
take effect, but I'll have to check with our hardware engineers to be sure.
You're probably right, though, that keeping it requested until control is
handed over to the kernel may be safer. I'll update the patch.

Thierry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20120525/3c1d8d73/attachment.pgp>


More information about the U-Boot mailing list