/linux-6.12.1/sound/soc/rockchip/ |
D | rockchip_pdm.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Rockchip PDM ALSA SoC Digital Audio Interface(DAI) driver 9 #include <linux/clk.h> 32 struct clk *clk; member 33 struct clk *hclk; 42 unsigned int clk; member 77 static unsigned int get_pdm_clk(struct rk_pdm_dev *pdm, unsigned int sr, in get_pdm_clk() argument 80 unsigned int i, count, clk, div, rate; in get_pdm_clk() local 82 clk = 0; in get_pdm_clk() 84 return clk; in get_pdm_clk() [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/sound/ |
D | adi,adau7118.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: Analog Devices ADAU7118 8 Channel PDM to I2S/TDM Converter 11 - Nuno Sá <nuno.sa@analog.com> 14 Analog Devices ADAU7118 8 Channel PDM to I2S/TDM Converter over I2C or HW 16 https://www.analog.com/media/en/technical-documentation/data-sheets/ADAU7118.pdf 19 - $ref: dai-common.yaml# 24 - adi,adau7118 29 "#sound-dai-cells": [all …]
|
/linux-6.12.1/sound/soc/meson/ |
D | axg-pdm.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 6 #include <linux/clk.h> 12 #include <sound/soc-dai.h> 53 #define PDM_CHAN_CTRL_POINTER_MAX ((1 << PDM_CHAN_CTRL_POINTER_WIDTH) - 1) 93 struct regmap *map; member 94 struct clk *dclk; 95 struct clk *sysclk; 96 struct clk *pclk; 99 static void axg_pdm_enable(struct regmap *map) in axg_pdm_enable() argument 102 regmap_update_bits(map, PDM_CTRL, PDM_CTRL_RST_FIFO, PDM_CTRL_RST_FIFO); in axg_pdm_enable() [all …]
|
/linux-6.12.1/sound/soc/codecs/ |
D | adau7118.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Analog Devices ADAU7118 8 channel PDM-to-I2S/TDM Converter driver 36 struct regmap *map; member 65 /* PDM Clocks */ 130 snd_soc_component_get_drvdata(dai->component); in adau7118_set_channel_map() 133 dev_dbg(st->dev, "Set channel map, %d", tx_num); in adau7118_set_channel_map() 136 ret = snd_soc_component_update_bits(dai->component, in adau7118_set_channel_map() 150 snd_soc_component_get_drvdata(dai->component); in adau7118_set_fmt() 154 dev_dbg(st->dev, "Set format, fmt:%d\n", fmt); in adau7118_set_fmt() 158 ret = snd_soc_component_update_bits(dai->component, in adau7118_set_fmt() [all …]
|
D | tlv320adcx140.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Copyright (C) 2020 Texas Instruments Incorporated - https://www.ti.com/ 40 "ti,gpo-config-1", 41 "ti,gpo-config-2", 42 "ti,gpo-config-3", 43 "ti,gpo-config-4", 162 /* Digital Volume control. From -100 to 27 dB in 0.5 dB steps */ 163 static DECLARE_TLV_DB_SCALE(dig_vol_tlv, -10050, 50, 0); 168 /* DRE Level. From -12 dB to -66 dB in 1 dB steps */ 169 static DECLARE_TLV_DB_SCALE(dre_thresh_tlv, -6600, 100, 0); [all …]
|
D | rt5659.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5659.c -- RT5659/RT5658 ALSA SoC audio codec driver 9 #include <linux/clk.h> 25 #include <sound/soc-dapm.h> 1136 static const DECLARE_TLV_DB_SCALE(hp_vol_tlv, -2325, 75, 0); 1137 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 1138 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -65625, 375, 0); 1139 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 1140 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -17625, 375, 0); 1142 static const DECLARE_TLV_DB_SCALE(in_bst_tlv, -1200, 75, 0); [all …]
|
D | rt5665.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5665.c -- RT5665/RT5658 ALSA SoC audio codec driver 26 #include <sound/soc-dapm.h> 887 static const DECLARE_TLV_DB_SCALE(hp_vol_tlv, -2250, 150, 0); 888 static const DECLARE_TLV_DB_SCALE(mono_vol_tlv, -1400, 150, 0); 889 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 890 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -65625, 375, 0); 891 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 892 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -17625, 375, 0); 894 static const DECLARE_TLV_DB_SCALE(in_bst_tlv, -1200, 75, 0); [all …]
|
D | rt5651.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5651.c -- RT5651 ALSA SoC audio codec driver 23 #include <sound/soc-dapm.h> 287 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 288 static const DECLARE_TLV_DB_MINMAX(dac_vol_tlv, -6562, 0); 289 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 290 static const DECLARE_TLV_DB_MINMAX(adc_vol_tlv, -1762, 3000); 369 * set_dmic_clk - Set parameter of dmic. 379 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in set_dmic_clk() 383 rate = rt5651->sysclk / rl6231_get_pre_div(rt5651->regmap, in set_dmic_clk() [all …]
|
D | cs42l43.c | 1 // SPDX-License-Identifier: GPL-2.0 5 // Copyright (C) 2022-2023 Cirrus Logic, Inc. and 11 #include <linux/clk.h> 21 #include <linux/mfd/cs42l43-regs.h> 33 #include <sound/soc-component.h> 34 #include <sound/soc-dapm.h> 35 #include <sound/soc-dai.h> 137 dev_err(priv->dev, "Error " #name " IRQ\n"); \ 157 struct snd_soc_dapm_context *dapm = snd_soc_component_get_dapm(priv->component); in CS42L43_IRQ_ERROR() 161 priv->hp_ilimit_count--; in CS42L43_IRQ_ERROR() [all …]
|
D | wcd937x.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 // Copyright (c) 2023-2024 Qualcomm Innovation Center, Inc. All rights reserved. 20 #include <sound/soc-dapm.h> 24 #include "wcd-clsh-v2.h" 25 #include "wcd-mbhc-v2.h" 118 static const SNDRV_CTL_TLVD_DECLARE_DB_MINMAX(ear_pa_gain, 600, -1800); 214 regmap_write(wcd937x->regmap, WCD937X_DIGITAL_INTR_CLEAR_0, 0); in wcd937x_handle_post_irq() 215 regmap_write(wcd937x->regmap, WCD937X_DIGITAL_INTR_CLEAR_1, 0); in wcd937x_handle_post_irq() 216 regmap_write(wcd937x->regmap, WCD937X_DIGITAL_INTR_CLEAR_2, 0); in wcd937x_handle_post_irq() 245 gpiod_set_value(wcd937x->reset_gpio, 1); in wcd937x_reset() [all …]
|
D | wcd938x.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 // Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. 21 #include <sound/soc-dapm.h> 24 #include "wcd-clsh-v2.h" 25 #include "wcd-mbhc-v2.h" 193 static const SNDRV_CTL_TLVD_DECLARE_DB_MINMAX(ear_pa_gain, 600, -1800); 194 static const DECLARE_TLV_DB_SCALE(line_gain, -3000, 150, 0); 350 struct regmap *rm = wcd938x->regmap; in wcd938x_io_init() 409 port_num = ch_info->port_num; in wcd938x_sdw_connect_port() 410 ch_mask = ch_info->ch_mask; in wcd938x_sdw_connect_port() [all …]
|
D | rt5677.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5677.c -- RT5677 ALSA SoC audio codec driver 29 #include <sound/soc-dapm.h> 35 #include "rt5677-spi.h" 552 * rt5677_dsp_mode_i2c_write_addr - Write value to address on DSP mode. 563 struct snd_soc_component *component = rt5677->component; in rt5677_dsp_mode_i2c_write_addr() 566 mutex_lock(&rt5677->dsp_cmd_lock); in rt5677_dsp_mode_i2c_write_addr() 568 ret = regmap_write(rt5677->regmap_physical, RT5677_DSP_I2C_ADDR_MSB, in rt5677_dsp_mode_i2c_write_addr() 571 dev_err(component->dev, "Failed to set addr msb value: %d\n", ret); in rt5677_dsp_mode_i2c_write_addr() 575 ret = regmap_write(rt5677->regmap_physical, RT5677_DSP_I2C_ADDR_LSB, in rt5677_dsp_mode_i2c_write_addr() [all …]
|
D | rt5670.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5670.c -- RT5670 ALSA SoC audio codec driver 25 #include <sound/soc-dapm.h> 31 #include "rt5670-dsp.h" 50 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 422 * rt5670_headset_detect - Detect headset. 457 rt5670->jack_type = SND_JACK_HEADSET; in rt5670_headset_detect() 464 rt5670->jack_type = SND_JACK_HEADPHONE; in rt5670_headset_detect() 471 rt5670->jack_type = 0; in rt5670_headset_detect() 476 return rt5670->jack_type; in rt5670_headset_detect() [all …]
|
D | rt5645.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * rt5645.c -- RT5645 ALSA SoC audio codec driver 26 #include <sound/soc-dapm.h> 41 static unsigned int quirk = -1; 438 /* Some (package) variants have the headset-mic pin not-connected */ 670 static const DECLARE_TLV_DB_SCALE(out_vol_tlv, -4650, 150, 0); 671 static const DECLARE_TLV_DB_SCALE(dac_vol_tlv, -6525, 75, 0); 672 static const DECLARE_TLV_DB_SCALE(in_vol_tlv, -3450, 150, 0); 673 static const DECLARE_TLV_DB_SCALE(adc_vol_tlv, -1725, 75, 0); 687 /* {-6, -4.5, -3, -1.5, 0, 0.82, 1.58, 2.28} dB */ [all …]
|
/linux-6.12.1/arch/arm64/boot/dts/amlogic/ |
D | meson-g12-common.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 #include <dt-bindings/phy/phy.h> 7 #include <dt-bindings/gpio/gpio.h> 8 #include <dt-bindings/clock/g12a-clkc.h> 9 #include <dt-bindings/clock/g12a-aoclkc.h> 10 #include <dt-bindings/interrupt-controller/irq.h> 11 #include <dt-bindings/interrupt-controller/arm-gic.h> 12 #include <dt-bindings/interrupt-controller/amlogic,meson-g12a-gpio-intc.h> 13 #include <dt-bindings/reset/amlogic,meson-g12a-reset.h> 14 #include <dt-bindings/thermal/thermal.h> [all …]
|
D | meson-axg.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 #include <dt-bindings/clock/axg-aoclkc.h> 7 #include <dt-bindings/clock/axg-audio-clkc.h> 8 #include <dt-bindings/clock/axg-clkc.h> 9 #include <dt-bindings/gpio/gpio.h> 10 #include <dt-bindings/gpio/meson-axg-gpio.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h> 14 #include <dt-bindings/reset/amlogic,meson-axg-reset.h> [all …]
|
/linux-6.12.1/drivers/clk/meson/ |
D | axg-audio.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 7 #include <linux/clk.h> 8 #include <linux/clk-provider.h> 15 #include <linux/reset-controller.h> 18 #include "meson-clkc-utils.h" 19 #include "axg-audio.h" 20 #include "clk-regmap.h" 21 #include "clk-phase.h" 22 #include "sclk-div.h" 24 #include <dt-bindings/clock/axg-audio-clkc.h> [all …]
|
/linux-6.12.1/arch/arm64/boot/dts/freescale/ |
D | imx8mp-evk.dts | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 /dts-v1/; 8 #include <dt-bindings/phy/phy-imx8-pcie.h> 13 compatible = "fsl,imx8mp-evk", "fsl,imx8mp"; 16 stdout-path = &uart2; 19 backlight_lvds: backlight-lvds { 20 compatible = "pwm-backlight"; 22 brightness-levels = <0 100>; 23 num-interpolated-steps = <100>; 24 default-brightness-level = <100>; [all …]
|
/linux-6.12.1/sound/soc/atmel/ |
D | mchp-pdmc.c | 1 // SPDX-License-Identifier: GPL-2.0 5 // Copyright (C) 2019-2022 Microchip Technology Inc. and its subsidiaries 9 #include <dt-bindings/sound/microchip,pdmc.h> 12 #include <linux/clk.h> 24 * ---- PDMC Register map ---- 37 * ---- Control Register (Write-only) ---- 42 * ---- Mode Register (Read/Write) ---- 66 * ---- Configuration Register (Read/Write) ---- 75 * ---- Interrupt Enable/Disable/Mask/Status Registers ---- 85 * ---- Version Register (Read-only) ---- [all …]
|
/linux-6.12.1/sound/soc/stm/ |
D | stm32_sai.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 5 * Copyright (C) 2016, STMicroelectronics - All Rights Reserved 11 /******************** SAI Register Map **************************************/ 16 /* Sub-block A&B registers offsets, relative to A&B sub-block addresses */ 26 /* Sub-block A registers, relative to sub-block A address */ 82 #define SAI_XCR1_MCKDIV_MASK(x) GENMASK((SAI_XCR1_MCKDIV_SHIFT + (x) - 1),\ 85 #define SAI_XCR1_MCKDIV_MAX(x) ((1 << SAI_XCR1_MCKDIV_WIDTH(x)) - 1) 257 #define STM_SAI_IS_F4(ip) ((ip)->conf.version == STM_SAI_STM32F4) 259 ((ip)->pdata->conf.has_spdif_pdm) 268 * struct stm32_sai_conf - SAI configuration [all …]
|
D | stm32_sai_sub.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2016, STMicroelectronics - All Rights Reserved 9 #include <linux/clk.h> 10 #include <linux/clk-provider.h> 41 #define STM_SAI_IS_PLAYBACK(ip) ((ip)->dir == SNDRV_PCM_STREAM_PLAYBACK) 42 #define STM_SAI_IS_CAPTURE(ip) ((ip)->dir == SNDRV_PCM_STREAM_CAPTURE) 47 #define STM_SAI_IS_SUB_A(x) ((x)->id == STM_SAI_A_ID) 53 #define STM_SAI_PROTOCOL_IS_SPDIF(ip) ((ip)->spdif) 54 #define STM_SAI_HAS_SPDIF(x) ((x)->pdata->conf.has_spdif_pdm) 55 #define STM_SAI_HAS_PDM(x) ((x)->pdata->conf.has_spdif_pdm) [all …]
|
/linux-6.12.1/drivers/pinctrl/cirrus/ |
D | pinctrl-madera-core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2016-2018 Cirrus Logic 17 #include <linux/pinctrl/pinconf-generic.h> 25 #include "../pinctrl-utils.h" 27 #include "pinctrl-madera.h" 31 * NOTE: IDs are zero-indexed for coding convenience 77 * All single-pin functions can be mapped to any GPIO, however pinmux applies 81 * Since these do not correspond to anything in the actual hardware - they are 82 * merely an adaptation to pinctrl's view of the world - we use the same name 94 /* set of pin numbers for single-pin groups, zero-indexed */ [all …]
|
/linux-6.12.1/arch/arm64/boot/dts/qcom/ |
D | msm8939.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved. 4 * Copyright (c) 2020-2023, Linaro Limited 7 #include <dt-bindings/clock/qcom,gcc-msm8939.h> 8 #include <dt-bindings/clock/qcom,rpmcc.h> 9 #include <dt-bindings/interconnect/qcom,msm8939.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/power/qcom-rpmpd.h> 12 #include <dt-bindings/reset/qcom,gcc-msm8939.h> 13 #include <dt-bindings/soc/qcom,apr.h> [all …]
|
D | msm8916.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved. 6 #include <dt-bindings/arm/coresight-cti-dt.h> 7 #include <dt-bindings/clock/qcom,gcc-msm8916.h> 8 #include <dt-bindings/clock/qcom,rpmcc.h> 9 #include <dt-bindings/interconnect/qcom,msm8916.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/power/qcom-rpmpd.h> 12 #include <dt-bindings/reset/qcom,gcc-msm8916.h> 13 #include <dt-bindings/soc/qcom,apr.h> [all …]
|
/linux-6.12.1/drivers/pinctrl/ |
D | pinctrl-rockchip.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 * With some ideas taken from pinctrl-samsung: 14 * and pinctrl-at91: 15 * Copyright (C) 2011-2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> 30 #include <linux/pinctrl/pinconf-generic.h> 32 #include <linux/clk.h> 37 #include <dt-bindings/pinctrl/rockchip.h> 41 #include "pinctrl-rockchip.h" 67 { .offset = -1 }, \ 68 { .offset = -1 }, \ [all …]
|