summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@armlinux.org.uk>2016-09-26 15:13:04 +0100
committerRussell King <rmk+kernel@armlinux.org.uk>2020-10-12 21:56:21 +0100
commit7e0b76003607e6f7d3cebc3d98372d976f14adef (patch)
tree7b87293474acf15332d7f61852f5b8f49c138ee6
parentf81d38f4dba0b8e2228d10c9b3db59632344690c (diff)
h3600 audio gpios
-rw-r--r--arch/arm/mach-sa1100/h3100.c20
-rw-r--r--arch/arm/mach-sa1100/h3600.c20
2 files changed, 40 insertions, 0 deletions
diff --git a/arch/arm/mach-sa1100/h3100.c b/arch/arm/mach-sa1100/h3100.c
index d32e03ed6d1d..c3dc51c90c40 100644
--- a/arch/arm/mach-sa1100/h3100.c
+++ b/arch/arm/mach-sa1100/h3100.c
@@ -96,9 +96,29 @@ static struct gpiod_lookup_table h3100_irda_gpio_table = {
},
};
+static struct gpiod_lookup_table h3100_uda134x_gpio_table = {
+ .dev_id = "uda134x-codec",
+ .table = {
+ GPIO_LOOKUP("gpio", 4, "qmute", GPIO_ACTIVE_HIGH),
+ { },
+ },
+};
+
+static struct gpiod_lookup_table h3100_asoc_gpio_table = {
+ .dev_id = "h3xxx-asoc",
+ .table = {
+ GPIO_LOOKUP("gpio", 6, "audio-on", GPIO_ACTIVE_HIGH),
+ GPIO_LOOKUP("gpio", 7, "audio-power-on", GPIO_ACTIVE_HIGH),
+ GPIO_LOOKUP("htc-egpio", 3, "audio-reset", GPIO_ACTIVE_HIGH),
+ { },
+ },
+};
+
static void __init h3100_mach_init(void)
{
gpiod_add_lookup_table(&h3100_irda_gpio_table);
+ gpiod_add_lookup_table(&h3100_uda134x_gpio_table);
+ gpiod_add_lookup_table(&h3100_asoc_gpio_table);
h3xxx_mach_init();
diff --git a/arch/arm/mach-sa1100/h3600.c b/arch/arm/mach-sa1100/h3600.c
index 029f949cbc56..a04ccdbfe778 100644
--- a/arch/arm/mach-sa1100/h3600.c
+++ b/arch/arm/mach-sa1100/h3600.c
@@ -131,11 +131,31 @@ 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_irda_gpio_table);
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);