summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-sa1100/h3600.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/mach-sa1100/h3600.c b/arch/arm/mach-sa1100/h3600.c
index 4c0ba7372487..d9ac9aa87308 100644
--- a/arch/arm/mach-sa1100/h3600.c
+++ b/arch/arm/mach-sa1100/h3600.c
@@ -116,10 +116,30 @@ static struct platform_device_info h3600_audio_clk_device = {
.id = -1,
};
+static struct gpiod_lookup_table h3600_uda134x_gpio_table = {
+ .dev_id = "uda134x-codec",
+ .table = {
+ GPIO_LOOKUP("htc-egpio", 12, "qmute", GPIO_ACTIVE_HIGH),
+ { },
+ },
+};
+
+static struct gpiod_lookup_table h3600_asoc_gpio_table = {
+ .dev_id = "h3xxx-asoc",
+ .table = {
+ GPIO_LOOKUP("htc-egpio", 3, "audio-reset", GPIO_ACTIVE_HIGH),
+ GPIO_LOOKUP("htc-egpio", 10, "amp-power", GPIO_ACTIVE_HIGH),
+ GPIO_LOOKUP("htc-egpio", 11, "audio-power", GPIO_ACTIVE_HIGH),
+ { },
+ },
+};
+
static void __init h3600_mach_init(void)
{
gpiod_add_lookup_table(&h3600_sleeve_gpio_table);
gpiod_add_lookup_table(&h3600_audio_clk_gpio_table);
+ gpiod_add_lookup_table(&h3600_uda134x_gpio_table);
+ gpiod_add_lookup_table(&h3600_asoc_gpio_table);
platform_device_register_full(&h3600_audio_clk_device);