Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(272)

Unified Diff: arch/arm/mach-tegra/board-seaboard.c

Issue 6576013: CHROMIUM: ARM: Tegra: Seaboard: Support for latest ASoC driver (Closed)
Patch Set: Created 9 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « arch/arm/mach-tegra/board-seaboard.h ('k') | arch/arm/mach-tegra/board-seaboard-pinmux.c » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: arch/arm/mach-tegra/board-seaboard.c
diff --git a/arch/arm/mach-tegra/board-seaboard.c b/arch/arm/mach-tegra/board-seaboard.c
index 54e002cf3e692e228db6c304c58db10d602f6bac..a327530e60c30636f61722605c217eebf64eac2d 100755
--- a/arch/arm/mach-tegra/board-seaboard.c
+++ b/arch/arm/mach-tegra/board-seaboard.c
@@ -33,6 +33,9 @@
#include <linux/gpio_keys.h>
#include <linux/power/bq20z75.h>
+#include <sound/wm8903.h>
+
+#include <mach/seaboard_audio.h>
#include <mach/iomap.h>
#include <mach/irqs.h>
#include <mach/pinmux.h>
@@ -274,8 +277,24 @@ static void seaboard_isl29018_init(void)
gpio_direction_input(TEGRA_GPIO_ISL29018_IRQ);
}
+static struct wm8903_platform_data wm8903_pdata = {
+ .irq_active_low = 0,
+ .micdet_cfg = 0,
+ .micdet_delay = 100,
+ .gpio_base = GPIO_WM8903(0),
+ .gpio_cfg = {
+ WM8903_GPIO_NO_CONFIG,
+ WM8903_GPIO_NO_CONFIG,
+ 0,
+ WM8903_GPIO_NO_CONFIG,
+ WM8903_GPIO_NO_CONFIG,
+ },
+};
+
static struct i2c_board_info __initdata wm8903_device = {
I2C_BOARD_INFO("wm8903", 0x1a),
+ .platform_data = &wm8903_pdata,
+ .irq = TEGRA_GPIO_TO_IRQ(TEGRA_GPIO_PX3),
};
static struct i2c_board_info __initdata isl29018_device = {
@@ -477,6 +496,19 @@ static struct platform_device seaboard_battery_device = {
},
};
+static struct seaboard_audio_platform_data audio_pdata = {
+ .gpio_spkr_en = GPIO_WM8903(2),
+ .gpio_hp_det = TEGRA_GPIO_PX1,
+};
+
+static struct platform_device audio_device = {
+ .name = "tegra-snd-seaboard",
+ .id = 0,
+ .dev = {
+ .platform_data = &audio_pdata,
+ },
+};
+
static struct platform_device *seaboard_devices[] __initdata = {
&debug_uart,
&tegra_rtc_device,
@@ -486,6 +518,7 @@ static struct platform_device *seaboard_devices[] __initdata = {
&tegra_i2s_device1,
&tegra_das_device,
&tegra_pcm_device,
+ &audio_device,
&tegra_avp_device,
};
@@ -545,6 +578,9 @@ static void __init __tegra_seaboard_init(void)
tegra_clk_init_from_table(seaboard_clk_init_table);
+ tegra_gpio_enable(audio_pdata.gpio_hp_det);
+ tegra_gpio_enable(TEGRA_IRQ_TO_GPIO(wm8903_device.irq));
+
platform_add_devices(seaboard_devices, ARRAY_SIZE(seaboard_devices));
seaboard_ehci_init();
« no previous file with comments | « arch/arm/mach-tegra/board-seaboard.h ('k') | arch/arm/mach-tegra/board-seaboard-pinmux.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698