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

Commit b35a28af authored by Mark Brown's avatar Mark Brown
Browse files

ASoC: Add initial WM8955 CODEC driver



The WM8955 is a low power, high quality stereo DAC with integrated
headphone and loudspeaker amplifiers, designed to reduce external
component requirements in portable digital audio applications. This is
an initial driver implementing support for the majority of the
functionality in the device, currently OUT3 is not supported.

Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
parent c2151433
Loading
Loading
Loading
Loading

include/sound/wm8955.h

0 → 100644
+26 −0
Original line number Diff line number Diff line
/*
 * Platform data for WM8955
 *
 * Copyright 2009 Wolfson Microelectronics PLC.
 *
 * Author: Mark Brown <broonie@opensource.wolfsonmicro.com>
 *
 *  This program is free software; you can redistribute  it and/or modify it
 *  under  the terms of  the GNU General  Public License as published by the
 *  Free Software Foundation;  either version 2 of the  License, or (at your
 *  option) any later version.
 *
 */

#ifndef __WM8955_PDATA_H__
#define __WM8955_PDATA_H__

struct wm8955_pdata {
	/* Configure LOUT2/ROUT2 to drive a speaker */
	unsigned int out2_speaker:1;

	/* Configure MONOIN+/- in differential mode */
	unsigned int monoin_diff:1;
};

#endif
+4 −0
Original line number Diff line number Diff line
@@ -52,6 +52,7 @@ config SND_SOC_ALL_CODECS
	select SND_SOC_WM8903 if I2C
	select SND_SOC_WM8904 if I2C
	select SND_SOC_WM8940 if I2C
	select SND_SOC_WM8955 if I2C
	select SND_SOC_WM8960 if I2C
	select SND_SOC_WM8961 if I2C
	select SND_SOC_WM8971 if I2C
@@ -214,6 +215,9 @@ config SND_SOC_WM8904
config SND_SOC_WM8940
        tristate

config SND_SOC_WM8955
	tristate

config SND_SOC_WM8960
	tristate

+2 −0
Original line number Diff line number Diff line
@@ -39,6 +39,7 @@ snd-soc-wm8900-objs := wm8900.o
snd-soc-wm8903-objs := wm8903.o
snd-soc-wm8904-objs := wm8904.o
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-wm8971-objs := wm8971.o
@@ -97,6 +98,7 @@ obj-$(CONFIG_SND_SOC_WM8900) += snd-soc-wm8900.o
obj-$(CONFIG_SND_SOC_WM8903)	+= snd-soc-wm8903.o
obj-$(CONFIG_SND_SOC_WM8904)	+= snd-soc-wm8904.o
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_WM8971)	+= snd-soc-wm8971.o
+1151 −0

File added.

Preview size limit exceeded, changes collapsed.

+489 −0

File added.

Preview size limit exceeded, changes collapsed.