linux/arch/arm/plat-mxc
Paul Fertser 6571534b60 plat-mxc: iomux-v3.h: implicitly enable pull-up/down when that's desired
To configure pads during the initialisation a set of special constants
is used, e.g.
#define MX25_PAD_FEC_MDIO__FEC_MDIO IOMUX_PAD(0x3c4, 0x1cc, 0x10, 0, 0, PAD_CTL_HYS | PAD_CTL_PUS_22K_UP)

The problem is that no pull-up/down is getting activated unless both
PAD_CTL_PUE (pull-up enable) and PAD_CTL_PKE (pull/keeper module
enable) set. This is clearly stated in the i.MX25 datasheet and is
confirmed by the measurements on hardware. This leads to some rather
hard to understand bugs such as misdetecting an absent ethernet PHY (a
real bug i had), unstable data transfer etc. This might affect mx25,
mx35, mx50, mx51 and mx53 SoCs.

It's reasonable to expect that if the pullup value is specified, the
intention was to have it actually active, so we implicitly add the
needed bits.

Cc: stable@kernel.org
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-10-25 11:17:43 +02:00
..
devices dmaengine: imx-sdma: use platform_device_id to identify sdma version 2011-07-27 09:31:45 +08:00
include/mach plat-mxc: iomux-v3.h: implicitly enable pull-up/down when that's desired 2011-10-25 11:17:43 +02:00
3ds_debugboard.c arm: Fold irq_set_chip/irq_set_handler 2011-03-29 14:47:58 +02:00
audmux-v1.c
audmux-v2.c
avic.c ARM i.MX avic: do not depend on MXC_INTERNAL_IRQS 2011-07-07 10:00:00 +02:00
clock.c
cpu.c
cpufreq.c treewide: cleanup continuations and remove logging message whitespace 2011-04-26 10:24:37 +02:00
devices.c ARM: mxc: clean up imx-dma device registration 2011-07-07 10:01:12 +02:00
epit.c clocksource: convert ARM 32-bit down counting clocksources 2011-05-23 18:04:51 +01:00
iomux-v1.c ARM: mxc: iomux-v1: Fix build warning 2011-07-07 09:07:33 +02:00
iomux-v3.c MXC IOMUX-V3 replace struct pad_desc with bitmapped cookie (step 2) 2010-12-15 12:42:49 +01:00
iram_alloc.c
irq-common.c ARM: mxc: convert tzic to use generic irq chip 2011-07-07 10:01:07 +02:00
irq-common.h mx51: support FIQ on TZIC, revised 2010-12-14 09:54:37 +01:00
Kconfig ARM: imx: move mx3 support to mach-imx 2011-05-19 13:11:38 +02:00
Makefile gpio/mxc: Move Freescale MXC gpio driver to drivers/gpio 2011-06-06 10:01:19 -06:00
pwm.c plat-mxc/pwm.c: use resource_size() 2011-07-07 10:00:01 +02:00
ssi-fiq-ksym.c
ssi-fiq.S ARM: mxc: Correct data alignment in headsmp.S for CONFIG_THUMB2_KERNEL 2011-04-12 09:48:10 +02:00
system.c ARM: remove support for mxc91231 2011-05-19 13:11:28 +02:00
time.c Merge branch 'devel-stable' into for-linus 2011-05-23 19:28:04 +01:00
tzic.c ARM: mxc: convert tzic to use generic irq chip 2011-07-07 10:01:07 +02:00
ulpi.c ARM i.MX: introduce imx_otg_ulpi_create to create ULPI transceivers 2011-03-07 19:29:41 +01:00