Home
last modified time | relevance | path

Searched +full:dai +full:- +full:tdm +full:- +full:slot +full:- +full:width +full:- +full:map (Results 1 – 17 of 17) sorted by relevance

/linux/Documentation/devicetree/bindings/sound/
H A Daudio-graph-port.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/sound/audio-graph-port.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
15 port-base:
17 - $ref: /schemas/graph.yaml#/$defs/port-base
18 - $ref: /schemas/sound/dai-params.yaml#
20 mclk-fs:
21 $ref: simple-card.yaml#/definitions/mclk-fs
[all …]
/linux/arch/arm64/boot/dts/amlogic/
H A Dmeson-khadas-vim3.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
8 #include <dt-bindings/input/input.h>
9 #include <dt-bindings/leds/common.h>
10 #include <dt-bindings/gpio/meson-g12a-gpio.h>
11 #include <dt-bindings/sound/meson-g12a-tohdmitx.h>
22 stdout-path = "serial0:115200n8";
30 adc-keys {
31 compatible = "adc-keys";
32 io-channels = <&saradc 2>;
33 io-channel-names = "buttons";
[all …]
H A Dmeson-g12b-odroid-n2.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
7 #include "meson-g12b-odroid.dtsi"
14 dio2133: audio-amplifier-0 {
15 compatible = "simple-audio-amplifier";
16 enable-gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
17 VCC-supply = <&vcc_5v>;
18 sound-name-prefix = "U19";
22 hub_5v: regulator-hub-5v {
23 compatible = "regulator-fixed";
24 regulator-name = "HUB_5V";
[all …]
H A Dmeson-g12a-x96-max.dts1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
6 /dts-v1/;
8 #include "meson-g12a.dtsi"
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/gpio/meson-g12a-gpio.h>
11 #include <dt-bindings/sound/meson-g12a-tohdmitx.h>
14 compatible = "amediatech,x96-max", "amlogic,g12a";
22 spdif_dit: audio-codec-1 {
23 #sound-dai-cells = <0>;
24 compatible = "linux,spdif-dit";
[all …]
/linux/sound/soc/
H A Dsoc-dai.c1 // SPDX-License-Identifier: GPL-2.0
3 // soc-dai.c
10 #include <sound/soc-dai.h>
11 #include <sound/soc-link.h>
13 #define soc_dai_ret(dai, ret) _soc_dai_ret(dai, __func_ argument
14 _soc_dai_ret(const struct snd_soc_dai * dai,const char * func,int ret) _soc_dai_ret() argument
25 soc_dai_mark_push(dai,substream,tgt) global() argument
26 soc_dai_mark_pop(dai,tgt) global() argument
27 soc_dai_mark_match(dai,substream,tgt) global() argument
38 snd_soc_dai_set_sysclk(struct snd_soc_dai * dai,int clk_id,unsigned int freq,int dir) snd_soc_dai_set_sysclk() argument
64 snd_soc_dai_set_clkdiv(struct snd_soc_dai * dai,int div_id,int div) snd_soc_dai_set_clkdiv() argument
87 snd_soc_dai_set_pll(struct snd_soc_dai * dai,int pll_id,int source,unsigned int freq_in,unsigned int freq_out) snd_soc_dai_set_pll() argument
111 snd_soc_dai_set_bclk_ratio(struct snd_soc_dai * dai,unsigned int ratio) snd_soc_dai_set_bclk_ratio() argument
125 struct snd_soc_dai *dai; snd_soc_dai_get_fmt_max_priority() local
155 snd_soc_dai_get_fmt(const struct snd_soc_dai * dai,int priority) snd_soc_dai_get_fmt() argument
193 snd_soc_dai_set_fmt(struct snd_soc_dai * dai,unsigned int fmt) snd_soc_dai_set_fmt() argument
251 snd_soc_dai_set_tdm_slot(struct snd_soc_dai * dai,unsigned int tx_mask,unsigned int rx_mask,int slots,int slot_width) snd_soc_dai_set_tdm_slot() argument
296 snd_soc_dai_set_channel_map(struct snd_soc_dai * dai,unsigned int tx_num,const unsigned int * tx_slot,unsigned int rx_num,const unsigned int * rx_slot) snd_soc_dai_set_channel_map() argument
320 snd_soc_dai_get_channel_map(const struct snd_soc_dai * dai,unsigned int * tx_num,unsigned int * tx_slot,unsigned int * rx_num,unsigned int * rx_slot) snd_soc_dai_get_channel_map() argument
341 snd_soc_dai_set_tristate(struct snd_soc_dai * dai,int tristate) snd_soc_dai_set_tristate() argument
353 snd_soc_dai_prepare(struct snd_soc_dai * dai,struct snd_pcm_substream * substream) snd_soc_dai_prepare() argument
369 snd_soc_dai_mute_is_ctrled_at_trigger(struct snd_soc_dai * dai) snd_soc_dai_mute_is_ctrled_at_trigger() argument
385 snd_soc_dai_digital_mute(struct snd_soc_dai * dai,int mute,int direction) snd_soc_dai_digital_mute() argument
404 snd_soc_dai_hw_params(struct snd_soc_dai * dai,struct snd_pcm_substream * substream,struct snd_pcm_hw_params * params) snd_soc_dai_hw_params() argument
421 snd_soc_dai_hw_free(struct snd_soc_dai * dai,struct snd_pcm_substream * substream,int rollback) snd_soc_dai_hw_free() argument
436 snd_soc_dai_startup(struct snd_soc_dai * dai,struct snd_pcm_substream * substream) snd_soc_dai_startup() argument
455 snd_soc_dai_shutdown(struct snd_soc_dai * dai,struct snd_pcm_substream * substream,int rollback) snd_soc_dai_shutdown() argument
473 snd_soc_dai_compress_new(struct snd_soc_dai * dai,struct snd_soc_pcm_runtime * rtd) snd_soc_dai_compress_new() argument
488 snd_soc_dai_stream_valid(const struct snd_soc_dai * dai,int dir) snd_soc_dai_stream_valid() argument
496 snd_soc_dai_action(struct snd_soc_dai * dai,int stream,int action) snd_soc_dai_action() argument
507 snd_soc_dai_active(const struct snd_soc_dai * dai) snd_soc_dai_active() argument
521 struct snd_soc_dai *dai; snd_soc_pcm_dai_probe() local
547 struct snd_soc_dai *dai; snd_soc_pcm_dai_remove() local
572 struct snd_soc_dai *dai; snd_soc_pcm_dai_new() local
590 struct snd_soc_dai *dai; snd_soc_pcm_dai_prepare() local
602 soc_dai_trigger(struct snd_soc_dai * dai,struct snd_pcm_substream * substream,int cmd) soc_dai_trigger() argument
621 struct snd_soc_dai *dai; snd_soc_pcm_dai_trigger() local
664 struct snd_soc_dai *dai; snd_soc_pcm_dai_delay() local
687 snd_soc_dai_compr_startup(struct snd_soc_dai * dai,struct snd_compr_stream * cstream) snd_soc_dai_compr_startup() argument
704 snd_soc_dai_compr_shutdown(struct snd_soc_dai * dai,struct snd_compr_stream * cstream,int rollback) snd_soc_dai_compr_shutdown() argument
720 snd_soc_dai_compr_trigger(struct snd_soc_dai * dai,struct snd_compr_stream * cstream,int cmd) snd_soc_dai_compr_trigger() argument
733 snd_soc_dai_compr_set_params(struct snd_soc_dai * dai,struct snd_compr_stream * cstream,struct snd_compr_params * params) snd_soc_dai_compr_set_params() argument
747 snd_soc_dai_compr_get_params(struct snd_soc_dai * dai,struct snd_compr_stream * cstream,struct snd_codec * params) snd_soc_dai_compr_get_params() argument
761 snd_soc_dai_compr_ack(struct snd_soc_dai * dai,struct snd_compr_stream * cstream,size_t bytes) snd_soc_dai_compr_ack() argument
775 snd_soc_dai_compr_pointer(struct snd_soc_dai * dai,struct snd_compr_stream * cstream,struct snd_compr_tstamp * tstamp) snd_soc_dai_compr_pointer() argument
789 snd_soc_dai_compr_set_metadata(struct snd_soc_dai * dai,struct snd_compr_stream * cstream,struct snd_compr_metadata * metadata) snd_soc_dai_compr_set_metadata() argument
803 snd_soc_dai_compr_get_metadata(struct snd_soc_dai * dai,struct snd_compr_stream * cstream,struct snd_compr_metadata * metadata) snd_soc_dai_compr_get_metadata() argument
[all...]
H A Dsoc-core.c1 // SPDX-License-Identifier: GPL-2.0+
3 // soc-core.c -- ALSA SoC Audio Layer
11 // with code, comments and ideas from :-
18 // o Support TDM on PCM and I2S
40 #include <sound/soc-dpcm.h>
41 #include <sound/soc-topology.h>
42 #include <sound/soc-link.h>
76 return sysfs_emit(buf, "%ld\n", rtd->pmdown_time); in pmdown_time_show()
86 ret = kstrtol(buf, 10, &rtd->pmdown_time); in pmdown_time_store()
110 return attr->mode; /* always visible */ in soc_dev_attr_is_visible()
[all …]
/linux/arch/arm/boot/dts/st/
H A Dstm32mp157c-phycore-stm32mp15-som.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
3 * Copyright (C) 2022-2023 Steffen Trumtrar <kernel@pengutronix.de>
4 * Copyright (C) Phytec GmbH 2019-2020 - All Rights Reserved
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/input/input.h>
10 #include <dt-bindings/interrupt-controller/arm-gic.h>
11 #include <dt-bindings/interrupt-controller/irq.h>
12 #include <dt-bindings/leds/common.h>
13 #include <dt-bindings/leds/leds-pca9532.h>
14 #include <dt-bindings/mfd/st,stpmic1.h>
[all …]
/linux/sound/soc/codecs/
H A Dadau7118.c1 // SPDX-License-Identifier: GPL-2.0
3 // Analog Devices ADAU7118 8 channel PDM-to-I2S/TDM Converter driver
36 struct regmap *map; member
123 static int adau7118_set_channel_map(struct snd_soc_dai *dai, in adau7118_set_channel_map() argument
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()
147 static int adau7118_set_fmt(struct snd_soc_dai *dai, unsigned int fmt) in adau7118_set_fmt() argument
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()
[all …]
H A Dab8500-codec.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) ST-Ericsson SA 2012
8 * for ST-Ericsson.
14 * for ST-Ericsson.
29 #include <linux/mfd/abx500/ab8500-sysctrl.h>
30 #include <linux/mfd/abx500/ab8500-codec.h>
39 #include <sound/soc-dapm.h>
42 #include "ab8500-codec.h"
56 /* Nr of FIR/IIR-coeff banks in ANC-block */
114 /* Private data for AB8500 device-driver */
[all …]
H A Dtlv320aic3x.c1 // SPDX-License-Identifier: GPL-2.0-only
16 * ------
1040 aic3x_hw_params(struct snd_pcm_substream * substream,struct snd_pcm_hw_params * params,struct snd_soc_dai * dai) aic3x_hw_params() argument
1048 int width = aic3x->slot_width; aic3x_hw_params() local
1192 aic3x_prepare(struct snd_pcm_substream * substream,struct snd_soc_dai * dai) aic3x_prepare() argument
1197 int width = aic3x->slot_width; aic3x_prepare() local
1214 aic3x_mute(struct snd_soc_dai * dai,int mute,int direction) aic3x_mute() argument
[all...]
/linux/sound/soc/generic/
H A Dsimple-card-utils.c1 // SPDX-License-Identifier: GPL-2.0
3 // simple-card-utils.c
7 #include <dt-bindings/sound/audio-graph.h>
28 int val = -EINVAL; in simple_util_get_sample_fmt()
42 if (!strcmp(data->convert_sample_format, in simple_util_get_sample_fmt()
79 snprintf(prop, sizeof(prop), "%s%s", prefix, "convert-rate"); in simple_util_parse_convert()
80 of_property_read_u32(np, prop, &data->convert_rate); in simple_util_parse_convert()
83 snprintf(prop, sizeof(prop), "%s%s", prefix, "convert-channels"); in simple_util_parse_convert()
84 of_property_read_u32(np, prop, &data->convert_channels); in simple_util_parse_convert()
87 snprintf(prop, sizeof(prop), "%s%s", prefix, "convert-sample-format"); in simple_util_parse_convert()
[all …]
/linux/sound/soc/meson/
H A Daxg-tdmout.c1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
10 #include <sound/soc-dai.h>
12 #include "axg-tdm-formatter.h"
62 if (!p->connect) in axg_tdmout_get_be()
65 if (p->sink->id == snd_soc_dapm_dai_in) in axg_tdmout_get_be()
66 return (struct snd_soc_dai *)p->sink->priv; in axg_tdmout_get_be()
68 be = axg_tdmout_get_be(p->sink); in axg_tdmout_get_be()
87 static void axg_tdmout_enable(struct regmap *map) in axg_tdmout_enable() argument
90 regmap_update_bits(map, TDMOUT_CTRL0, in axg_tdmout_enable()
94 regmap_update_bits(map, TDMOUT_CTRL0, in axg_tdmout_enable()
[all …]
H A Daxg-tdmin.c1 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
10 #include <sound/soc-dai.h>
12 #include "axg-tdm-formatter.h"
64 if (!p->connect) in axg_tdmin_get_be()
67 if (p->source->id == snd_soc_dapm_dai_out) in axg_tdmin_get_be()
68 return (struct snd_soc_dai *)p->source->priv; in axg_tdmin_get_be()
70 be = axg_tdmin_get_be(p->source); in axg_tdmin_get_be()
89 static void axg_tdmin_enable(struct regmap *map) in axg_tdmin_enable() argument
92 regmap_update_bits(map, TDMIN_CTRL, in axg_tdmin_enable()
96 regmap_update_bits(map, TDMIN_CTRL, in axg_tdmin_enable()
[all …]
/linux/sound/soc/atmel/
H A Dmchp-i2s-mcc.c1 // SPDX-License-Identifier: GPL-2.0
3 // Driver for Microchip I2S Multi-channel controller
29 * ---- I2S Controller Register map ----
75 * ---- Control Register (Write-only) ----
86 * ---- Mode Register A (Read/Write) ----
135 /* Number of TDM Channels - 1 */
138 ((((ch) - 1) << 13) & MCHP_I2SMCC_MRA_NBCHAN_MASK)
145 /* TDM Frame Synchronization */
163 /* Slot Width */
164 /* 0: slot is 32 bits wide for DATALENGTH = 18/20/24 bits. */
[all …]
/linux/sound/soc/stm/
H A Dstm32_sai_sub.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2016, STMicroelectronics - All Rights Reserved
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)->spdi
[all...]
/linux/sound/soc/fsl/
H A Dfsl_ssi.c1 // SPDX-License-Identifier: GPL-2.0
3 // Freescale SSI ALSA SoC Digital Audio Interface (DAI) driver
7 // Copyright 2007-2010 Freescale Semiconductor, Inc.
9 // Some notes why imx-pcm-fiq is used instead of DMA on some boards:
12 // sane processor vendors have a FIFO per AC97 slot, the i.MX has only
15 // was developed with always sends GPIO status data in slot 12 which
16 // we receive in our (PCM-) data stream. The only chance we have is to
43 #include <linux/dma/imx-dma.h>
53 #include "imx-pcm.h"
55 /* Define RX and TX to index ssi->regvals array; Can be 0 or 1 only */
[all …]
H A Dfsl-asoc-card.c1 // SPDX-License-Identifier: GPL-2.0
23 #include "imx-audmux.h"
33 #define DRIVER_NAME "fsl-asoc-card"
40 /* Default DAI format without Master and Slave flag */
44 * struct codec_priv - CODEC private data
62 * struct cpu_priv - CPU private data
67 * @slot_width: Slot width of each frame
82 * struct fsl_asoc_card_priv - Freescale Generic ASOC card private data
83 * @dai_link: DAI link structure including normal one and DPCM link
93 * @asrc_rate: ASRC sample rate used by Back-Ends
[all …]