From a237755fdb43b2414ddfaef84a821ff3df10d3f0 Mon Sep 17 00:00:00 2001 From: Olof Johansson Date: Sat, 19 Feb 2011 16:39:37 -0800 Subject: [PATCH] --- yaml --- r: 235265 b: refs/heads/master c: 875d4af6a3bdf548ebf069c1f4254c6ae1edae93 h: refs/heads/master i: 235263: 9cf0338fb99d8b5ea082ccb9391e02cada9300f3 v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-tegra/board-harmony.c | 30 +++++++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 8be0afc79d2e..1e11866ecef0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ec243a071d32af0350449c220d1de7c437088879 +refs/heads/master: 875d4af6a3bdf548ebf069c1f4254c6ae1edae93 diff --git a/trunk/arch/arm/mach-tegra/board-harmony.c b/trunk/arch/arm/mach-tegra/board-harmony.c index f4c41c010e16..49224e936eb4 100644 --- a/trunk/arch/arm/mach-tegra/board-harmony.c +++ b/trunk/arch/arm/mach-tegra/board-harmony.c @@ -30,10 +30,13 @@ #include #include +#include #include "board.h" #include "board-harmony.h" #include "clock.h" +#include "devices.h" +#include "gpio-names.h" static struct plat_serial8250_port debug_uart_platform_data[] = { { @@ -59,6 +62,9 @@ static struct platform_device debug_uart = { static struct platform_device *harmony_devices[] __initdata = { &debug_uart, + &tegra_sdhci_device1, + &tegra_sdhci_device2, + &tegra_sdhci_device4, }; static void __init tegra_harmony_fixup(struct machine_desc *desc, @@ -77,12 +83,36 @@ static __initdata struct tegra_clk_init_table harmony_clk_init_table[] = { { NULL, NULL, 0, 0}, }; + +static struct tegra_sdhci_platform_data sdhci_pdata1 = { + .cd_gpio = -1, + .wp_gpio = -1, + .power_gpio = -1, +}; + +static struct tegra_sdhci_platform_data sdhci_pdata2 = { + .cd_gpio = TEGRA_GPIO_PI5, + .wp_gpio = TEGRA_GPIO_PH1, + .power_gpio = TEGRA_GPIO_PT3, +}; + +static struct tegra_sdhci_platform_data sdhci_pdata4 = { + .cd_gpio = TEGRA_GPIO_PH2, + .wp_gpio = TEGRA_GPIO_PH3, + .power_gpio = TEGRA_GPIO_PI6, + .is_8bit = 1, +}; + static void __init tegra_harmony_init(void) { tegra_clk_init_from_table(harmony_clk_init_table); harmony_pinmux_init(); + tegra_sdhci_device1.dev.platform_data = &sdhci_pdata1; + tegra_sdhci_device2.dev.platform_data = &sdhci_pdata2; + tegra_sdhci_device4.dev.platform_data = &sdhci_pdata4; + platform_add_devices(harmony_devices, ARRAY_SIZE(harmony_devices)); }