Skip to content

Commit

Permalink
Merge branch 'trimslice/upstream' of git://git.kernel.org/pub/scm/lin…
Browse files Browse the repository at this point in the history
…ux/kernel/git/rppt/linux-tegra into boards-for-next
  • Loading branch information
Olof Johansson committed Mar 17, 2011
2 parents 6f168f2 + f02726a commit 2f40ea9
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 0 deletions.
9 changes: 9 additions & 0 deletions arch/arm/mach-tegra/board-trimslice-pinmux.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,11 @@

#include <linux/kernel.h>
#include <linux/init.h>

#include <mach/pinmux.h>
#include <mach/gpio.h>

#include "gpio-names.h"
#include "board-trimslice.h"

static __initdata struct tegra_pingroup_config trimslice_pinmux[] = {
Expand Down Expand Up @@ -139,7 +142,13 @@ static __initdata struct tegra_pingroup_config trimslice_pinmux[] = {
{TEGRA_PINGROUP_XM2D, TEGRA_MUX_NONE, TEGRA_PUPD_NORMAL, TEGRA_TRI_NORMAL},
};

static struct tegra_gpio_table gpio_table[] = {
{ .gpio = TRIMSLICE_GPIO_SD4_CD, .enable = true }, /* mmc4 cd */
{ .gpio = TRIMSLICE_GPIO_SD4_WP, .enable = true }, /* mmc4 wp */
};

void __init trimslice_pinmux_init(void)
{
tegra_pinmux_config_table(trimslice_pinmux, ARRAY_SIZE(trimslice_pinmux));
tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
}
19 changes: 19 additions & 0 deletions arch/arm/mach-tegra/board-trimslice.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,12 @@
#include <asm/setup.h>

#include <mach/iomap.h>
#include <mach/sdhci.h>

#include "board.h"
#include "clock.h"
#include "devices.h"
#include "gpio-names.h"

#include "board-trimslice.h"

Expand All @@ -56,9 +59,22 @@ static struct platform_device debug_uart = {
.platform_data = debug_uart_platform_data,
},
};
static struct tegra_sdhci_platform_data sdhci_pdata1 = {
.cd_gpio = -1,
.wp_gpio = -1,
.power_gpio = -1,
};

static struct tegra_sdhci_platform_data sdhci_pdata4 = {
.cd_gpio = TRIMSLICE_GPIO_SD4_CD,
.wp_gpio = TRIMSLICE_GPIO_SD4_WP,
.power_gpio = -1,
};

static struct platform_device *trimslice_devices[] __initdata = {
&debug_uart,
&tegra_sdhci_device1,
&tegra_sdhci_device4,
};

static void __init tegra_trimslice_fixup(struct machine_desc *desc,
Expand Down Expand Up @@ -92,6 +108,9 @@ static void __init tegra_trimslice_init(void)

trimslice_pinmux_init();

tegra_sdhci_device1.dev.platform_data = &sdhci_pdata1;
tegra_sdhci_device4.dev.platform_data = &sdhci_pdata4;

platform_add_devices(trimslice_devices, ARRAY_SIZE(trimslice_devices));
}

Expand Down
3 changes: 3 additions & 0 deletions arch/arm/mach-tegra/board-trimslice.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@
#ifndef _MACH_TEGRA_BOARD_TRIMSLICE_H
#define _MACH_TEGRA_BOARD_TRIMSLICE_H

#define TRIMSLICE_GPIO_SD4_CD TEGRA_GPIO_PP1 /* mmc4 cd */
#define TRIMSLICE_GPIO_SD4_WP TEGRA_GPIO_PP2 /* mmc4 wp */

void trimslice_pinmux_init(void);

#endif

0 comments on commit 2f40ea9

Please sign in to comment.