diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-tegra/board-apalis_t30-pinmux.c | 17 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board-apalis_t30.c | 47 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board-apalis_t30.h | 15 |
3 files changed, 63 insertions, 16 deletions
diff --git a/arch/arm/mach-tegra/board-apalis_t30-pinmux.c b/arch/arm/mach-tegra/board-apalis_t30-pinmux.c index 87d85207b0dd..0e45181fd671 100644 --- a/arch/arm/mach-tegra/board-apalis_t30-pinmux.c +++ b/arch/arm/mach-tegra/board-apalis_t30-pinmux.c @@ -242,7 +242,11 @@ static __initdata struct tegra_pingroup_config apalis_t30_pinmux[] = { DEFAULT_PINMUX(GPIO_PV0, RSVD, NORMAL, NORMAL, INPUT), DEFAULT_PINMUX(GPIO_PV1, RSVD, NORMAL, NORMAL, INPUT), DEFAULT_PINMUX(GPIO_PV2, RSVD1, NORMAL, NORMAL, INPUT), +#ifdef IXORA + DEFAULT_PINMUX(GPIO_PV3, RSVD1, NORMAL, NORMAL, OUTPUT), /* UART2_3_RS232_FOFF_N */ +#else DEFAULT_PINMUX(GPIO_PV3, RSVD1, NORMAL, NORMAL, INPUT), +#endif DEFAULT_PINMUX(HDMI_CEC, CEC, NORMAL, NORMAL, INPUT), DEFAULT_PINMUX(HDMI_INT, RSVD0, NORMAL, NORMAL, INPUT), @@ -364,6 +368,18 @@ static __initdata struct tegra_pingroup_config apalis_t30_pinmux[] = { DEFAULT_PINMUX(SDMMC1_DAT2, SDMMC1, NORMAL, NORMAL, INPUT), DEFAULT_PINMUX(SDMMC1_DAT3, SDMMC1, NORMAL, NORMAL, INPUT), +#ifdef IXORA + DEFAULT_PINMUX(SDMMC3_CLK, PWM2, PULL_DOWN, TRISTATE, OUTPUT), /* NC */ + DEFAULT_PINMUX(SDMMC3_CMD, PWM3, PULL_DOWN, TRISTATE, OUTPUT), /* NC */ + DEFAULT_PINMUX(SDMMC3_DAT0, RSVD1, NORMAL, TRISTATE, INPUT), /* SW3 */ + DEFAULT_PINMUX(SDMMC3_DAT1, RSVD0, NORMAL, NORMAL, OUTPUT), /* LED4_GREEN */ + DEFAULT_PINMUX(SDMMC3_DAT2, PWM1, NORMAL, NORMAL, OUTPUT), /* PCIE1_WDISABLE_N */ + DEFAULT_PINMUX(SDMMC3_DAT3, RSVD0, NORMAL, NORMAL, OUTPUT), /* LED4_RED */ + DEFAULT_PINMUX(SDMMC3_DAT4, PWM1, PULL_DOWN, TRISTATE, OUTPUT), /* NC */ + DEFAULT_PINMUX(SDMMC3_DAT5, PWM0, NORMAL, NORMAL, OUTPUT), /* LED5_GREEN */ + DEFAULT_PINMUX(SDMMC3_DAT6, SPDIF, NORMAL, NORMAL, OUTPUT), /* LED5_RED */ + DEFAULT_PINMUX(SDMMC3_DAT7, SPDIF, PULL_DOWN, TRISTATE, OUTPUT),/* NC */ +#else /* IXORA */ DEFAULT_PINMUX(SDMMC3_CLK, SDMMC3, NORMAL, NORMAL, INPUT), DEFAULT_PINMUX(SDMMC3_CMD, SDMMC3, PULL_UP, NORMAL, INPUT), DEFAULT_PINMUX(SDMMC3_DAT0, SDMMC3, PULL_UP, NORMAL, INPUT), @@ -374,6 +390,7 @@ static __initdata struct tegra_pingroup_config apalis_t30_pinmux[] = { DEFAULT_PINMUX(SDMMC3_DAT5, SDMMC3, PULL_UP, NORMAL, INPUT), DEFAULT_PINMUX(SDMMC3_DAT6, SDMMC3, PULL_UP, NORMAL, INPUT), DEFAULT_PINMUX(SDMMC3_DAT7, SDMMC3, PULL_UP, NORMAL, INPUT), +#endif /* IXORA */ DEFAULT_PINMUX(SDMMC4_CLK, SDMMC4, NORMAL, NORMAL, INPUT), DEFAULT_PINMUX(SDMMC4_CMD, SDMMC4, PULL_UP, NORMAL, INPUT), diff --git a/arch/arm/mach-tegra/board-apalis_t30.c b/arch/arm/mach-tegra/board-apalis_t30.c index 13580ab4c0f3..21f39010e0ad 100644 --- a/arch/arm/mach-tegra/board-apalis_t30.c +++ b/arch/arm/mach-tegra/board-apalis_t30.c @@ -436,27 +436,38 @@ static struct tegra_clk_init_table apalis_t30_clk_init_table[] __initdata = { /* GPIO */ static struct gpio apalis_t30_gpios[] = { - {APALIS_GPIO1, GPIOF_IN, "GPIO1 X1-1"}, - {APALIS_GPIO2, GPIOF_IN, "GPIO2 X1-3"}, - {APALIS_GPIO3, GPIOF_IN, "GPIO3 X1-5"}, - {APALIS_GPIO4, GPIOF_IN, "GPIO4 X1-7"}, + {APALIS_GPIO1, GPIOF_IN, "GPIO1 X1-1"}, + {APALIS_GPIO2, GPIOF_IN, "GPIO2 X1-3"}, + {APALIS_GPIO3, GPIOF_IN, "GPIO3 X1-5"}, + {APALIS_GPIO4, GPIOF_IN, "GPIO4 X1-7"}, #ifndef POWER_GPIO - {APALIS_GPIO5, GPIOF_IN, "GPIO5 X1-9"}, + {APALIS_GPIO5, GPIOF_IN, "GPIO5 X1-9"}, #endif #ifndef FORCE_OFF_GPIO - {APALIS_GPIO6, GPIOF_IN, "GPIO6 X1-11"}, + {APALIS_GPIO6, GPIOF_IN, "GPIO6 X1-11"}, #endif /* GPIO7 is used by PCIe driver on Evaluation board */ -/* {APALIS_GPIO7, GPIOF_IN, "GPIO7 X1-13"}, */ - {APALIS_GPIO8, GPIOF_IN, "GPIO8 X1-15, FAN"}, - {LVDS_MODE, GPIOF_IN, "LVDS: Single/Dual Ch"}, - {LVDS_6B_8B_N, GPIOF_IN, "LVDS: 18/24 Bit Mode"}, - {LVDS_OE, GPIOF_IN, "LVDS: Output Enable"}, - {LVDS_PDWN_N, GPIOF_IN, "LVDS: Power Down"}, - {LVDS_R_F_N, GPIOF_IN, "LVDS: Clock Polarity"}, - {LVDS_MAP, GPIOF_IN, "LVDS: Colour Mapping"}, - {LVDS_RS, GPIOF_IN, "LVDS: Swing Mode"}, - {LVDS_DDR_N, GPIOF_IN, "LVDS: DDRclk Disable"}, +/* {APALIS_GPIO7, GPIOF_IN, "GPIO7 X1-13"}, */ + {APALIS_GPIO8, GPIOF_IN, "GPIO8 X1-15, FAN"}, +#ifdef IXORA + {LED4_GREEN, GPIOF_OUT_INIT_LOW, "Ixora LED4_GREEN"}, + {LED4_RED, GPIOF_OUT_INIT_LOW, "Ixora LED4_RED"}, + {LED5_GREEN, GPIOF_OUT_INIT_LOW, "Ixora LED5_GREEN"}, + {LED5_RED, GPIOF_OUT_INIT_LOW, "Ixora LED5_RED"}, +#endif /* IXORA */ + {LVDS_MODE, GPIOF_IN, "LVDS: Single/Dual Ch"}, + {LVDS_6B_8B_N, GPIOF_IN, "LVDS: 18/24 Bit Mode"}, + {LVDS_OE, GPIOF_IN, "LVDS: Output Enable"}, + {LVDS_PDWN_N, GPIOF_IN, "LVDS: Power Down"}, + {LVDS_R_F_N, GPIOF_IN, "LVDS: Clock Polarity"}, + {LVDS_MAP, GPIOF_IN, "LVDS: Colour Mapping"}, + {LVDS_RS, GPIOF_IN, "LVDS: Swing Mode"}, + {LVDS_DDR_N, GPIOF_IN, "LVDS: DDRclk Disable"}, +#ifdef IXORA + {PCIE1_WDISABLE_N, GPIOF_OUT_INIT_HIGH, "PCIE1_WDISABLE_N"}, + {SW3, GPIOF_IN, "Ixora SW3"}, + {UART2_3_RS232_FOFF_N, GPIOF_OUT_INIT_HIGH, "UART2_3_RS232_FOFF_N"}, +#endif /* IXORA */ }; static void apalis_t30_gpio_init(void) @@ -722,6 +733,7 @@ static struct tegra_sdhci_platform_data apalis_t30_emmc_platform_data = { .wp_gpio = -1, }; +#ifndef IXORA static struct tegra_sdhci_platform_data apalis_t30_mmccard_platform_data = { .cd_gpio = MMC1_CD_N, .ddr_clk_limit = 52000000, @@ -731,6 +743,7 @@ static struct tegra_sdhci_platform_data apalis_t30_mmccard_platform_data = { .wp_gpio = -1, .no_1v8 = 1, }; +#endif /* !IXORA */ static struct tegra_sdhci_platform_data apalis_t30_sdcard_platform_data = { .cd_gpio = SD1_CD_N, @@ -749,11 +762,13 @@ static void __init apalis_t30_sdhci_init(void) &apalis_t30_emmc_platform_data; platform_device_register(&tegra_sdhci_device4); +#ifndef IXORA if (g_sdmmc3_uhs) apalis_t30_mmccard_platform_data.no_1v8 = 0; tegra_sdhci_device3.dev.platform_data = &apalis_t30_mmccard_platform_data; platform_device_register(&tegra_sdhci_device3); +#endif /* !IXORA */ tegra_sdhci_device1.dev.platform_data = &apalis_t30_sdcard_platform_data; diff --git a/arch/arm/mach-tegra/board-apalis_t30.h b/arch/arm/mach-tegra/board-apalis_t30.h index c08ff32741b8..14e003453fa7 100644 --- a/arch/arm/mach-tegra/board-apalis_t30.h +++ b/arch/arm/mach-tegra/board-apalis_t30.h @@ -102,6 +102,21 @@ #define WAKE1_MICO TEGRA_GPIO_PV1 +/* + * Uncomment to use MXM3 pins 144, 146, 152, 156, 160, 162 & 164 for LEDs, + * PCIE1_WDISABLE_N, SW3 and UART2_3_RS232_FOFF_N on Ixora carrier board + */ +//#define IXORA +#ifdef IXORA +#define LED4_GREEN TEGRA_GPIO_PB6 +#define LED4_RED TEGRA_GPIO_PB4 +#define LED5_GREEN TEGRA_GPIO_PD0 +#define LED5_RED TEGRA_GPIO_PD3 +#define PCIE1_WDISABLE_N TEGRA_GPIO_PB5 +#define SW3 TEGRA_GPIO_PB7 +#define UART2_3_RS232_FOFF_N TEGRA_GPIO_PV3 +#endif /* IXORA */ + /* STMPE811 IRQs */ #define STMPE811_IRQ_BASE TEGRA_NR_IRQS #define STMPE811_IRQ_END (STMPE811_IRQ_BASE + 22) |