summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-cardhu-pinmux.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-tegra/board-cardhu-pinmux.c')
-rw-r--r--arch/arm/mach-tegra/board-cardhu-pinmux.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/arm/mach-tegra/board-cardhu-pinmux.c b/arch/arm/mach-tegra/board-cardhu-pinmux.c
index a07bd0136bd4..1b736a40dccf 100644
--- a/arch/arm/mach-tegra/board-cardhu-pinmux.c
+++ b/arch/arm/mach-tegra/board-cardhu-pinmux.c
@@ -555,12 +555,19 @@ static struct gpio_init_pin_info init_gpio_mode_e1291_a02[] = {
GPIO_INIT_PIN_MODE(TEGRA_GPIO_PI4, false, 0),
};
-/* E1198-A02/E1291 specific fab >= A03 */
+/* E1198-A02/E1291 specific fab = A03 */
static struct gpio_init_pin_info init_gpio_mode_e1291_a03[] = {
GPIO_INIT_PIN_MODE(TEGRA_GPIO_PDD6, false, 0),
GPIO_INIT_PIN_MODE(TEGRA_GPIO_PDD4, false, 0),
};
+/* E1198-A02/E1291 specific fab >= A04 */
+static struct gpio_init_pin_info init_gpio_mode_e1291_a04[] = {
+ GPIO_INIT_PIN_MODE(TEGRA_GPIO_PDD6, false, 0),
+ GPIO_INIT_PIN_MODE(TEGRA_GPIO_PDD4, false, 0),
+ GPIO_INIT_PIN_MODE(TEGRA_GPIO_PR2, false, 0),
+};
+
static void __init cardhu_gpio_init_configure(void)
{
struct board_info board_info;
@@ -584,9 +591,12 @@ static void __init cardhu_gpio_init_configure(void)
if (board_info.fab < BOARD_FAB_A03) {
len = ARRAY_SIZE(init_gpio_mode_e1291_a02);
pins_info = init_gpio_mode_e1291_a02;
- } else {
+ } else if (board_info.fab == BOARD_FAB_A03) {
len = ARRAY_SIZE(init_gpio_mode_e1291_a03);
pins_info = init_gpio_mode_e1291_a03;
+ } else {
+ len = ARRAY_SIZE(init_gpio_mode_e1291_a04);
+ pins_info = init_gpio_mode_e1291_a04;
}
break;
default: