summaryrefslogtreecommitdiff
path: root/sound/soc/codecs/Makefile
AgeCommit message (Collapse)Author
2019-02-08ASoC: cs35l36: Add support for Cirrus CS35L36 AmplifierJames Schulman
Add driver support for Cirrus Logic CS35L36 boosted speaker amplifier Signed-off-by: James Schulman <james.schulman@cirrus.com> Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Acked-by: Brian Austin <brian.austin@cirrus.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2019-02-06ASoC: codecs: Add jz4725b-codec driverPaul Cercueil
Add jz4725b-codec driver to support the internal CODEC found in the JZ4725B SoC from Ingenic. Signed-off-by: Paul Cercueil <paul@crapouillou.net> Signed-off-by: Mark Brown <broonie@kernel.org>
2019-01-29ASoC: cros_ec_codec: Add codec driver for Cros ECCheng-Yi Chiang
Add a codec driver to control ChromeOS EC codec. Use EC Host command to enable/disable I2S recording and control other configurations. Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org> Reviewed-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2019-01-28ASoC: wcd9335: add CLASS-H Controller supportSrinivas Kandagatla
CLASS-H controller/Amplifier is common accorss Qualcomm WCD codec series. This patchset adds basic CLASS-H controller apis for WCD codecs after wcd9335 to use. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Mark Brown <broonie@kernel.org>
2019-01-28ASoC: wcd9335: add support to wcd9335 codecSrinivas Kandagatla
Qualcomm WCD9335 Codec is a standalone Hi-Fi audio codec IC, It supports both I2S/I2C and SLIMbus audio interfaces. On slimbus interface it supports two data lanes; 16 Tx ports and 8 Rx ports. It has Seven DACs and nine dedicated interpolators, Seven (six audio ADCs, and one VBAT ADC), Multibutton headset control (MBHC), Active noise cancellation and Sidetone paths and processing. This patchset adds very basic support for playback and capture via the 9 interpolators and ADC respectively. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Mark Brown <broonie@kernel.org>
2019-01-25ASoC: mediatek: mt6358: add codec driverShunli Wang
add the mt6358 codec driver. Signed-off-by: Shunli Wang <shunli.wang@mediatek.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2019-01-03ASoC: rockchip: support ACODEC for rk3328Katsuhiro Suzuki
This patch adds support for audio CODEC core of rk3328. Rockchip does not publish detail specification of this core but driver source code is opened on their GitHub repository. https://github.com/rockchip-linux/kernel So I ported this code to linux-next and added some trivial fixes. Signed-off-by: Katsuhiro Suzuki <katsuhiro@katsuster.net> Signed-off-by: Mark Brown <broonie@kernel.org>
2019-01-03ASoC: cs4341: Add driver for CS4341 DACAlexander Shiyan
This patch adds Cirrus Logic CS4341. This is a very simple, playback only, stereo DAC. Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-11-15ASoC: ak4118: Add support for AK4118 S/PDIF transceiverAdrien Charruel
The AK4118A is a digital audio transceiver supporting 8 input channels at 192kHz and with 24bits resolution. It converts the S/PDIF signal to I2S format and is configurable over I2C. This driver introduce a minimal support of the AK4118, like selecting the input channel, reading input frequency and detecting some errors. Datasheet is available here: https://www.akm.com/akm/en/file/datasheet/AK4118AEQ.pdf Signed-off-by: Adrien Charruel <adrien.charruel@devialet.com> Signed-off-by: Clément Péron <peron.clem@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-10-17ASoC: nau8822: new codec driverDavid Lin
Add driver for NAU88C22. Signed-off-by: David Lin <CTLIN0@nuvoton.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-08-28ASoC: pcm3060: Add codec driverKirill Marinushkin
This commit adds support for TI PCM3060 CODEC. The technical documentation is available at [1]. [1] http://ti.com/product/pcm3060 Signed-off-by: Kirill Marinushkin <kmarinushkin@birdec.tech> Cc: Mark Brown <broonie@kernel.org> Cc: Liam Girdwood <lgirdwood@gmail.com> Cc: Jaroslav Kysela <perex@perex.cz> Cc: Takashi Iwai <tiwai@suse.com> Cc: M R Swami Reddy <mr.swami.reddy@ti.com> Cc: Vishwas A Deshpande <vishwas.a.deshpande@ti.com> Cc: Kevin Cernekee <cernekee@chromium.org> Cc: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: alsa-devel@alsa-project.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Mark Brown <broonie@kernel.org>
2018-08-28ASoC: hdac_hda: add asoc extension for legacy HDA codec driversRakesh Ughreja
This patch adds a kernel module which is used by the legacy HDA codec drivers as library. This implements hdac_ext_bus_ops to enable the reuse of legacy HDA codec drivers with ASoC platform drivers. Signed-off-by: Rakesh Ughreja <rakesh.a.ughreja@intel.com> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-08-01ASoC: wcd9335: Fix buildMark Brown
This reverts commit e57d4ca882e28 (ASoC: wcd9335: add support to wcd9335 codec) due to build failures caused by missing dependencies. Signed-off-by: Mark Brown <broonie@kernel.org>
2018-08-01ASoC: wcd9335: Fix build due to CLASS-H Controller supportMark Brown
This reverts commit c8cb5f775c8dac (ASoC: vert "ASoC: wcd9335: add CLASS-H Controller support) due to missing dependencies. Signed-off-by: Mark Brown <broonie@kernel.org>
2018-07-31ASoC: wcd9335: add CLASS-H Controller supportSrinivas Kandagatla
CLASS-H controller/Amplifier is common accorss Qualcomm WCD codec series. This patchset adds basic CLASS-H controller apis for WCD codecs after wcd9335 to use. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-07-31ASoC: wcd9335: add support to wcd9335 codecSrinivas Kandagatla
Qualcomm WCD9335 Codec is a standalone Hi-Fi audio codec IC, It supports both I2S/I2C and SLIMbus audio interfaces. On slimbus interface it supports two data lanes; 16 Tx ports and 8 Rx ports. It has Seven DACs and nine dedicated interpolators, Seven (six audio ADCs, and one VBAT ADC), Multibutton headset control (MBHC), Active noise cancellation and Sidetone paths and processing. This patchset adds very basic support for playback and capture via the 9 interpolators and ADC respectively. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Reviewed-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-07-03ASoC: es7241: add es7241 codec supportJerome Brunet
Add support for the everest es7241 which is a simple 2 channels analog to digital converter. Signed-off-by: Jerome Brunet <jbrunet@baylibre.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-06-27ASoC: simple-amplifier: rename dio2125 to simple-ampliferJerome Brunet
The dio2125 is simple enough that we can make it a generic component. Just rename and sed the dio2125 amplifier driver to simple_amplifier. Suggested-by: Nicolò Veronese <nicveronese@gmail.com> Signed-off-by: Jerome Brunet <jbrunet@baylibre.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-06-18ASoC: rt5682: add rt5682 codec driverBard Liao
This is the initial codec driver for rt5682. Signed-off-by: Bard Liao <bardliao@realtek.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-06-01ASoC: TSCS454: Add SupportSteven Eckhoff
Currently there is no support for Tempo Semiconductor's TSCS454 CODEC. Add support for it. Signed-off-by: Steven Eckhoff <steven.eckhoff.opensource@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-05-17ASoC: ssm2305: Add amplifier driverMarco Felsch
The ssm2305 is a simple Class-D audio amplifier. A application can turn on/off the device by a gpio. It's also possible to hardwire the shutdown pin. Tested on a i.MX6 based custom board. Signed-off-by: Marco Felsch <m.felsch@pengutronix.de> Reviewed-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-04-26ASoC: add mt6351 codec driverKai Chieh Chuang
This patch adds the MediaTek MT6351 codec driver. MT6351 communicate with SoC through MediaTek PMIC wrapper. MT6351 use MediaTek proprietary audio interface. Signed-off-by: KaiChieh Chuang <kaichieh.chuang@mediatek.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-04-16ASoC: rt5668: add rt5668B codec driverBard Liao
This is the initial codec driver for rt5668b. Signed-off-by: Bard Liao <bardliao@realtek.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-04-16ASoC: rt1305: Add RT1305/RT1306 amplifier driverShuming Fan
This is the initial amplifier driver for rt1305/rt1306. Signed-off-by: Shuming Fan <shumingf@realtek.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-03-28Merge remote-tracking branches 'asoc/topic/tda7419', 'asoc/topic/tfa9879', ↵Mark Brown
'asoc/topic/tlv320aic23', 'asoc/topic/tlv320aic26' and 'asoc/topic/tlv320aic31xx' into asoc-next
2018-03-28Merge remote-tracking branches 'asoc/topic/sirf-audio', ↵Mark Brown
'asoc/topic/sn95031', 'asoc/topic/soc-dapm', 'asoc/topic/spdif_receiver' and 'asoc/topic/spdif_transmitter' into asoc-next
2018-03-28Merge remote-tracking branches 'asoc/topic/isabelle', 'asoc/topic/jz4740', ↵Mark Brown
'asoc/topic/lm49453', 'asoc/topic/max9759' and 'asoc/topic/max98088' into asoc-next
2018-03-28Merge remote-tracking branches 'asoc/topic/cpcap', 'asoc/topic/cq93vc' and ↵Mark Brown
'asoc/topic/cs35l32' into asoc-next
2018-03-28Merge remote-tracking branches 'asoc/topic/arizona', 'asoc/topic/atmel', ↵Mark Brown
'asoc/topic/bd28623', 'asoc/topic/blackfin' and 'asoc/topic/bt-sco' into asoc-next
2018-03-28Merge remote-tracking branches 'asoc/topic/ak5386', 'asoc/topic/ak5558', ↵Mark Brown
'asoc/topic/alc5623', 'asoc/topic/alc5632' and 'asoc/topic/amd' into asoc-next
2018-03-28Merge remote-tracking branches 'asoc/topic/adav80x', 'asoc/topic/ads117x', ↵Mark Brown
'asoc/topic/ak4104', 'asoc/topic/ak4458' and 'asoc/topic/ak4535' into asoc-next
2018-03-19ASoC: add tda7419 audio processor driverMatt Porter
Component driver for the tda7419 audio processor. Signed-off-by: Matt Porter <mporter@konsulko.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-03-19ASoC: codecs: Add support for PCM1789Mylène Josserand
Add Texas Instruments's PCM1789 DAC support. It is a simple DAC and does not have many registers. One particularity about this DAC is that the clocks must be always enabled. Also, an entire software reset is necessary while starting to play a sound otherwise, the clocks are not synchronized (so the DAC is not able to send data). Signed-off-by: Mylène Josserand <mylene.josserand@bootlin.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-02-27ASoC: cpcap: new codecSebastian Reichel
Motorola CPCAP is a PMIC with audio functionality, that can be found on Motorola Droid 4 and probably a few other phones from Motorola's Droid series. The driver has been written from scratch using Motorola's Android driver, register dumps from running Android and datasheet for NXP MC13783UG (which is similar to Motorola CPCAP, but not the same). The chip provides two audio interfaces, that can be muxed to two different audio codecs. One provides support for stereo output (named StDAC or HiFi), while the other only provides mono output (named Voice). Only the Voice codec provides a Capture interface. Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-02-27ASoC: support ROHM BD28623 codecKatsuhiro Suzuki
This patch adds support of the ROHM BD28623MUV Class D speaker amplifier for Flat-panel TVs. This IC delivers an output power of 20W + 20W. Signed-off-by: Katsuhiro Suzuki <suzuki.katsuhiro@socionext.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-02-20ASoC: max9759: Add Amplifier DriverNeil Armstrong
The max9759 is a gpio controlled amplifier. Tested on a Variscite Dart MX6 SoM based custom board. Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-02-16ASoC: ak5558: Add support for AK5558 ADC driverDaniel Baluta
AK5558 is a 32-bit, 768 kHZ sampling, differential input ADC for digital audio systems. Datasheet is available at: https://www.akm.com/akm/en/file/datasheet/AK5558VN.pdf Initial patch includes support for normal and TDM modes. Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Signed-off-by: Junichi Wakasugi <wakasugi.jb@om.asahi-kasei.co.jp> [initial coding for 3.18 kernel] Signed-off-by: Mihai Serban <mihai.serban@nxp.com> [cleanups and porting to 4.9 kernel] Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> [tdm support] Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com> [pm support, cleanups and porting to latest kernel] Signed-off-by: Mark Brown <broonie@kernel.org>
2018-02-16ASoC: ak4458: Add support for AK4458 DAC driverCosmin-Gabriel Samoila
The AK4458 is a 32-bit 8ch Premium DAC that corresponds to a 768kHz PCM input and an 11.2MHz DSD input at maximum. It supports I2S, DSD and TDM modes with 24 or 32 bit MSB or 16, 24, 32 LSB formats. Its datasheet is available here: https://www.akm.com/akm/en/file/datasheet/AK4458VN.pdf Signed-off-by: Junichi Wakasugi <wakasugi.jb@om.asahi-kasei.co.jp> Signed-off-by: Mihai Serban <mihai.serban@nxp.com> Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Signed-off-by: Cosmin-Gabriel Samoila <cosmin.samoila@nxp.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-02-12ASoC: sn95031: remove dead makefile about sn95031Corentin Labbe
All sn95031 stuff was removed in commit 987da3fe1759 ("ASoC: sn95031: remove this code") Since SND_SOC_SN95031 was gone, remove makefile about it. Signed-off-by: Corentin Labbe <clabbe@baylibre.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-01-12Merge remote-tracking branches 'asoc/topic/tscs42xx', 'asoc/topic/twl4030', ↵Mark Brown
'asoc/topic/twl6040' and 'asoc/topic/uda1380' into asoc-next
2018-01-12Merge remote-tracking branches 'asoc/topic/sunxi', 'asoc/topic/symmetry', ↵Mark Brown
'asoc/topic/tas5720', 'asoc/topic/tas6424' and 'asoc/topic/tfa9879' into asoc-next
2018-01-12Merge remote-tracking branches 'asoc/topic/hdac_hdmi', ↵Mark Brown
'asoc/topic/hisilicon', 'asoc/topic/iio' and 'asoc/topic/max98373' into asoc-next
2018-01-12Merge remote-tracking branch 'asoc/topic/pcm186x' into asoc-nextMark Brown
2018-01-10ASoC: sn95031: remove this codeVinod Koul
This codec was used in MFLD systems in the PMIC chip, we no longer have users for this, so remove it Signed-off-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-01-05ASoC: TSCS42xx: Add support for Tempo Semiconductor's TSCS42xx audio CODECSteven Eckhoff
Currently there is no support for TSCS42xx audio CODECs. Add support for TSCS42xx audio CODECs. Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com> Acked-by: Philippe Ombredanne <pombredanne@nexb.com> Signed-off-by: Steven Eckhoff <steven.eckhoff.opensource@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2018-01-04ASoC: max98373: Added Amplifier DriverRyan Lee
Signed-off-by: Ryan Lee <ryans.lee@maximintegrated.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2017-12-06ASoC: pcm186x: Add initial PCM1862/63/64/65 universal ADC driverAndreas Dannenberg
This is an initial version of the PCM186x codec driver supporting both 2-channel and 4-channel device variants. Not all device features are supported yet such as master/slave mode PLL configuration for which the codec driver currently relies on the PCM186x built-in clock auto-detection feature or the connection of digital microphones. However here is what's here and what should work: - Support for SPI and I2C low-level interfaces - Regmap support and basic register definitions - Input Mixer and Mux selection - I2C, LJ, and TDM DAI format support Signed-off-by: Andreas Dannenberg <dannenberg@ti.com> Signed-off-by: Michael Stecklein <m-stecklein@ti.com> Signed-off-by: Andrew F. Davis <afd@ti.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2017-12-06ASoC: tas6424: Add support for TAS6424 digital amplifierAndreas Dannenberg
The Texas Instruments TAS6424 device is a high-efficiency quad-channel Class-D audio power amplifier. Its digital time division multiplexed (TDM) interface enables up to 2 devices to share the same bus, supporting a total of eight channels from one audio serial port. Signed-off-by: Andreas Dannenberg <dannenberg@ti.com> Signed-off-by: Michael Stecklein <m-stecklein@ti.com> Signed-off-by: Andrew F. Davis <afd@ti.com> Signed-off-by: Mark Brown <broonie@kernel.org>
2017-11-10Merge remote-tracking branches 'asoc/topic/rl6231' and 'asoc/topic/rt5514' ↵Mark Brown
into asoc-next
2017-11-10ASoC: rt5514: work around link errorArnd Bergmann
The main rt5514 driver optionally calls into the SPI back-end to load the firmware. This causes a link error when one driver selects rt5514 as built-in and another driver selects rt5514-spi as a loadable module: sound/soc/codecs/rt5514.o: In function `rt5514_dsp_voice_wake_up_put': rt5514.c:(.text+0xac8): undefined reference to `rt5514_spi_burst_write' As a workaround, this adds another silent symbol, to force rt5514-spi to be built-in for that configuration. I'm not overly happy with that solution, but couldn't come up with anything better. Using 'IS_REACHABLE()' would break the case that relies on the loadable module, and all other ideas would result in more complexity. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Mark Brown <broonie@kernel.org>