
Dear Fabio Estevam,
Hi Michael,
On Thu, May 2, 2013 at 3:44 PM, Michael Heimpold mhei@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