diff options
author | Russell King <rmk+kernel@armlinux.org.uk> | 2016-08-23 14:50:04 +0100 |
---|---|---|
committer | Russell King (Oracle) <rmk+kernel@armlinux.org.uk> | 2022-05-23 15:58:28 +0100 |
commit | daa7896dcf0f0eeb513e20ec7abc095b55de4b98 (patch) | |
tree | 08ddfe5ffbc91d5528cfc80574df970fc83d0f8f /arch/arm | |
parent | 0f55f6919766936cb5bfdd898d9d5d798452eabd (diff) |
asoc: sa11x0/assabet: use gpiod APIs for some gpios
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/mach-sa1100/assabet.c | 18 | ||||
-rw-r--r-- | arch/arm/mach-sa1100/clock.c | 2 |
2 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/mach-sa1100/assabet.c b/arch/arm/mach-sa1100/assabet.c index a925e5483ab2..9beba1a6c621 100644 --- a/arch/arm/mach-sa1100/assabet.c +++ b/arch/arm/mach-sa1100/assabet.c @@ -452,6 +452,22 @@ static struct resource neponset_resources[] = { }; #endif +static struct gpiod_lookup_table assabet_uda1341_gpio_table = { + .dev_id = "uda134x-codec", + .table = { + GPIO_LOOKUP("assabet", 21, "qmute", GPIO_ACTIVE_HIGH), + { }, + }, +}; + +static struct gpiod_lookup_table assabet_audio_gpio_table = { + .dev_id = "assabet-asoc", + .table = { + GPIO_LOOKUP("assabet", 23, "spkr-shtdn", GPIO_ACTIVE_HIGH), + { }, + }, +}; + static struct gpiod_lookup_table assabet_cf_gpio_table = { .dev_id = "sa11x0-pcmcia.1", .table = { @@ -558,6 +574,8 @@ static struct gpiod_lookup_table assabet_uart3_gpio_table = { static void __init assabet_init(void) { gpiod_add_lookup_table(&assabet_irda_gpio_table); + gpiod_add_lookup_table(&assabet_uda1341_gpio_table); + gpiod_add_lookup_table(&assabet_audio_gpio_table); /* * Ensure that the power supply is in "high power" mode. diff --git a/arch/arm/mach-sa1100/clock.c b/arch/arm/mach-sa1100/clock.c index 9ced1c559eca..a104cfa4b123 100644 --- a/arch/arm/mach-sa1100/clock.c +++ b/arch/arm/mach-sa1100/clock.c @@ -124,6 +124,8 @@ int __init sa11xx_clk_init(void) clk_hw_register_clkdev(hw, NULL, "sa11x0-pcmcia.1"); clk_hw_register_clkdev(hw, NULL, "1800"); + clk_hw_register_clkdev(hw, NULL, "assabet-asoc"); + hw = clk_hw_register_mux(NULL, "tucr-mux", clk_tucr_parents, ARRAY_SIZE(clk_tucr_parents), 0, (void __iomem *)&TUCR, FShft(TUCR_TSEL), |