[U-Boot] [PATCH v2 2/8] mxs: Fix PULLUP/NOPULL definitions

Marek Vasut marex at denx.de
Thu May 2 21:44:57 CEST 2013


Dear Fabio Estevam,

> Hi Michael,
> 
> On Thu, May 2, 2013 at 3:44 PM, Michael Heimpold <mhei at heimpold.de> wrote:
> > Sorry, but I think this is not correct. Please have a look
> > at the reference manual for i.MX28 page 786:
> > It seems that some pins have an internal pullup, but other
> > pins "only" have the internal keeper you mentioned.
> > 
> > Quote from :
> > bank 0 pin 24: "Set this bit to one to _enable_ the internal pullup..."
> > bank 0 pin 25: "Set this bit to one to _disable_ the internal keeper..."
> > 
> > So I think the current implementation is correct.
> 
> Ok, I see.
> 
> mx23 does not have the "Set this bit to one to _enable_ the internal
> pullup" option.
> 
> > However, if you are trying to enable a pullup for a pin which does not
> > have this function (e.g. because the hardware guys trimmed the BOM
> > and did not spend an external pullup) you are actually disabling the
> > keeper which makes the situation even worse in some situations.
> > 
> > I'm still wondering what an ideal solution could be...
> 
> So I plan to keep mx28 bits untouched and do the reverse definition
> only for mx23:
> 
> #if defined CONFIG_MX28
> #define PAD_PULLUP		1
> #define PAD_NOPULL		0
> #else
> #define PAD_PULLUP		0
> #define PAD_NOPULL		1
> #endif

Wait, this code is pulled from Linux kernel. How does Linux solve that? Is it 
also broken in Linux?

Best regards,
Marek Vasut


More information about the U-Boot mailing list