Home
last modified time | relevance | path

Searched refs:spdif (Results 1 – 25 of 198) sorted by relevance

12345678

/Linux-v5.4/sound/soc/img/
Dimg-spdif-in.c92 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
127 img_spdif_in_writel(spdif, spdif->aclkgen_regs[index], in img_spdif_in_aclkgen_writel()
[all …]
Dimg-spdif-out.c54 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()
89 static inline u32 img_spdif_out_readl(struct img_spdif_out *spdif, u32 reg) in img_spdif_out_readl() argument
[all …]
/Linux-v5.4/sound/soc/samsung/
Dspdif.c99 static void spdif_snd_txctrl(struct samsung_spdif_info *spdif, int on) in spdif_snd_txctrl() argument
101 void __iomem *regs = spdif->regs; in spdif_snd_txctrl()
104 dev_dbg(spdif->dev, "Entered %s\n", __func__); in spdif_snd_txctrl()
116 struct samsung_spdif_info *spdif = to_info(cpu_dai); in spdif_set_sysclk() local
119 dev_dbg(spdif->dev, "Entered %s\n", __func__); in spdif_set_sysclk()
121 clkcon = readl(spdif->regs + CLKCON); in spdif_set_sysclk()
128 writel(clkcon, spdif->regs + CLKCON); in spdif_set_sysclk()
130 spdif->clk_rate = freq; in spdif_set_sysclk()
139 struct samsung_spdif_info *spdif = to_info(rtd->cpu_dai); in spdif_trigger() local
142 dev_dbg(spdif->dev, "Entered %s\n", __func__); in spdif_trigger()
[all …]
/Linux-v5.4/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 …]
DMakefile3 snd-soc-adi-axi-spdif-objs := axi-spdif.o
6 obj-$(CONFIG_SND_SOC_ADI_AXI_SPDIF) += snd-soc-adi-axi-spdif.o
/Linux-v5.4/sound/soc/rockchip/
Drockchip_spdif.c67 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()
70 clk_disable_unprepare(spdif->mclk); in rk_spdif_runtime_suspend()
71 clk_disable_unprepare(spdif->hclk); in rk_spdif_runtime_suspend()
78 struct rk_spdif_dev *spdif = dev_get_drvdata(dev); in rk_spdif_runtime_resume() local
81 ret = clk_prepare_enable(spdif->mclk); in rk_spdif_runtime_resume()
83 dev_err(spdif->dev, "mclk clock enable failed %d\n", ret); in rk_spdif_runtime_resume()
87 ret = clk_prepare_enable(spdif->hclk); in rk_spdif_runtime_resume()
89 dev_err(spdif->dev, "hclk clock enable failed %d\n", ret); in rk_spdif_runtime_resume()
93 regcache_cache_only(spdif->regmap, false); in rk_spdif_runtime_resume()
[all …]
/Linux-v5.4/sound/soc/tegra/
Dtegra20_spdif.c29 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()
107 static void tegra20_spdif_start_playback(struct tegra20_spdif *spdif) in tegra20_spdif_start_playback() argument
109 regmap_update_bits(spdif->regmap, TEGRA20_SPDIF_CTRL, in tegra20_spdif_start_playback()
114 static void tegra20_spdif_stop_playback(struct tegra20_spdif *spdif) in tegra20_spdif_stop_playback() argument
[all …]
/Linux-v5.4/Documentation/devicetree/bindings/sound/
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;
Drockchip-spdif.txt10 - "rockchip,rk3066-spdif"
11 - "rockchip,rk3188-spdif"
12 - "rockchip,rk3228-spdif"
13 - "rockchip,rk3288-spdif"
14 - "rockchip,rk3328-spdif"
15 - "rockchip,rk3366-spdif"
16 - "rockchip,rk3368-spdif"
17 - "rockchip,rk3399-spdif"
36 spdif: spdif@1011e000 {
37 compatible = "rockchip,rk3188-spdif", "rockchip,rk3066-spdif";
Dspdif-receiver.txt1 Device-Tree bindings for dummy spdif receiver
4 - compatible: should be "linux,spdif-dir".
8 codec: spdif-receiver {
9 compatible = "linux,spdif-dir";
Dspdif-transmitter.txt1 Device-Tree bindings for dummy spdif transmitter
4 - compatible: should be "linux,spdif-dit".
8 codec: spdif-transmitter {
9 compatible = "linux,spdif-dit";
Dxlnx,spdif.txt6 - 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>;
Dfsl,spdif.txt9 - compatible : Compatible list, must contain "fsl,imx35-spdif".
13 - interrupts : Contains the spdif interrupt.
23 "core" The core clock of spdif controller.
26 list connecting to the spdif clock mux in "SPDIF
44 spdif: spdif@2004000 {
45 compatible = "fsl,imx35-spdif";
Dimg,spdif-in.txt5 - 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";
Dimg,spdif-out.txt5 - compatible : Compatible list, must contain "img,spdif-out"
22 - resets: Contains a phandle to the spdif out reset signal
32 spdif_out: spdif-out@18100d00 {
33 compatible = "img,spdif-out";
Dadi,axi-spdif-tx.txt4 - compatible : Must be "adi,axi-spdif-tx-1.00.a"
23 spdif: spdif@77400000 {
24 compatible = "adi,axi-spdif-tx-1.00.a";
Damlogic,axg-spdifin.txt7 - interrupts: interrupt specifier for the spdif input.
11 * "refclk" : spdif input reference clock
15 - resets: phandle to the dedicated reset line of the spdif input.
Drenesas,fsi.txt13 - fsia,spdif-connection : FSI is connected by S/PDIF
17 - fsib,spdif-connection : same as fsia
28 fsia,spdif-connection;
/Linux-v5.4/sound/soc/spear/
DMakefile4 snd-soc-spear-spdif-in-objs := spdif_in.o
5 snd-soc-spear-spdif-out-objs := spdif_out.o
8 obj-$(CONFIG_SND_SPEAR_SPDIF_IN) += snd-soc-spear-spdif-in.o
9 obj-$(CONFIG_SND_SPEAR_SPDIF_OUT) += snd-soc-spear-spdif-out.o
/Linux-v5.4/sound/pci/ice1712/
Ddelta.c199 snd_cs8403_decode_spdif_bits(&ucontrol->value.iec958, ice->spdif.cs8403_bits); in delta_spdif_default_get()
209 change = ice->spdif.cs8403_bits != val; in delta_spdif_default_put()
210 ice->spdif.cs8403_bits = val; in delta_spdif_default_put()
222 snd_cs8403_decode_spdif_bits(&ucontrol->value.iec958, ice->spdif.cs8403_stream_bits); in delta_spdif_stream_get()
232 change = ice->spdif.cs8403_stream_bits != val; in delta_spdif_stream_put()
233 ice->spdif.cs8403_stream_bits = val; in delta_spdif_stream_put()
376 ice->spdif.cs8403_stream_bits = ice->spdif.cs8403_bits; in delta_open_spdif()
387 tmp = ice->spdif.cs8403_stream_bits; in delta_setup_spdif()
396 change = ice->spdif.cs8403_stream_bits != tmp; in delta_setup_spdif()
397 ice->spdif.cs8403_stream_bits = tmp; in delta_setup_spdif()
[all …]
Dews.c254 snd_cs8404_decode_spdif_bits(&ucontrol->value.iec958, ice->spdif.cs8403_bits); in ews88_spdif_default_get()
264 change = ice->spdif.cs8403_bits != val; in ews88_spdif_default_put()
265 ice->spdif.cs8403_bits = val; in ews88_spdif_default_put()
277 snd_cs8404_decode_spdif_bits(&ucontrol->value.iec958, ice->spdif.cs8403_stream_bits); in ews88_spdif_stream_get()
287 change = ice->spdif.cs8403_stream_bits != val; in ews88_spdif_stream_put()
288 ice->spdif.cs8403_stream_bits = val; in ews88_spdif_stream_put()
302 ice->spdif.cs8403_stream_bits = ice->spdif.cs8403_bits; in ews88_open_spdif()
313 tmp = ice->spdif.cs8403_stream_bits; in ews88_setup_spdif()
322 change = ice->spdif.cs8403_stream_bits != tmp; in ews88_setup_spdif()
323 ice->spdif.cs8403_stream_bits = tmp; in ews88_setup_spdif()
[all …]
/Linux-v5.4/arch/arm/boot/dts/
Duniphier-pxs2-vodka.dts41 spdif-out {
42 compatible = "linux,spdif-dit";
52 comp-spdif-out {
53 compatible = "linux,spdif-dit";
Dimx6qdl-wandboard.dtsi29 sound-spdif {
30 compatible = "fsl,imx-audio-spdif";
31 model = "imx-spdif";
32 spdif-controller = <&spdif>;
33 spdif-out;
300 &spdif {
/Linux-v5.4/drivers/staging/vc04_services/bcm2835-audio/
Dbcm2835-pcm.c86 struct snd_pcm_substream *substream, int spdif) in snd_bcm2835_playback_open_generic() argument
97 if (spdif && chip->opened) { in snd_bcm2835_playback_open_generic()
100 } else if (!spdif && (chip->opened & (1 << idx))) { in snd_bcm2835_playback_open_generic()
130 if (spdif) { in snd_bcm2835_playback_open_generic()
343 u32 numchannels, bool spdif) in snd_bcm2835_new_pcm() argument
355 if (!spdif) { in snd_bcm2835_new_pcm()
362 spdif ? &snd_bcm2835_playback_spdif_ops : in snd_bcm2835_new_pcm()
368 if (spdif) in snd_bcm2835_new_pcm()
/Linux-v5.4/sound/pci/hda/
Dhda_codec.c2205 struct hda_spdif_out *spdif; in snd_hda_spdif_default_get() local
2210 spdif = snd_array_elem(&codec->spdif_out, idx); in snd_hda_spdif_default_get()
2211 ucontrol->value.iec958.status[0] = spdif->status & 0xff; in snd_hda_spdif_default_get()
2212 ucontrol->value.iec958.status[1] = (spdif->status >> 8) & 0xff; in snd_hda_spdif_default_get()
2213 ucontrol->value.iec958.status[2] = (spdif->status >> 16) & 0xff; in snd_hda_spdif_default_get()
2214 ucontrol->value.iec958.status[3] = (spdif->status >> 24) & 0xff; in snd_hda_spdif_default_get()
2311 struct hda_spdif_out *spdif; in snd_hda_spdif_default_put() local
2319 spdif = snd_array_elem(&codec->spdif_out, idx); in snd_hda_spdif_default_put()
2320 nid = spdif->nid; in snd_hda_spdif_default_put()
2321 spdif->status = ucontrol->value.iec958.status[0] | in snd_hda_spdif_default_put()
[all …]

12345678