summaryrefslogtreecommitdiff
path: root/arch/arm/plat-mxc/include/mach/iomux-v3.h
AgeCommit message (Collapse)Author
2012-10-15ARM: imx: move iomux drivers and headers into mach-imxShawn Guo
The board files in mach-imx are the only users of iomux drivers and headers. Move them into mach-imx from plat-mxc. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de>
2011-10-31Merge branch 'next/fixes' into next/cleanupArnd Bergmann
Conflicts: arch/arm/mach-mxs/include/mach/gpio.h arch/arm/plat-mxc/include/mach/gpio.h drivers/video/omap/lcd_apollon.c drivers/video/omap/lcd_ldp.c drivers/video/omap/lcd_overo.c
2011-10-25plat-mxc: iomux-v3.h: implicitly enable pull-up/down when that's desiredPaul Fertser
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-08-17ARM: i.MX51: Remove _MX51_PAD_xxx referencesTroy Kisky
Use new macro NEW_PAD_CTRL to remove _MX51_PAD_xxx references. A later patch will remove the _MX51_PAD_xxx symbols. Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-07-07MXC: iomux-v3: correct NO_PAD_CTRL definitionTroy Kisky
iomux-v3.c uses NO_PAD_CTRL as a 32 bit value so it should not be shifted left by MUX_PAD_CTRL_SHIFT(41) Previously, anything requesting NO_PAD_CTRL would get their pad control register set to 0. Since it is a pad control mask, place it with the other mask values. Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com> Acked-by: Lothar Waßmann <LW@KARO-electronics.de> Tested-by: Lothar Waßmann <LW@KARO-electronics.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-07arm: mxc: move IOMUX_CONFIG_SION definition to iomux-v3.hRichard Zhao
Signed-off-by: Richard Zhao <richard.zhao@freescale.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-15ARM i.MX51: Full iomux supportSascha Hauer
This iomux file has been constructed from the Freescale pinmux tool. It contains all pins from the tool, but the datasheet lists some configurations not present in the tool, these are not yet added. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-15MXC IOMUX-V3 replace struct pad_desc with bitmapped cookie (step 2)Lothar Waßmann
This patch actually replaces the 'struct pad_desc' with a u64 cookie to facilitate adding platform specific pad_ctrl settings to an existing pad definition. So, instead of: iomux_v3_cfg_t power_key = MX51_PAD_EIM_A27__GPIO_2_21; power_key.pad_ctrl = MX51_GPIO_PAD_CTRL_2; mxc_iomux_v3_setup_pad(&power_key); one can write: mxc_iomux_v3_setup_pad((MX51_PAD_EIM_A27__GPIO_2_21 & ~MUX_PAD_CTRL_MASK) | MX51_GPIO_PAD_CTRL_2); Patch applies to branch 'imx-for-2.6.38' of git://git.pengutronix.de/git/imx/linux-2.6 Signed-Off-By: Lothar Waßmann <LW@KARO-electronics.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-11-24ARM: i.MX IOMUX-V3 replace struct pad_desc with bitmapped cookieLothar Waßmann
The following patch is a first step to convert the 'struct pad_desc' to a bitmapped cookie to facilitate adding platform specific pullup or drive strength definitions to existing pad definitions without need to rewrite the complete pad def. The patch wraps 'struct pad_desc' in an opaque data type and introduces macros to access the individual members. This patch does not constitute any functional change! Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-07-26mxc/iomux: add GPIO bank offset for iomux v3 platformsJason Wang
These GPIO bank offsets are useful when define a gpio number. E.G. when GPIO PORTC pin 6 is used for irq request pin of external expanding device, we can define it like: #define EXP_PARENT_IRQ_PIN (GPIO_PORTC + 6) Signed-off-by: Jason Wang <jason77.wang@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-02-09mxc: Core support for Freescale i.MX5 seriesAmit Kucheria
Add basic clock support, cpu identification, I/O mapping, interrupt controller, serial port and ethernet. Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
2009-11-24mxc: iomux v3: remove resource handlingSascha Hauer
The current model does not allow to put a pad into different modes once a pins is allocated. Remove the resource handling. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-08-14iomux-v3: Allow for a runtime base addressSascha Hauer
also, check for a valid pad_ctrl_ofs before changing the pad control register. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-08-07MXC iomux-v3: Fix defines for PAD_CTL registersSascha Hauer
The old defines leaked in from an old version of the patch. Change the defines to match the register layout of the iomuxer. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-05-07MXC: Add iomux support for MX35 SoCsSascha Hauer
This iomux is called iomux-v3 in the tree because it is the third known incarnation of MXC iomuxers. It is not only found on the MX35 but also on the MX51 and probably others. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>