Home
last modified time | relevance | path

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

12345678910

/linux-6.12.1/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-6.12.1/sound/soc/samsung/
Dspdif.c105 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()
145 struct samsung_spdif_info *spdif = to_info(snd_soc_rtd_to_cpu(rtd, 0)); in spdif_trigger() local
148 dev_dbg(spdif->dev, "Entered %s\n", __func__); in spdif_trigger()
[all …]
DMakefile5 snd-soc-samsung-spdif-y := spdif.o
10 obj-$(CONFIG_SND_SAMSUNG_SPDIF) += snd-soc-samsung-spdif.o
18 snd-soc-smdk-spdif-y := smdk_spdif.o
33 obj-$(CONFIG_SND_SOC_SAMSUNG_SMDK_SPDIF) += snd-soc-smdk-spdif.o
/linux-6.12.1/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-y := axi-spdif.o
6 obj-$(CONFIG_SND_SOC_ADI_AXI_SPDIF) += snd-soc-adi-axi-spdif.o
/linux-6.12.1/sound/soc/tegra/
Dtegra20_spdif.c30 struct tegra20_spdif *spdif = dev_get_drvdata(dev); in tegra20_spdif_runtime_suspend() local
32 regcache_cache_only(spdif->regmap, true); in tegra20_spdif_runtime_suspend()
34 clk_disable_unprepare(spdif->clk_spdif_out); in tegra20_spdif_runtime_suspend()
41 struct tegra20_spdif *spdif = dev_get_drvdata(dev); in tegra20_spdif_runtime_resume() local
44 ret = reset_control_assert(spdif->reset); in tegra20_spdif_runtime_resume()
48 ret = clk_prepare_enable(spdif->clk_spdif_out); in tegra20_spdif_runtime_resume()
56 ret = reset_control_deassert(spdif->reset); in tegra20_spdif_runtime_resume()
60 regcache_cache_only(spdif->regmap, false); in tegra20_spdif_runtime_resume()
61 regcache_mark_dirty(spdif->regmap); in tegra20_spdif_runtime_resume()
63 ret = regcache_sync(spdif->regmap); in tegra20_spdif_runtime_resume()
[all …]
/linux-6.12.1/sound/soc/rockchip/
Drockchip_spdif.c68 struct rk_spdif_dev *spdif = dev_get_drvdata(dev); in rk_spdif_runtime_suspend() local
70 regcache_cache_only(spdif->regmap, true); in rk_spdif_runtime_suspend()
71 clk_disable_unprepare(spdif->mclk); in rk_spdif_runtime_suspend()
72 clk_disable_unprepare(spdif->hclk); in rk_spdif_runtime_suspend()
79 struct rk_spdif_dev *spdif = dev_get_drvdata(dev); in rk_spdif_runtime_resume() local
82 ret = clk_prepare_enable(spdif->mclk); in rk_spdif_runtime_resume()
84 dev_err(spdif->dev, "mclk clock enable failed %d\n", ret); in rk_spdif_runtime_resume()
88 ret = clk_prepare_enable(spdif->hclk); in rk_spdif_runtime_resume()
90 clk_disable_unprepare(spdif->mclk); in rk_spdif_runtime_resume()
91 dev_err(spdif->dev, "hclk clock enable failed %d\n", ret); in rk_spdif_runtime_resume()
[all …]
/linux-6.12.1/Documentation/devicetree/bindings/sound/
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>;
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";
/linux-6.12.1/sound/soc/spear/
DMakefile4 snd-soc-spear-spdif-in-y := spdif_in.o
5 snd-soc-spear-spdif-out-y := 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-6.12.1/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-6.12.1/sound/soc/meson/
Daiu-encoder-spdif.c144 ret = clk_set_rate(aiu->spdif.clks[MCLK].clk, mrate); in aiu_encoder_spdif_hw_params()
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()
200 clk_bulk_disable_unprepare(aiu->spdif.clk_num, aiu->spdif.clks); in aiu_encoder_spdif_shutdown()
/linux-6.12.1/arch/arm64/boot/dts/allwinner/
Dsun50i-h6-tanix.dtsi61 sound-spdif {
63 simple-audio-card,name = "sun50i-h6-spdif";
66 sound-dai = <&spdif>;
74 spdif_out: spdif-out {
76 compatible = "linux,spdif-dit";
168 &spdif {
/linux-6.12.1/drivers/staging/vc04_services/bcm2835-audio/
Dbcm2835-pcm.c85 static int snd_bcm2835_playback_open_generic(struct snd_pcm_substream *substream, int spdif) in snd_bcm2835_playback_open_generic() argument
96 if (spdif && chip->opened) { in snd_bcm2835_playback_open_generic()
99 } else if (!spdif && (chip->opened & (1 << idx))) { in snd_bcm2835_playback_open_generic()
129 if (spdif) { in snd_bcm2835_playback_open_generic()
325 u32 numchannels, bool spdif) in snd_bcm2835_new_pcm() argument
337 if (!spdif) { in snd_bcm2835_new_pcm()
344 spdif ? &snd_bcm2835_playback_spdif_ops : in snd_bcm2835_new_pcm()
350 if (spdif) in snd_bcm2835_new_pcm()
/linux-6.12.1/arch/arm/boot/dts/socionext/
Duniphier-pxs2-vodka.dts42 spdif-out {
43 compatible = "linux,spdif-dit";
53 comp-spdif-out {
54 compatible = "linux,spdif-dit";
/linux-6.12.1/sound/pci/hda/
Dhda_codec.c2217 struct hda_spdif_out *spdif; in snd_hda_spdif_default_get() local
2222 spdif = snd_array_elem(&codec->spdif_out, idx); in snd_hda_spdif_default_get()
2223 ucontrol->value.iec958.status[0] = spdif->status & 0xff; in snd_hda_spdif_default_get()
2224 ucontrol->value.iec958.status[1] = (spdif->status >> 8) & 0xff; in snd_hda_spdif_default_get()
2225 ucontrol->value.iec958.status[2] = (spdif->status >> 16) & 0xff; in snd_hda_spdif_default_get()
2226 ucontrol->value.iec958.status[3] = (spdif->status >> 24) & 0xff; in snd_hda_spdif_default_get()
2323 struct hda_spdif_out *spdif; in snd_hda_spdif_default_put() local
2331 spdif = snd_array_elem(&codec->spdif_out, idx); in snd_hda_spdif_default_put()
2332 nid = spdif->nid; in snd_hda_spdif_default_put()
2333 spdif->status = ucontrol->value.iec958.status[0] | in snd_hda_spdif_default_put()
[all …]
/linux-6.12.1/arch/arm/boot/dts/allwinner/
Dsun5i-gr8.dtsi66 spdif: spdif@1c21000 { label
68 compatible = "allwinner,sun4i-a10-spdif";
72 clock-names = "apb", "spdif";
116 spdif_tx_pin: spdif-tx-pin {
118 function = "spdif";
/linux-6.12.1/arch/arm/boot/dts/nxp/imx/
Dimx6qdl-wandboard.dtsi29 spdif_out: spdif-out {
30 compatible = "linux,spdif-dit";
34 sound-spdif {
35 compatible = "fsl,imx-audio-spdif";
36 model = "imx-spdif";
37 audio-cpu = <&spdif>;
336 &spdif {
Dimx6q-prti6q.dts114 spdif_out: spdif-out {
115 compatible = "linux,spdif-dit";
119 spdif_in: spdif-in {
120 compatible = "linux,spdif-dir";
124 sound-spdif {
125 compatible = "fsl,imx-audio-spdif";
126 model = "imx-spdif";
127 audio-cpu = <&spdif>;
333 &spdif {
/linux-6.12.1/Documentation/devicetree/bindings/display/rockchip/
Dcdn-dp-rockchip.txt12 Required elements: "core-clk" "pclk" "spdif" "grf"
16 Required elements: "apb", "core", "dptx", "spdif"
43 clock-names = "core-clk", "pclk", "spdif", "grf";
49 reset-names = "spdif";
/linux-6.12.1/arch/arm64/boot/dts/socionext/
Duniphier-ld20-akebi96.dts73 spdif-out {
74 compatible = "linux,spdif-dit";
84 comp-spdif-out {
85 compatible = "linux,spdif-dit";

12345678910