From 49dc67c3156e74cc86402a7c8aad2af73383f158 Mon Sep 17 00:00:00 2001 From: Jason Chen Date: Wed, 21 Dec 2011 15:17:58 +0800 Subject: imx6q: add iomux v3 support Signed-off-by: Jason Chen Signed-off-by: Eric Miao --- arch/arm/mach-imx/mach-imx6q.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'arch/arm/mach-imx/mach-imx6q.c') diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c index d69f99f63dc..70be6a93085 100644 --- a/arch/arm/mach-imx/mach-imx6q.c +++ b/arch/arm/mach-imx/mach-imx6q.c @@ -10,6 +10,7 @@ * http://www.gnu.org/copyleft/gpl.html */ +#include #include #include #include @@ -20,6 +21,7 @@ #include #include #include +#include #include #include #include @@ -54,11 +56,27 @@ static void __init imx6q_init_machine(void) imx6q_pm_init(); } +static struct map_desc imx_mx6q_iomux_desc[] = { + { + .virtual = MX6Q_IO_P2V(MX6Q_IOMUXC_BASE_ADDR), + .pfn = __phys_to_pfn(MX6Q_IOMUXC_BASE_ADDR), + .length = MX6Q_IOMUXC_SIZE, + .type = MT_DEVICE, + }, +}; + +static void __init imx6q_iomux_map_io(void) +{ + iotable_init(imx_mx6q_iomux_desc, ARRAY_SIZE(imx_mx6q_iomux_desc)); + mxc_iomux_v3_init(MX6Q_IO_ADDRESS(MX6Q_IOMUXC_BASE_ADDR)); +} + static void __init imx6q_map_io(void) { imx_lluart_map_io(); imx_scu_map_io(); imx6q_clock_map_io(); + imx6q_iomux_map_io(); } static int __init imx6q_gpio_add_irq_domain(struct device_node *np, -- cgit v1.2.3