Home
last modified time | relevance | path

Searched full:spdif (Results 1 – 25 of 467) sorted by relevance

12345678910>>...19

/Linux-v5.10/sound/soc/img/
Dimg-spdif-in.c3 * IMG SPDIF input controller driver
92 struct img_spdif_in *spdif = dev_get_drvdata(dev); in img_spdif_in_runtime_suspend() local
94 clk_disable_unprepare(spdif->clk_sys); in img_spdif_in_runtime_suspend()
101 struct img_spdif_in *spdif = dev_get_drvdata(dev); in img_spdif_in_runtime_resume() local
104 ret = clk_prepare_enable(spdif->clk_sys); in img_spdif_in_runtime_resume()
113 static inline void img_spdif_in_writel(struct img_spdif_in *spdif, in img_spdif_in_writel() argument
116 writel(val, spdif->base + reg); in img_spdif_in_writel()
119 static inline u32 img_spdif_in_readl(struct img_spdif_in *spdif, u32 reg) in img_spdif_in_readl() argument
121 return readl(spdif->base + reg); in img_spdif_in_readl()
124 static inline void img_spdif_in_aclkgen_writel(struct img_spdif_in *spdif, in img_spdif_in_aclkgen_writel() argument
[all …]
Dimg-spdif-out.c3 * IMG SPDIF output controller driver
54 struct img_spdif_out *spdif = dev_get_drvdata(dev); in img_spdif_out_runtime_suspend() local
56 clk_disable_unprepare(spdif->clk_ref); in img_spdif_out_runtime_suspend()
57 clk_disable_unprepare(spdif->clk_sys); in img_spdif_out_runtime_suspend()
64 struct img_spdif_out *spdif = dev_get_drvdata(dev); in img_spdif_out_runtime_resume() local
67 ret = clk_prepare_enable(spdif->clk_sys); in img_spdif_out_runtime_resume()
73 ret = clk_prepare_enable(spdif->clk_ref); in img_spdif_out_runtime_resume()
76 clk_disable_unprepare(spdif->clk_sys); in img_spdif_out_runtime_resume()
83 static inline void img_spdif_out_writel(struct img_spdif_out *spdif, u32 val, in img_spdif_out_writel() argument
86 writel(val, spdif->base + reg); in img_spdif_out_writel()
[all …]
DKconfig32 tristate "Imagination SPDIF Input Device Driver"
36 Say Y or M if you want to add support for SPDIF input driver for
37 Imagination Technologies SPDIF input device.
40 tristate "Imagination SPDIF Output Device Driver"
44 Say Y or M if you want to add support for SPDIF out driver for
45 Imagination Technologies SPDIF out device.
/Linux-v5.10/sound/soc/samsung/
Dspdif.c18 #include "spdif.h"
71 * @pclk: The peri-clock pointer for spdif master operation.
105 static void spdif_snd_txctrl(struct samsung_spdif_info *spdif, int on) in spdif_snd_txctrl() argument
107 void __iomem *regs = spdif->regs; in spdif_snd_txctrl()
110 dev_dbg(spdif->dev, "Entered %s\n", __func__); in spdif_snd_txctrl()
122 struct samsung_spdif_info *spdif = to_info(cpu_dai); in spdif_set_sysclk() local
125 dev_dbg(spdif->dev, "Entered %s\n", __func__); in spdif_set_sysclk()
127 clkcon = readl(spdif->regs + CLKCON); in spdif_set_sysclk()
134 writel(clkcon, spdif->regs + CLKCON); in spdif_set_sysclk()
136 spdif->clk_rate = freq; in spdif_set_sysclk()
[all …]
/Linux-v5.10/sound/soc/adi/
Daxi-spdif.c51 struct axi_spdif *spdif = snd_soc_dai_get_drvdata(dai); in axi_spdif_trigger() local
69 regmap_update_bits(spdif->regmap, AXI_SPDIF_REG_CTRL, in axi_spdif_trigger()
78 struct axi_spdif *spdif = snd_soc_dai_get_drvdata(dai); in axi_spdif_hw_params() local
97 clkdiv = DIV_ROUND_CLOSEST(clk_get_rate(spdif->clk_ref), in axi_spdif_hw_params()
101 regmap_write(spdif->regmap, AXI_SPDIF_REG_STAT, stat); in axi_spdif_hw_params()
102 regmap_update_bits(spdif->regmap, AXI_SPDIF_REG_CTRL, in axi_spdif_hw_params()
110 struct axi_spdif *spdif = snd_soc_dai_get_drvdata(dai); in axi_spdif_dai_probe() local
112 snd_soc_dai_init_dma_data(dai, &spdif->dma_data, NULL); in axi_spdif_dai_probe()
120 struct axi_spdif *spdif = snd_soc_dai_get_drvdata(dai); in axi_spdif_startup() local
125 &spdif->rate_constraints); in axi_spdif_startup()
[all …]
/Linux-v5.10/sound/soc/rockchip/
Drockchip_spdif.c45 { .compatible = "rockchip,rk3066-spdif",
47 { .compatible = "rockchip,rk3188-spdif",
49 { .compatible = "rockchip,rk3228-spdif",
51 { .compatible = "rockchip,rk3288-spdif",
53 { .compatible = "rockchip,rk3328-spdif",
55 { .compatible = "rockchip,rk3366-spdif",
57 { .compatible = "rockchip,rk3368-spdif",
59 { .compatible = "rockchip,rk3399-spdif",
67 struct rk_spdif_dev *spdif = dev_get_drvdata(dev); in rk_spdif_runtime_suspend() local
69 regcache_cache_only(spdif->regmap, true); in rk_spdif_runtime_suspend()
[all …]
/Linux-v5.10/Documentation/devicetree/bindings/sound/
Drockchip-spdif.yaml4 $id: http://devicetree.org/schemas/sound/rockchip-spdif.yaml#
7 title: Rockchip SPDIF transceiver
20 - const: rockchip,rk3066-spdif
21 - const: rockchip,rk3228-spdif
22 - const: rockchip,rk3328-spdif
23 - const: rockchip,rk3366-spdif
24 - const: rockchip,rk3368-spdif
25 - const: rockchip,rk3399-spdif
28 - rockchip,rk3188-spdif
29 - rockchip,rk3288-spdif
[all …]
Dallwinner,sun4i-a10-spdif.yaml4 $id: http://devicetree.org/schemas/sound/allwinner,sun4i-a10-spdif.yaml#
21 - const: allwinner,sun4i-a10-spdif
22 - const: allwinner,sun6i-a31-spdif
23 - const: allwinner,sun8i-h3-spdif
24 - const: allwinner,sun50i-h6-spdif
26 - const: allwinner,sun8i-a83t-spdif
27 - const: allwinner,sun8i-h3-spdif
29 - const: allwinner,sun50i-a64-spdif
30 - const: allwinner,sun8i-h3-spdif
46 - const: spdif
[all …]
Dimx-audio-spdif.txt5 - compatible : "fsl,imx-audio-spdif"
9 - spdif-controller : The phandle of the i.MX S/PDIF controller
14 - spdif-out : This is a boolean property. If present, the
21 - spdif-in : This is a boolean property. If present, the receiving
30 sound-spdif {
31 compatible = "fsl,imx-audio-spdif";
32 model = "imx-spdif";
33 spdif-controller = <&spdif>;
34 spdif-out;
35 spdif-in;
Dxlnx,spdif.txt1 Device-Tree bindings for Xilinx SPDIF IP
3 The IP supports playback and capture of SPDIF audio
6 - compatible: "xlnx,spdif-2.0"
13 - xlnx,spdif-mode: 0 :- receiver mode
18 spdif_0: spdif@80010000 {
21 compatible = "xlnx,spdif-2.0";
26 xlnx,spdif-mode = <1>;
Dimg,spdif-in.txt1 Imagination Technologies SPDIF Input Controller
5 - compatible : Compatible list, must contain "img,spdif-in"
23 - resets: Should contain a phandle to the spdif in reset signal, if any
28 - interrupts : Contains the spdif in interrupt, if present
32 spdif_in: spdif-in@18100e00 {
33 compatible = "img,spdif-in";
Dfsl,spdif.yaml4 $id: http://devicetree.org/schemas/sound/fsl,spdif.yaml#
20 - fsl,imx35-spdif
21 - fsl,vf610-spdif
22 - fsl,imx6sx-spdif
42 - description: The core clock of spdif controller.
51 - description: The spba clock is required when SPDIF is placed as a bus
92 spdif@2004000 {
93 compatible = "fsl,imx35-spdif";
Dadi,axi-spdif-tx.txt1 ADI AXI-SPDIF controller
4 - compatible : Must be "adi,axi-spdif-tx-1.00.a"
5 - reg : Must contain SPDIF core's registers location and length
23 spdif: spdif@77400000 {
24 compatible = "adi,axi-spdif-tx-1.00.a";
Damlogic,aiu.yaml35 - description: SPDIF peripheral clock
36 - description: SPDIF output clock
37 - description: SPDIF master clock
38 - description: SPDIF master clock multiplexer
55 - description: SPDIF interrupt line
60 - const: spdif
93 interrupt-names = "i2s", "spdif";
Dzte,zx-spdif.txt1 ZTE ZX296702 SPDIF controller
4 - compatible : Must be "zte,zx296702-spdif"
5 - reg : Must contain SPDIF core's registers location and length
7 - clock-names: "tx" for the clock to the SPDIF interface.
20 compatible = "zte,zx296702-spdif";
/Linux-v5.10/sound/soc/tegra/
Dtegra20_spdif.c3 * tegra20_spdif.c - Tegra20 SPDIF driver
25 #define DRV_NAME "tegra20-spdif"
29 struct tegra20_spdif *spdif = dev_get_drvdata(dev); in tegra20_spdif_runtime_suspend() local
31 clk_disable_unprepare(spdif->clk_spdif_out); in tegra20_spdif_runtime_suspend()
38 struct tegra20_spdif *spdif = dev_get_drvdata(dev); in tegra20_spdif_runtime_resume() local
41 ret = clk_prepare_enable(spdif->clk_spdif_out); in tegra20_spdif_runtime_resume()
55 struct tegra20_spdif *spdif = snd_soc_dai_get_drvdata(dai); in tegra20_spdif_hw_params() local
70 regmap_update_bits(spdif->regmap, TEGRA20_SPDIF_CTRL, mask, val); in tegra20_spdif_hw_params()
98 ret = clk_set_rate(spdif->clk_spdif_out, spdifclock); in tegra20_spdif_hw_params()
100 dev_err(dev, "Can't set SPDIF clock rate: %d\n", ret); in tegra20_spdif_hw_params()
[all …]
/Linux-v5.10/sound/pci/ca0106/
Dca0106.h75 #define IPR_SPDIF_IN_USER 0x00004000 /* SPDIF input user data has 16 more bits */
76 #define IPR_SPDIF_OUT_USER 0x00002000 /* SPDIF output user data needs 16 more bits */
77 #define IPR_SPDIF_OUT_FRAME 0x00001000 /* SPDIF frame about to start */
84 #define IPR_SPDIF_STATUS 0x00000020 /* SPDIF status changed */
95 #define INTE_SPDIF_IN_USER 0x00004000 /* SPDIF input user data has 16 more bits */
96 #define INTE_SPDIF_OUT_USER 0x00002000 /* SPDIF output user data needs 16 more bits */
97 #define INTE_SPDIF_OUT_FRAME 0x00001000 /* SPDIF frame about to start */
104 #define INTE_SPDIF_STATUS 0x00000020 /* SPDIF status changed */
117 #define HCFG_CAPTURE_SPDIF_BYPASS 0x04000000 /* 1 = bypass SPDIF input async SRC. */
136 #define GPIO 0x18 /* Defaults: 005f03a3-Analog, 005f02a2-SPDIF. */
[all …]
/Linux-v5.10/Documentation/sound/cards/
Dimg-spdif-in.rst2 Imagination Technologies SPDIF Input Controllers
5 The Imagination Technologies SPDIF Input controller contains the following
15 This control returns the status bits contained within the SPDIF stream that
19 * name='SPDIF In Multi Frequency Acquire',index=0
20 * name='SPDIF In Multi Frequency Acquire',index=1
21 * name='SPDIF In Multi Frequency Acquire',index=2
22 * name='SPDIF In Multi Frequency Acquire',index=3
25 rates. The active rate can be obtained by reading the 'SPDIF In Lock Frequency'
36 * name='SPDIF In Lock Frequency',index=0
41 * name='SPDIF In Lock TRK',index=0
[all …]
Dcmipci.rst113 The CM8x38 provides the excellent SPDIF capability with very cheap
116 The SPDIF playback and capture are done via the third PCM device
117 (hw:0,2). Usually this is assigned to the PCM device "spdif".
132 The playback and capture over SPDIF use normal DAC and ADC,
136 To enable SPDIF output, you need to turn on "IEC958 Output Switch"
140 The SPDIF input is always enabled, so you can hear SPDIF input data
144 You can play via SPDIF even with the first device (hw:0,0),
145 but SPDIF is enabled only when the proper format (S16LE), sample rate
154 output through SPDIF. This switch appears only on old chip
157 Note: without this control you can output PCM to SPDIF.
[all …]
/Linux-v5.10/sound/soc/meson/
Dg12a-tohdmitx.c83 "SPDIF A", "SPDIF B",
123 SOC_DAPM_ENUM_EXT("SPDIF Source", g12a_tohdmitx_spdif_mux_enum,
136 SND_SOC_DAPM_MUX("SPDIF SRC", SND_SOC_NOPM, 0, 0,
138 SND_SOC_DAPM_SWITCH("SPDIF OUT EN", SND_SOC_NOPM, 0, 0,
195 TOHDMITX_IN("SPDIF IN A", TOHDMITX_SPDIF_IN_A,
197 TOHDMITX_IN("SPDIF IN B", TOHDMITX_SPDIF_IN_B,
199 TOHDMITX_OUT("SPDIF OUT", TOHDMITX_SPDIF_OUT,
216 { "SPDIF SRC", "SPDIF A", "SPDIF IN A Playback" },
217 { "SPDIF SRC", "SPDIF B", "SPDIF IN B Playback" },
218 { "SPDIF OUT EN", "Switch", "SPDIF SRC" },
[all …]
Daiu.c22 "SPDIF", "I2S",
30 SOC_DAPM_ENUM("SPDIF Buffer Src", aiu_spdif_encode_sel_enum);
33 SND_SOC_DAPM_MUX("SPDIF SRC SEL", SND_SOC_NOPM, 0, 0,
39 { "SPDIF SRC SEL", "SPDIF", "SPDIF FIFO Playback" },
40 { "SPDIF SRC SEL", "I2S", "I2S FIFO Playback" },
41 { "SPDIF Encoder Playback", NULL, "SPDIF SRC SEL" },
85 /* Required for the SPDIF Source control operation */ in aiu_cpu_component_probe()
126 .name = "SPDIF FIFO",
128 .stream_name = "SPDIF FIFO Playback",
153 .name = "SPDIF Encoder",
[all …]
Daiu-encoder-spdif.c144 ret = clk_set_rate(aiu->spdif.clks[MCLK].clk, mrate); in aiu_encoder_spdif_hw_params()
172 * NOTE: Make sure the spdif block is on its own divider. in aiu_encoder_spdif_startup()
174 * The spdif can be clocked by the i2s master clock or its own in aiu_encoder_spdif_startup()
181 * should not be necessary to reparent the spdif master clock. in aiu_encoder_spdif_startup()
183 ret = clk_set_parent(aiu->spdif.clks[MCLK].clk, in aiu_encoder_spdif_startup()
188 ret = clk_bulk_prepare_enable(aiu->spdif.clk_num, aiu->spdif.clks); in aiu_encoder_spdif_startup()
190 dev_err(dai->dev, "failed to enable spdif clocks\n"); in aiu_encoder_spdif_startup()
200 clk_bulk_disable_unprepare(aiu->spdif.clk_num, aiu->spdif.clks); in aiu_encoder_spdif_shutdown()
/Linux-v5.10/sound/soc/codecs/
Dspdif_receiver.c3 * ALSA SoC SPDIF DIR (Digital Interface Reciever) driver
5 * Based on ALSA SoC SPDIF DIT driver
9 * in these configurations. SPEAr SPDIF IN Audio controller uses this driver.
24 SND_SOC_DAPM_INPUT("spdif-in"),
28 { "Capture", NULL, "spdif-in" },
69 { .compatible = "linux,spdif-dir", },
78 .name = "spdif-dir",
85 MODULE_DESCRIPTION("ASoC SPDIF DIR driver");
/Linux-v5.10/sound/pci/emu10k1/
Dp16v.h49 * SPDIF out.
50 * Find out how to change capture sample rates. E.g. To record SPDIF at 48000Hz.
70 /* The sample rate of the SPDIF outputs is set by modifying a register in the EMU10K2 PTR register …
174 * 0 - SPDIF channel.
179 * 5 - SPDIF channel.
200 * [2] 0 = 10K2 audio, 1 = SRCMulti SPDIF mixer output.
214 #define PLAYBACK_VOLUME_MIXER3 0x63 /* SRCMULTI SPDIF Low to mixer input volume control. */
215 #define PLAYBACK_VOLUME_MIXER4 0x64 /* SRCMULTI SPDIF High to mixer input volume control. */
218 #define PLAYBACK_VOLUME_MIXER7 0x67 /* P16V Low to SRCMULTI SPDIF mixer input volume control. */
219 #define PLAYBACK_VOLUME_MIXER8 0x68 /* P16V High to SRCMULTI SPDIF mixer input volume control. */
[all …]
/Linux-v5.10/sound/soc/fsl/
Dimx-spdif.c21 spdif_np = of_parse_phandle(np, "spdif-controller", 0); in imx_spdif_audio_probe()
23 dev_err(&pdev->dev, "failed to find spdif-controller\n"); in imx_spdif_audio_probe()
52 if (of_property_read_bool(np, "spdif-out")) in imx_spdif_audio_probe()
55 if (of_property_read_bool(np, "spdif-in")) in imx_spdif_audio_probe()
83 { .compatible = "fsl,imx-audio-spdif", },
90 .name = "imx-spdif",
102 MODULE_ALIAS("platform:imx-spdif");

12345678910>>...19