| /kernel/linux/linux-5.10/sound/soc/sunxi/ |
| 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" 19 This option enables the digital part of the internal audio codec for 22 Say Y or M if you want to add sun8i digital audio codec support. 25 tristate "Allwinner sun8i Codec Analog Controls Support" 29 Say Y or M if you want to add support for the analog controls for 30 the codec embedded in newer Allwinner SoCs. 33 tristate "Allwinner sun50i Codec Analog Controls Support" [all …]
|
| 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 …]
|
| 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 …]
|
| 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 */ 122 /* mixer controls */ 146 /* ADC mixer controls */ 171 -450, 150, 0); [all …]
|
| /kernel/linux/linux-5.10/Documentation/sound/hd-audio/ |
| 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 …]
|
| 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 …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/sound/ |
| 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 Device Tree Bindings 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 …]
|
| /kernel/linux/linux-5.10/Documentation/sound/soc/ |
| 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 …]
|
| /kernel/linux/linux-5.10/sound/pci/oxygen/ |
| 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 …]
|
| /kernel/linux/linux-5.10/sound/soc/rockchip/ |
| 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 …]
|
| 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 …]
|
| /kernel/linux/linux-5.10/sound/soc/codecs/ |
| 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. 67 .name = "Analog Codec DAI", 70 .stream_name = "Analog Codec Playback", 78 .stream_name = "Analog Codec Capture", 88 .name = "Digital Codec DAI", 91 .stream_name = "Digital Codec Playback", 99 .stream_name = "Digital Codec Capture", [all …]
|
| D | twl4030.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ALSA SoC TWL4030 codec driver 28 #include <linux/mfd/twl4030-audio.h> 37 /* codec private data */ 59 u8 ctl_cache[TWL4030_REG_PRECKR_CTL - TWL4030_REG_EAR_CTL + 1]; 71 twl4030->ctl_cache[i - TWL4030_REG_EAR_CTL] = byte; in tw4030_init_ctl_cache() 81 return -EIO; in twl4030_read() 90 value = twl4030->ctl_cache[reg - TWL4030_REG_EAR_CTL]; in twl4030_read() 108 if (twl4030->earpiece_enabled) in twl4030_can_write_to_chip() 112 if (twl4030->predrivel_enabled) in twl4030_can_write_to_chip() [all …]
|
| D | uda1380.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * uda1380.c - Philips UDA1380 ALSA SoC audio driver 5 * Copyright (c) 2007-2009 Philipp Zabel <philipp.zabel@gmail.com> 8 * codec model. 32 /* codec private data */ 65 u16 *cache = uda1380->reg_cache; in uda1380_read_reg_cache() 70 return -1; in uda1380_read_reg_cache() 81 u16 *cache = uda1380->reg_cache; in uda1380_write_reg_cache() 86 set_bit(reg - 0x10, &uda1380_cache_dirty); in uda1380_write_reg_cache() 111 * codec DAI is active. in uda1380_write() [all …]
|
| D | stac9766.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * stac9766.c -- ALSA SoC STAC9766 codec support 8 * Features:- 10 * o Support for AC97 Codec, S/PDIF 84 static const char *stac9766_record_all_mux[] = {"All analog", 85 "Analog plus DAC"}; 110 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(master_tlv, -4650, 150, 0); 112 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(beep_tlv, -4500, 300, 0); 113 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(mix_tlv, -3450, 150, 0); 167 struct snd_soc_component *component = dai->component; in ac97_analog_prepare() [all …]
|
| /kernel/linux/linux-5.10/Documentation/sound/cards/ |
| 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 build-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 wrapped 44 digital to analog converter 46 analog to digital converter [all …]
|
| 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 …]
|
| D | audigy-mixer.rst | 5 This is based on sb-live-mixer.rst. 16 Digital mixer controls 19 These controls are built using the DSP instructions. They offer extended 20 functionality. Only the default build-in code in the ALSA driver is described 21 here. Note that the controls work as attenuators: the maximum value is the 23 is mentioned in multiple controls, the signal is accumulated and can be wrapped 30 digital to analog converter 32 analog to digital converter 34 one-way three wire serial bus for digital sound by Philips Semiconductors 39 a chip containing an analog mixer, DAC and ADC converters [all …]
|
| /kernel/linux/linux-5.10/sound/soc/intel/boards/ |
| 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 …]
|
| /kernel/linux/linux-5.10/sound/pci/hda/ |
| D | hda_generic.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * Generic BIOS auto-parser helper functions for HD-audio 13 /* table entry for multi-io paths */ 15 hda_nid_t pin; /* multi-io widget pin NID */ 17 unsigned int ctl_in; /* cached input-pin control value */ 22 * For output, stored in the order of DAC -> ... -> pin, 23 * for input, pin -> ... -> ADC. 27 * multi[] indicates whether it's a selector widget with multi-connectors 53 /* mic/line-in auto switching entry */ 59 int idx; /* imux index, -1 = invalid */ [all …]
|
| /kernel/linux/linux-5.10/include/sound/ |
| 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 …]
|
| /kernel/linux/linux-5.10/arch/arm/boot/dts/ |
| 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 …]
|
| /kernel/linux/linux-5.10/sound/aoa/codecs/ |
| D | onyx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Apple Onboard Audio driver for Onyx codec 7 * This is a driver for the pcm3052 codec chip (codenamed Onyx) 10 * The Onyx codec has the following connections (listed by the bit 12 * 0: analog output 17 * the digital output connected but not the analog, I have handled 24 * But snd-aoa assumes that there's at most one card, so 36 MODULE_DESCRIPTION("pcm3052 (onyx) codec driver for snd-aoa"); 43 #define PFX "snd-aoa-codec-onyx: " 46 /* cache registers 65 to 80, they are write-only! */ [all …]
|
| /kernel/linux/linux-5.10/include/linux/mfd/ |
| D | ac100.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Functions and registers to access AC100 codec / RTC combo IC. 5 * Copyright (C) 2016 Chen-Yu Tsai 7 * Chen-Yu Tsai <wens@csie.org> 20 /* Audio codec related registers */ 57 /* ADC digital controls */ 66 /* DAC digital controls */ 72 /* Analog controls */ 104 #define AC100_ADC_DAP_H_HPF_C 0x93 /* High High-Pass-Filter Coef */ 105 #define AC100_ADC_DAP_L_HPF_C 0x94 /* Low High-Pass-Filter Coef */ [all …]
|
| /kernel/linux/linux-5.10/sound/pci/ac97/ |
| D | ac97_codec.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 4 * Universal interface for Audio Codec '97 27 MODULE_DESCRIPTION("Universal interface for Audio Codec '97"); 38 MODULE_PARM_DESC(power_save, "Automatic power-saving timeout " 55 { 0x41445300, 0xffffff00, "Analog Devices", NULL, NULL }, 62 * currently used by the AC97 emulation of the almost-AC97 PCI168 card. 65 { 0x434d4900, 0xffffff00, "C-Media Electronics", NULL, NULL }, 139 { 0x43585430, 0xffffffff, "Cx20468-31", patch_conexant, NULL }, 152 { 0x4e534300, 0xffffffff, "LM4540,43,45,46,48", NULL, NULL }, // only guess --jk 162 { 0x54524123, 0xffffffff, "TR28602", NULL, NULL }, // only guess --jk [TR28023 = eMicro EM28023 (… [all …]
|