Home
last modified time | relevance | path

Searched +full:codec +full:- +full:driver (Results 1 – 25 of 1022) sorted by relevance

12345678910>>...41

/linux/sound/pci/hda/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "HD-Audio"
23 This option enables the HD-audio controller. Don't forget
24 to choose the appropriate codec options below.
26 To compile this driver as a module, choose M here: the module
27 will be called snd-hda-intel.
42 To compile this driver as a module, choose M here: the module
43 will be called snd-hda-tegra.
48 bool "Build hwdep interface for HD-audio driver"
51 Say Y here to build a hwdep interface for HD-audio driver.
[all …]
H A Dhda_bind.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * HD-audio codec driver binding
19 * find a matching codec id
23 struct hda_codec *codec = container_of(dev, struct hda_codec, core); in hda_codec_match() local
24 struct hda_codec_driver *driver = in hda_codec_match() local
28 u32 id = codec->probe_id ? codec->probe_id : codec->core.vendor_id; in hda_codec_match()
29 u32 rev_id = codec->core.revision_id; in hda_codec_match()
31 for (list = driver->id; list->vendor_id; list++) { in hda_codec_match()
32 if (list->vendor_id == id && in hda_codec_match()
33 (!list->rev_id || list->rev_id == rev_id)) { in hda_codec_match()
[all …]
/linux/sound/soc/codecs/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
3 # modular, meaning we can't build the codec driver in with I2C support.
5 # setting - SPI can't be modular so that case doesn't need to be covered.
12 menu "CODEC drivers"
15 tristate "Build all ASoC CODEC drivers"
359 Normally ASoC codec drivers are only built if a machine driver which
361 driver. Selecting this option will allow these drivers to be built
362 without an explicit machine driver for test and development purposes.
421 tristate "Build generic ASoC AC97 CODEC driver"
458 tristate "Analog Devices ADAU1372 CODEC (I2C)"
[all …]
H A Dcs40l50-codec.c1 // SPDX-License-Identifier: GPL-2.0
3 // CS40L50 Advanced Haptic Driver with waveform memory,
4 // integrated DSP, and closed-loop algorithms
74 return -EINVAL; in cs40l50_get_clk_config()
77 static int cs40l50_swap_ext_clk(struct cs40l50_codec *codec, const unsigned int clk_src) in cs40l50_swap_ext_clk() argument
84 ret = cs40l50_get_clk_config(codec->bclk_ratio * codec->rate, &cfg); in cs40l50_swap_ext_clk()
92 return -EINVAL; in cs40l50_swap_ext_clk()
95 ret = regmap_update_bits(codec->regmap, CS40L50_REFCLK_INPUT, in cs40l50_swap_ext_clk()
102 ret = regmap_update_bits(codec->regmap, CS40L50_REFCLK_INPUT, in cs40l50_swap_ext_clk()
109 return regmap_update_bits(codec->regmap, CS40L50_REFCLK_INPUT, in cs40l50_swap_ext_clk()
[all …]
H A Dhda.c1 // SPDX-License-Identifier: GPL-2.0
3 // Copyright(c) 2021-2022 Intel Corporation
16 static int hda_codec_create_dais(struct hda_codec *codec, int pcm_count, in hda_codec_create_dais() argument
19 struct device *dev = &codec->core.dev; in hda_codec_create_dais()
26 return -ENOMEM; in hda_codec_create_dais()
28 pcm = list_first_entry(&codec->pcm_list_head, struct hda_pcm, list); in hda_codec_create_dais()
34 dev_info(dev, "creating for %s %d\n", pcm->name, i); in hda_codec_create_dais()
36 drvs[i].name = pcm->name; in hda_codec_create_dais()
41 if (!pcm->stream[dir].substreams) { in hda_codec_create_dais()
42 dev_info(dev, "skipping playback dai for %s\n", pcm->name); in hda_codec_create_dais()
[all …]
/linux/sound/soc/intel/boards/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
50 tristate "Haswell with RT5640 I2S codec"
66 tristate "Broadwell with RT5650 codec"
72 This adds the ASoC machine driver for Intel Broadwell platforms with
73 the RT5650 codec.
78 tristate "Broadwell with RT5677 codec"
89 the RT5677 audio codec. This is a recommended option.
94 tristate "Broadwell with RT286 I2S codec"
109 tristate "Baytrail and Baytrail-CR with RT5640 codec"
116 This adds support for ASoC machine driver for Intel(R) Baytrail and Baytrail-CR
[all …]
H A Dcht_bsw_rt5672.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * cht_bsw_rt5672.c - ASoc Machine driver for Intel Cherryview-based platforms
4 * Cherrytrail and Braswell, with RT5672 codec.
21 #include <sound/soc-acpi.h>
23 #include "../atom/sst-atom-controls.h"
24 #include "../common/soc-intel-quirks.h"
27 /* The platform clock #3 outputs 19.2Mhz clock to codec as I2S MCLK */
29 #define CHT_CODEC_DAI "rt5670-aif1"
53 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control()
54 struct snd_soc_card *card = dapm->card; in platform_clock_control()
[all …]
/linux/Documentation/sound/soc/
H A Dcodec.rst2 ASoC Codec Class Driver
5 The codec class driver is generic and hardware independent code that configures
6 the codec, FM, MODEM, BT or external DSP to provide audio capture and playback.
11 Each codec class driver *must* provide the following features:-
13 1. Codec DAI and PCM configuration
14 2. Codec control IO - using RegMap API
16 4. Codec audio operations
20 Optionally, codec drivers can also provide:-
24 Its probably best to use this guide in conjunction with the existing codec
25 driver code in sound/soc/codecs/
[all …]
H A Doverview.rst6 provide better ALSA support for embedded system-on-chip processors (e.g.
9 had some limitations:-
11 * Codec drivers were often tightly coupled to the underlying SoC
12 CPU. This is not ideal and leads to code duplication - for example,
18 machine specific code to re-route audio, enable amps, etc., after such an
21 * Drivers tended to power up the entire codec when playing (or
24 power via changing codec oversampling rates, bias currents, etc.
31 features :-
33 * Codec independence. Allows reuse of codec drivers on other platforms
36 * Easy I2S/PCM audio interface setup between codec and SoC. Each SoC
[all …]
/linux/sound/soc/mediatek/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
11 This adds ASoC driver for Mediatek MT2701 boards
17 tristate "ASoc Audio driver for MT2701 with CS42448 codec"
22 This adds ASoC driver for Mediatek MT2701 boards
28 tristate "ASoc Audio driver for MT2701 with WM8960 codec"
32 This adds ASoC driver for Mediatek MT2701 boards
42 This adds ASoC driver for Mediatek MT6797 boards
48 tristate "ASoc Audio driver for MT6797 with MT6351 codec"
52 This adds ASoC driver for Mediatek MT6797 boards
62 This adds ASoC platform driver support for MediaTek MT7986 chip
[all …]
/linux/sound/soc/intel/avs/boards/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
13 This adds support for AVS with DA7219 I2S codec configuration.
31 This adds support for AVS with ES8336 I2S codec configuration.
36 tristate "HD-Audio generic board"
39 This adds support for AVS with HDAudio codec configuration.
46 This adds support for I2S test-board which can be used to verify
55 This adds support for AVS with MAX98927 I2S codec configuration.
65 This adds support for AVS with MAX98357A I2S codec configuration.
75 This adds support for AVS with MAX98373 I2S codec configuration.
85 This adds support for ASoC machine driver with NAU8825 I2S audio codec.
[all …]
/linux/sound/aoa/codecs/
H A Dtoonie.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Apple Onboard Audio driver for Toonie codec
7 * This is a driver for the toonie codec chip. This chip is present
15 MODULE_DESCRIPTION("toonie codec driver for snd-aoa");
21 #define PFX "snd-aoa-codec-toonie: "
24 struct aoa_codec codec; member
26 #define codec_to_toonie(c) container_of(c, struct toonie, codec)
85 static int toonie_init_codec(struct aoa_codec *codec) in toonie_init_codec() argument
87 struct toonie *toonie = codec_to_toonie(codec); in toonie_init_codec()
90 if (toonie->codec.connected != 1) in toonie_init_codec()
[all …]
/linux/include/sound/ac97/
H A Dcodec.h1 /* SPDX-License-Identifier: GPL-2.0
22 * struct ac97_id - matches a codec device and driver on an ac97 bus
23 * @id: The significant bits if the codec vendor ID1 and ID2
25 * matching. A driver binds to a device when :
27 * @data: Private data used by the driver.
36 * ac97_codec_device - a ac97 codec
38 * @vendor_id: the vendor_id of the codec, as sensed on the AC-link
39 * @num: the codec number, 0 is primary, 1 is first slave, etc ...
40 * @clk: the clock BIT_CLK provided by the codec
41 * @ac97_ctrl: ac97 digital controller on the same AC-link
[all …]
/linux/sound/hda/
H A Dhdac_component.c1 // SPDX-License-Identifier: GPL-2.0
2 // hdac_component.c - routines for sync between HD-A core and DRM driver
24 * snd_hdac_set_codec_wakeup - Enable / disable HDMI/DP codec wakeup
28 * This function is supposed to be used only by a HD-audio controller
29 * driver tha
121 snd_hdac_sync_audio_rate(struct hdac_device * codec,hda_nid_t nid,int dev_id,int rate) snd_hdac_sync_audio_rate() argument
162 snd_hdac_acomp_get_eld(struct hdac_device * codec,hda_nid_t nid,int dev_id,bool * audio_enabled,char * buffer,int max_bytes) snd_hdac_acomp_get_eld() argument
[all...]
/linux/sound/soc/tegra/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
3 tristate "SoC Audio for the Tegra System-on-Chip"
83 Config to enable the Inter-IC Sound (I2S) Controller which
84 implements full-duplex and bidirectional and single direction
85 point-to-point serial interfaces. It can interface with I2S
114 converts the multi-bit Pulse Code Modulation (PCM) audio input to
115 oversampled 1-bit Pulse Density Modulation (PDM) output. From the
117 that up-samples the input to the desired sampling rate by
119 the desired 1-bit output via Delta Sigma Modulation (DSM).
139 per-stream volume control or for master volume control.
[all …]
/linux/sound/hda/ext/
H A Dhdac_ext_bus.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * hdac-ext-bus.c - HD-audio extended core bus functions.
5 * Copyright (C) 2014-2015 Intel Corp
21 * snd_hdac_ext_bus_init - initialize a HD-audio extended bus
25 * @ext_ops: operators used for ASoC HDA codec drivers
39 bus->ext_ops = ext_ops; in snd_hdac_ext_bus_init()
42 * buses, bus->idx should be greater than 0, but there needs to be a in snd_hdac_ext_bus_init()
45 bus->idx = 0; in snd_hdac_ext_bus_init()
46 bus->cmd_dma_state = true; in snd_hdac_ext_bus_init()
53 * snd_hdac_ext_bus_exit - clean up a HD-audio extended bus
[all …]
/linux/sound/aoa/core/
H A Dcore.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Apple Onboard Audio driver core
14 MODULE_DESCRIPTION("Apple Onboard Audio Sound Driver");
27 if (!try_module_get(c->owner)) in attach_codec_to_fabric()
28 return -EBUSY; in attach_codec_to_fabric()
30 err = -ENOENT; in attach_codec_to_fabric()
31 if (fabric->found_codec) in attach_codec_to_fabric()
32 err = fabric->found_codec(c); in attach_codec_to_fabric()
34 module_put(c->owner); in attach_codec_to_fabric()
35 printk(KERN_ERR "snd-aoa: fabric didn't like codec %s\n", in attach_codec_to_fabric()
[all …]
/linux/sound/soc/intel/atom/
H A Dsst-mfld-platform-compress.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * sst_mfld_platform.c - Intel MID Platform driver
5 * Copyright (C) 2010-2014 Intel Corp
21 #include "sst-mfld-platform.h"
28 pr_debug("fragment elapsed by driver\n"); in sst_compr_fragment_elapsed()
37 pr_debug("drain notify by driver\n"); in sst_drain_notify()
46 struct snd_compr_runtime *runtime = cstream->runtime; in sst_platform_compr_open()
51 return -ENOMEM; in sst_platform_compr_open()
53 spin_lock_init(&stream->status_lock); in sst_platform_compr_open()
56 if (!sst || !try_module_get(sst->dev->driver->owner)) { in sst_platform_compr_open()
[all …]
/linux/drivers/staging/greybus/
H A Daudio_codec.c1 // SPDX-License-Identifier: GPL-2.0
3 * APBridge ALSA SoC dummy codec driver
26 list_for_each_entry(data, &module->data_list, list) { in find_data()
27 if (id == data->id) in find_data()
34 find_dai_stream_params(struct gbaudio_codec_info *codec, int id, int stream) in find_dai_stream_params() argument
38 list_for_each_entry(dai, &codec->dai_list, list) { in find_dai_stream_params()
39 if (dai->id == id) in find_dai_stream_params()
40 return &dai->params[stream]; in find_dai_stream_params()
45 static int gbaudio_module_enable_tx(struct gbaudio_codec_info *codec, in gbaudio_module_enable_tx() argument
58 dev_err(module->dev, "%d:DATA connection missing\n", id); in gbaudio_module_enable_tx()
[all …]
/linux/sound/soc/rockchip/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
11 tristate "Rockchip I2S Device Driver"
15 Say Y or M if you want to add support for I2S driver for
20 tristate "Rockchip I2S/TDM Device Driver"
24 Say Y or M if you want to add support for the I2S/TDM driver for
31 tristate "Rockchip PDM Controller Driver"
36 Say Y or M if you want to add support for PDM driver for
41 tristate "Rockchip SPDIF Device Driver"
45 Say Y or M if you want to add support for SPDIF driver for
49 tristate "ASoC support for Rockchip boards using a MAX98090 codec"
[all …]
/linux/sound/soc/sof/intel/
H A Dhda-codec.c1 // SPDX-License-Identifier: GPL-2.0-only
24 static int hda_codec_mask = -1;
26 MODULE_PARM_DESC(codec_mask, "SOF HDA codec mask for probing");
28 /* load the legacy HDA codec driver */
29 static int request_codec_module(struct hda_codec *codec) in request_codec_module() argument
35 switch (codec->probe_id) { in request_codec_module()
38 mod = "snd-hda-codec-generic"; in request_codec_module()
42 snd_hdac_codec_modalias(&codec->core, alias, sizeof(alias)); in request_codec_module()
48 dev_dbg(&codec->core.dev, "loading codec module: %s\n", mod); in request_codec_module()
52 return device_attach(hda_codec_dev(codec)); in request_codec_module()
[all …]
/linux/sound/soc/fsl/
H A Dp1022_ds.c1 // SPDX-License-Identifier: GPL-2.0
3 // Freescale P1022DS ALSA SoC Machine driver
21 /* P1022-specific PMUXCR and DMUXCR bit definitions */
49 unsigned int shift = 16 + (8 * (1 - co) + 2 * (3 - ch)); in guts_set_dmuxcr()
51 clrsetbits_be32(&guts->dmuxcr, 3 << shift, device << shift); in guts_set_dmuxcr()
58 * machine_data: machine-specific ASoC device data
79 * This function is used to initialize the board-specific hardware.
91 dev_err(card->dev, "could not map global utilities\n"); in p1022_ds_machine_probe()
92 return -ENOMEM; in p1022_ds_machine_probe()
96 clrsetbits_be32(&guts->pmuxcr, CCSR_GUTS_PMUXCR_UART0_I2C1_MASK, in p1022_ds_machine_probe()
[all …]
H A Dp1022_rdk.c1 // SPDX-License-Identifier: GPL-2.0
3 // Freescale P1022RDK ALSA SoC Machine driver
28 /* P1022-specific PMUXCR and DMUXCR bit definitions */
56 unsigned int shift = 16 + (8 * (1 - co) + 2 * (3 - ch)); in guts_set_dmuxcr()
58 clrsetbits_be32(&guts->dmuxcr, 3 << shift, device << shift); in guts_set_dmuxcr()
65 * machine_data: machine-specific ASoC device data
83 * p1022_rdk_machine_probe - initialize the board
86 * This function is used to initialize the board-specific hardware.
100 dev_err(card->dev, "could not map global utilities\n"); in p1022_rdk_machine_probe()
101 return -ENOMEM; in p1022_rdk_machine_probe()
[all …]
/linux/Documentation/devicetree/bindings/sound/
H A Dux500-mop500.txt1 * MOP500 Audio Machine Driver
3 This node is responsible for linking together all ux500 Audio Driver components.
6 - compatible : "stericsson,snd-soc-mop500"
8 Non-standard properties:
9 - stericsson,cpu-dai : Phandle to the CPU-side DAI
10 - stericsson,audio-codec : Phandle to the Audio CODEC
11 - stericsson,card-name : Over-ride default card name
16 compatible = "stericsson,snd-soc-mop500";
18 stericsson,cpu-dai = <&msp1 &msp3>;
19 stericsson,audio-codec = <&codec>;
[all …]
H A Dmt8195-mt6359.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/sound/mt8195-mt6359.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: MediaTek MT8195 ASoC sound card driver
10 - Trevor Wu <trevor.wu@mediatek.com>
16 - $ref: sound-card-common.yaml#
21 - mediatek,mt8195_mt6359_rt1019_rt5682
22 - mediatek,mt8195_mt6359_rt1011_rt5682
23 - mediatek,mt8195_mt6359_max98390_rt5682
[all …]

12345678910>>...41