Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9a76f1ff authored by Mark Brown's avatar Mark Brown
Browse files

ASoC: Add initial WM8962 CODEC driver



The WM8962 is a low power, high performance stereo CODEC designed for
portable digital audio applications.

This initial driver release supports the key audio paths of the WM8962.
Extended functionality, such as microphone detection, digital microphones
and the advanced DSP signal enhancements provided by the device are not
yet supported.

Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent bda7d2a8
Loading
Loading
Loading
Loading

include/sound/wm8962.h

0 → 100644
+23 −0
Original line number Diff line number Diff line
/*
 * wm8962.h  --  WM8962 Soc Audio driver platform data
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

#ifndef _WM8962_PDATA_H
#define _WM8962_PDATA_H

#define WM8962_MAX_GPIO 6

/* Use to set GPIO default values to zero */
#define WM8962_GPIO_SET 0x10000

struct wm8962_pdata {
	u32 gpio_init[WM8962_MAX_GPIO];

	bool spk_mono;   /* Speaker outputs tied together as mono */
};

#endif
+4 −0
Original line number Diff line number Diff line
@@ -61,6 +61,7 @@ config SND_SOC_ALL_CODECS
	select SND_SOC_WM8955 if I2C
	select SND_SOC_WM8960 if I2C
	select SND_SOC_WM8961 if I2C
	select SND_SOC_WM8962 if I2C
	select SND_SOC_WM8971 if I2C
	select SND_SOC_WM8974 if I2C
	select SND_SOC_WM8978 if I2C
@@ -248,6 +249,9 @@ config SND_SOC_WM8960
config SND_SOC_WM8961
	tristate

config SND_SOC_WM8962
	tristate

config SND_SOC_WM8971
	tristate

+2 −0
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ snd-soc-wm8940-objs := wm8940.o
snd-soc-wm8955-objs := wm8955.o
snd-soc-wm8960-objs := wm8960.o
snd-soc-wm8961-objs := wm8961.o
snd-soc-wm8962-objs := wm8962.o wm8962-tables.o
snd-soc-wm8971-objs := wm8971.o
snd-soc-wm8974-objs := wm8974.o
snd-soc-wm8978-objs := wm8978.o
@@ -115,6 +116,7 @@ obj-$(CONFIG_SND_SOC_WM8940) += snd-soc-wm8940.o
obj-$(CONFIG_SND_SOC_WM8955)	+= snd-soc-wm8955.o
obj-$(CONFIG_SND_SOC_WM8960)	+= snd-soc-wm8960.o
obj-$(CONFIG_SND_SOC_WM8961)	+= snd-soc-wm8961.o
obj-$(CONFIG_SND_SOC_WM8962)	+= snd-soc-wm8962.o
obj-$(CONFIG_SND_SOC_WM8971)	+= snd-soc-wm8971.o
obj-$(CONFIG_SND_SOC_WM8974)	+= snd-soc-wm8974.o
obj-$(CONFIG_SND_SOC_WM8978)	+= snd-soc-wm8978.o
+42299 −0

File added.

Preview size limit exceeded, changes collapsed.

+1933 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading