/openbmc/linux/sound/soc/sunxi/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 6 tristate "Allwinner A10 Codec Support" 10 Select Y or M to add support for the Codec embedded in the Allwinner 14 tristate "Allwinner SUN8I audio codec" 20 This option enables the digital part of the internal audio codec for 23 Say Y or M if you want to add sun8i digital audio codec support. 26 tristate "Allwinner sun8i Codec Analog Controls Support" 30 Say Y or M if you want to add support for the analog controls for 31 the codec embedded in newer Allwinner SoCs. 34 tristate "Allwinner sun50i Codec Analog Controls Support" [all …]
|
H A D | sun4i-codec.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright 2015 Maxime Ripard <maxime.ripard@free-electrons.com> 7 * Copyright 2016 Chen-Yu Tsai <wens@csie.org> 35 /* Codec DAC digital controls and FIFO registers */ 53 /* Codec DAC side analog signal controls */ 79 /* Codec ADC digital controls and FIFO registers */ 92 /* Codec ADC side analog signal controls */ 115 /* Microphone controls (sun7i only) */ 125 * but only the DAC digital controls are at the same offset. The others 126 * have been moved around to accommodate extra analog controls. [all …]
|
H A D | sun8i-codec-analog.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * This driver supports the analog controls for the internal codec 6 * Copyright 2016 Chen-Yu Tsai <wens@csie.org> 18 #include <sound/soc-dapm.h> 21 #include "sun8i-adda-pr-regmap.h" 23 /* Codec analog control register offsets and bit fields */ 116 /* mixer controls */ 140 /* mixer controls */ 156 /* ADC mixer controls */ 180 /* ADC mixer controls */ [all …]
|
H A D | sun50i-codec-analog.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * This driver supports the analog controls for the internal codec 6 * Copyright (C) 2016 Chen-Yu Tsai <wens@csie.org> 10 * Based on sun8i-codec-analog.c 23 #include <sound/soc-dapm.h> 26 #include "sun8i-adda-pr-regmap.h" 28 /* Codec analog control register offsets and bit fields */ 123 /* mixer controls */ 147 /* ADC mixer controls */ 172 -450, 150, 0); [all …]
|
/openbmc/linux/Documentation/sound/hd-audio/ |
H A D | controls.rst | 2 HD-Audio Codec-Specific Mixer Controls 6 This file explains the codec-specific mixer controls. 9 -------------- 12 This is an enum control to change the surround-channel setup, 15 and "8ch". According to the configuration, this also controls the 16 jack-retasking of multi-I/O jacks. 18 Auto-Mute Mode 19 This is an enum control to change the auto-mute behavior of the 20 headphone and line-out jacks. If built-in speakers and headphone 21 and/or line-out jacks are available on a machine, this controls [all …]
|
H A D | notes.rst | 2 More Notes on HD-Audio Driver 11 HD-audio is the new standard on-board audio component on modern PCs 12 after AC97. Although Linux has been supporting HD-audio since long 15 This document explains the brief trouble-shooting and debugging 16 methods for the HD-audio hardware. 18 The HD-audio component consists of two parts: the controller chip and 19 the codec chips on the HD-audio bus. Linux provides a single driver 20 for all controllers, snd-hda-intel. Although the driver name contains 21 a word of a well-known hardware vendor, it's not specific to it but for 22 all controller chips by other companies. Since the HD-audio [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/sound/ |
H A D | allwinner,sun4i-a10-codec.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/sound/allwinner,sun4i-a10-codec.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Allwinner A10 Codec 10 - Chen-Yu Tsai <wens@csie.org> 11 - Maxime Ripard <mripard@kernel.org> 14 "#sound-dai-cells": 19 - allwinner,sun4i-a10-codec 20 - allwinner,sun6i-a31-codec [all …]
|
H A D | rt5682.txt | 1 RT5682 audio CODEC 7 - compatible : "realtek,rt5682" or "realtek,rt5682i" 9 - reg : The I2C address of the device. 11 - AVDD-supply: phandle to the regulator supplying analog power through the 14 - MICVDD-supply: phandle to the regulator supplying power for the microphone 17 - VBAT-supply: phandle to the regulator supplying battery power through the 20 - DBVDD-supply: phandle to the regulator supplying I/O power through the DBVDD 23 - LDO1-IN-supply: phandle to the regulator supplying power to the digital core 28 - interrupts : The CODEC's interrupt output. 30 - realtek,dmic1-data-pin [all …]
|
H A D | realtek,rt5682s.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Realtek rt5682s codec 10 - Derek Fang <derek.fang@realtek.com> 13 Rt5682s(ALC5682I-VS) is a rt5682i variant which supports I2C only. 16 - $ref: dai-common.yaml# 28 description: The CODEC's interrupt output. 30 realtek,dmic1-data-pin: 33 - 0 # dmic1 data is not used [all …]
|
/openbmc/linux/Documentation/sound/soc/ |
H A D | dapm.rst | 11 such, can easily co-exist with the other PM systems. 20 audio subsystem, this includes internal codec power blocks and machine 25 Codec bias domain 26 VREF, VMID (core codec and audio power) 28 Usually controlled at codec probe/remove and suspend/resume, although 53 internal codec components). All audio components that effect power are called 60 Audio DAPM widgets fall into a number of types:- 63 Mixes several analog signals into a single analog signal. 65 An analog switch that outputs only one of many inputs. 69 Analog to Digital Converter [all …]
|
/openbmc/linux/sound/pci/oxygen/ |
H A D | oxygen_mixer.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * C-Media CMI8788 driver - mixer code 19 struct oxygen *chip = ctl->private_data; in dac_volume_info() 21 info->type = SNDRV_CTL_ELEM_TYPE_INTEGER; in dac_volume_info() 22 info->count = chip->model.dac_channels_mixer; in dac_volume_info() 23 info->value.integer.min = chip->model.dac_volume_min; in dac_volume_info() 24 info->value.integer.max = chip->model.dac_volume_max; in dac_volume_info() 31 struct oxygen *chip = ctl->private_data; in dac_volume_get() 34 mutex_lock(&chip->mutex); in dac_volume_get() 35 for (i = 0; i < chip->model.dac_channels_mixer; ++i) in dac_volume_get() [all …]
|
/openbmc/linux/sound/soc/codecs/ |
H A D | hdac_hda.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // Copyright(c) 2015-18 Intel Corporation. 5 * hdac_hda.c - ASoC extensions to reuse the legacy HDA codec drivers 7 * codec drivers using hdac_ext_bus_ops ops. 66 .name = "Analog Codec DAI", 69 .stream_name = "Analog Codec Playback", 77 .stream_name = "Analog Codec Capture", 87 .name = "Digital Codec DAI", 90 .stream_name = "Digital Codec Playback", 98 .stream_name = "Digital Codec Capture", [all …]
|
H A D | twl4030.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ALSA SoC TWL4030 codec driver 28 #include <linux/mfd/twl4030-audio.h> 45 /* codec private data */ 67 u8 ctl_cache[TWL4030_REG_PRECKR_CTL - TWL4030_REG_EAR_CTL + 1]; 79 twl4030->ctl_cache[i - TWL4030_REG_EAR_CTL] = byte; in tw4030_init_ctl_cache() 89 return -EIO; in twl4030_read() 98 value = twl4030->ctl_cache[reg - TWL4030_REG_EAR_CTL]; in twl4030_read() 116 if (twl4030->earpiece_enabled) in twl4030_can_write_to_chip() 120 if (twl4030->predrivel_enabled) in twl4030_can_write_to_chip() [all …]
|
H A D | hda.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Copyright(c) 2021-2022 Intel Corporation. All rights reserved. 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 …]
|
H A D | Kconfig | 1 # 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" 339 Normally ASoC codec drivers are only built if a machine driver which 401 tristate "Build generic ASoC AC97 CODEC driver" 438 tristate "Analog Devices ADAU1372 CODEC (I2C)" 444 tristate "Analog Devices ADAU1372 CODEC (SPI)" 455 tristate "Analog Devices ADAU1701 CODEC" [all …]
|
/openbmc/linux/sound/soc/rockchip/ |
H A D | rockchip_max98090.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Rockchip machine ASoC driver for boards using a MAX90809 CODEC. 23 #define DRV_NAME "rockchip-snd-max98090" 113 struct snd_soc_dapm_context *dapm = &jack->card->dapm; in rk_jack_event() 169 return -EINVAL; in rk_aif1_hw_params() 175 dev_err(cpu_dai->dev, "Can't set cpu dai clock %d\n", ret); in rk_aif1_hw_params() 182 /* HDMI codec dai does not need to set sysclk. */ in rk_aif1_hw_params() 183 if (!strcmp(rtd->dai_link->name, "HDMI")) in rk_aif1_hw_params() 187 dev_err(codec_dai->dev, "Can't set codec dai clock %d\n", ret); in rk_aif1_hw_params() 200 return snd_pcm_hw_constraint_minmax(substream->runtime, in rk_aif1_startup() [all …]
|
H A D | rk3288_hdmi_analog.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Rockchip machine ASoC driver for RK3288 boards that have an HDMI and analog 22 #include <sound/soc-dapm.h> 26 #define DRV_NAME "rk3288-snd-hdmi-analog" 36 struct rk_drvdata *machine = snd_soc_card_get_drvdata(w->dapm->card); in rk_hp_power() 38 if (!gpio_is_valid(machine->gpio_hp_en)) in rk_hp_power() 41 gpio_set_value_cansleep(machine->gpio_hp_en, in rk_hp_power() 50 .pin = "Analog", 56 SND_SOC_DAPM_HP("Analog", rk_hp_power), 61 SOC_DAPM_PIN_SWITCH("Analog"), [all …]
|
/openbmc/linux/sound/pci/hda/ |
H A D | Kconfig | 1 # 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. 27 will be called snd-hda-intel. 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. 52 This interface can be used for out-of-band communication 56 bool "Allow dynamic codec reconfiguration" [all …]
|
H A D | hda_generic.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * Generic BIOS auto-parser helper functions for HD-audio 16 /* table entry for multi-io paths */ 18 hda_nid_t pin; /* multi-io widget pin NID */ 20 unsigned int ctl_in; /* cached input-pin control value */ 25 * For output, stored in the order of DAC -> ... -> pin, 26 * for input, pin -> ... -> ADC. 30 * multi[] indicates whether it's a selector widget with multi-connectors 56 /* mic/line-in auto switching entry */ 62 int idx; /* imux index, -1 = invalid */ [all …]
|
/openbmc/linux/Documentation/sound/cards/ |
H A D | sb-live-mixer.rst | 19 (index 0) for a given card) allows to forward 48kHz, stereo, 16-bit 22 to 8 raw PCM devices operating at 48kHz, 16-bit little endian. It would 24 but the conversion routines exist only for stereo (2-channel streams) 30 Digital mixer controls 33 These controls are built using the DSP instructions. They offer extended 34 functionality. Only the default built-in code in the ALSA driver is described 35 here. Note that the controls work as attenuators: the maximum value is the 37 is mentioned in multiple controls, the signal is accumulated and can be clipped 44 digital to analog converter 46 analog to digital converter [all …]
|
H A D | maya44.rst | 8 keep here as reference -- tiwai 22 … programming information, so I (Rainer Zimmermann) had to find out some card-specific information … 24 This is the first testing version of the Maya44 driver released to the alsa-devel mailing list (Feb… 29 - playback and capture at all sampling rates 30 - input/output level 31 - crossmixing 32 - line/mic switch 33 - phantom power switch 34 - analogue monitor a.k.a bypass 39 - Channel 3+4 analogue - S/PDIF input switching [all …]
|
/openbmc/linux/sound/soc/intel/boards/ |
H A D | cht_bsw_rt5645.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * cht-bsw-rt5645.c - ASoc Machine driver for Intel Cherryview-based platforms 4 * Cherrytrail and Braswell, with RT5645 codec. 25 #include <sound/soc-acpi.h> 27 #include "../atom/sst-atom-controls.h" 28 #include "../common/soc-intel-quirks.h" 31 #define CHT_CODEC_DAI1 "rt5645-aif1" 32 #define CHT_CODEC_DAI2 "rt5645-aif2" 70 struct snd_soc_dapm_context *dapm = w->dapm; in platform_clock_control() 71 struct snd_soc_card *card = dapm->card; in platform_clock_control() [all …]
|
/openbmc/linux/include/sound/ |
H A D | ac97_codec.h | 1 /* SPDX-License-Identifier: GPL-2.0+ 4 * Universal interface for Audio Codec '97 24 /* specific - SigmaTel */ 28 #define AC97_SIGMATEL_ANALOG 0x6c /* Analog Special */ 33 #define AC97_SIGMATEL_MULTICHN 0x74 /* Multi-Channel programming */ 37 /* specific - Analog Devices */ 41 #define AC97_AD_CODEC_CFG 0x70 /* codec configuration */ 47 /* specific - Cirrus Logic */ 56 /* specific - Conexant */ 64 /* specific - ALC */ [all …]
|
/openbmc/u-boot/arch/arm/dts/ |
H A D | sun8i-a23.dtsi | 2 * Copyright 2014 Chen-Yu Tsai 4 * Chen-Yu Tsai <wens@csie.org> 6 * This file is dual-licensed: you can use it either under the terms 45 #include "sun8i-a23-a33.dtsi" 53 codec: codec@1c22c00 { label 54 #sound-dai-cells = <0>; 55 compatible = "allwinner,sun8i-a23-codec"; 59 clock-names = "apb", "codec"; 62 dma-names = "rx", "tx"; 63 allwinner,codec-analog-controls = <&codec_analog>; [all …]
|
/openbmc/linux/arch/arm/boot/dts/allwinner/ |
H A D | sun8i-a23.dtsi | 2 * Copyright 2014 Chen-Yu Tsai 4 * Chen-Yu Tsai <wens@csie.org> 6 * This file is dual-licensed: you can use it either under the terms 45 #include "sun8i-a23-a33.dtsi" 49 codec: codec@1c22c00 { label 50 #sound-dai-cells = <0>; 51 compatible = "allwinner,sun8i-a23-codec"; 55 clock-names = "apb", "codec"; 58 dma-names = "rx", "tx"; 59 allwinner,codec-analog-controls = <&codec_analog>; [all …]
|