summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-imx/gpio.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2009-12-03 14:13:41 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2009-12-10 12:15:01 +0100
commit6bd5caf6c662b7e91bc94070e085fa96e6dd994a (patch)
tree47912110fad2158f1f3f0ec4b1ae7ce6b28f45a5 /arch/arm/mach-imx/gpio.c
parent28d2ad70a658c6264a29ee9128faef11a76eff66 (diff)
downloadbarebox-6bd5caf6c662b7e91bc94070e085fa96e6dd994a.tar.gz
barebox-6bd5caf6c662b7e91bc94070e085fa96e6dd994a.tar.xz
i.MX: split out iomux-v1 support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-imx/gpio.c')
-rw-r--r--arch/arm/mach-imx/gpio.c60
1 files changed, 0 insertions, 60 deletions
diff --git a/arch/arm/mach-imx/gpio.c b/arch/arm/mach-imx/gpio.c
index 2e1362c965..eb095ec93c 100644
--- a/arch/arm/mach-imx/gpio.c
+++ b/arch/arm/mach-imx/gpio.c
@@ -26,66 +26,6 @@
#include <common.h>
#include <mach/imx-regs.h>
-void imx_gpio_mode(int gpio_mode)
-{
- unsigned int pin = gpio_mode & GPIO_PIN_MASK;
- unsigned int port = (gpio_mode & GPIO_PORT_MASK) >> GPIO_PORT_SHIFT;
- unsigned int ocr = (gpio_mode & GPIO_OCR_MASK) >> GPIO_OCR_SHIFT;
- unsigned int aout = (gpio_mode & GPIO_AOUT_MASK) >> GPIO_AOUT_SHIFT;
- unsigned int bout = (gpio_mode & GPIO_BOUT_MASK) >> GPIO_BOUT_SHIFT;
- unsigned int tmp;
-
- /* Pullup enable */
- if(gpio_mode & GPIO_PUEN)
- PUEN(port) |= (1 << pin);
- else
- PUEN(port) &= ~(1 << pin);
-
- /* Data direction */
- if(gpio_mode & GPIO_OUT)
- DDIR(port) |= 1 << pin;
- else
- DDIR(port) &= ~(1 << pin);
-
- /* Primary / alternate function */
- if(gpio_mode & GPIO_AF)
- GPR(port) |= (1 << pin);
- else
- GPR(port) &= ~(1 << pin);
-
- /* use as gpio? */
- if(!(gpio_mode & (GPIO_PF | GPIO_AF)))
- GIUS(port) |= (1 << pin);
- else
- GIUS(port) &= ~(1 << pin);
-
- /* Output / input configuration */
- if (pin < 16) {
- tmp = OCR1(port);
- tmp &= ~(3 << (pin * 2));
- tmp |= (ocr << (pin * 2));
- OCR1(port) = tmp;
-
- ICONFA1(port) &= ~(3 << (pin * 2));
- ICONFA1(port) |= aout << (pin * 2);
- ICONFB1(port) &= ~(3 << (pin * 2));
- ICONFB1(port) |= bout << (pin * 2);
- } else {
- pin -= 16;
-
- tmp = OCR2(port);
- tmp &= ~(3 << (pin * 2));
- tmp |= (ocr << (pin * 2));
- OCR2(port) = tmp;
-
- ICONFA2(port) &= ~(3 << (pin * 2));
- ICONFA2(port) |= aout << (pin * 2);
- ICONFB2(port) &= ~(3 << (pin * 2));
- ICONFB2(port) |= bout << (pin * 2);
- }
-
-}
-
void gpio_set_value(unsigned gpio, int value)
{
if(value)