summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorLucas Stach <dev@lynxeye.de>2012-05-16 08:21:02 +0000
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2012-07-07 14:07:18 +0200
commita2cfe63eeb6a09c52a748849590a898f1032aeea (patch)
treed0c3ddde6842d4434932a353f3e43e814734fc29 /arch
parentffec1eb9c7a88db4be06dbf596fc8578e4586b62 (diff)
downloadu-boot-imx-a2cfe63eeb6a09c52a748849590a898f1032aeea.zip
u-boot-imx-a2cfe63eeb6a09c52a748849590a898f1032aeea.tar.gz
u-boot-imx-a2cfe63eeb6a09c52a748849590a898f1032aeea.tar.bz2
tegra: add SDIO1 funcmux entry for UARTA
This is based on top of: tegra: add alternate UART1 funcmux entry tegra: add UART1 on GPU funcmux entry v2: remove enum change Signed-off-by: Lucas Stach <dev@lynxeye.de> Acked-by: Stephen Warren <swarren@wwwdotorg.org> CC: Stephen Warren <swarren@wwwdotorg.org> CC: Tom Warren <twarren@nvidia.com> CC: Marek Vasut <marex@denx.de> Signed-off-by: Tom Warren <twarren@nvidia.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/cpu/armv7/tegra2/board.c2
-rw-r--r--arch/arm/cpu/armv7/tegra2/funcmux.c5
-rw-r--r--arch/arm/include/asm/arch-tegra2/funcmux.h1
3 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv7/tegra2/board.c b/arch/arm/cpu/armv7/tegra2/board.c
index 6106ef9..923678d 100644
--- a/arch/arm/cpu/armv7/tegra2/board.c
+++ b/arch/arm/cpu/armv7/tegra2/board.c
@@ -106,6 +106,8 @@ static int uart_configs[] = {
FUNCMUX_UART1_UAA_UAB,
#elif defined(CONFIG_TEGRA2_UARTA_GPU)
FUNCMUX_UART1_GPU,
+#elif defined(CONFIG_TEGRA2_UARTA_SDIO1)
+ FUNCMUX_UART1_SDIO1,
#else
FUNCMUX_UART1_IRRX_IRTX,
#endif
diff --git a/arch/arm/cpu/armv7/tegra2/funcmux.c b/arch/arm/cpu/armv7/tegra2/funcmux.c
index c279088..1559869 100644
--- a/arch/arm/cpu/armv7/tegra2/funcmux.c
+++ b/arch/arm/cpu/armv7/tegra2/funcmux.c
@@ -50,6 +50,11 @@ int funcmux_select(enum periph_id id, int config)
pinmux_tristate_disable(PINGRP_GPU);
bad_config = 0;
break;
+ case FUNCMUX_UART1_SDIO1:
+ pinmux_set_func(PINGRP_SDIO1, PMUX_FUNC_UARTA);
+ pinmux_tristate_disable(PINGRP_SDIO1);
+ bad_config = 0;
+ break;
}
if (!bad_config) {
/*
diff --git a/arch/arm/include/asm/arch-tegra2/funcmux.h b/arch/arm/include/asm/arch-tegra2/funcmux.h
index dba2cf5..19184d1 100644
--- a/arch/arm/include/asm/arch-tegra2/funcmux.h
+++ b/arch/arm/include/asm/arch-tegra2/funcmux.h
@@ -32,6 +32,7 @@ enum {
FUNCMUX_UART1_IRRX_IRTX = 0,
FUNCMUX_UART1_UAA_UAB,
FUNCMUX_UART1_GPU,
+ FUNCMUX_UART1_SDIO1,
FUNCMUX_UART2_IRDA = 0,
FUNCMUX_UART4_GMC = 0,