/linux-6.12.1/sound/soc/img/ |
D | img-spdif-in.c | 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 127 img_spdif_in_writel(spdif, spdif->aclkgen_regs[index], in img_spdif_in_aclkgen_writel() [all …]
|
D | img-spdif-out.c | 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() 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/ |
D | spdif.c | 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() 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 …]
|
D | Makefile | 5 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/ |
D | axi-spdif.c | 51 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 …]
|
D | Makefile | 3 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/ |
D | tegra20_spdif.c | 30 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/ |
D | rockchip_spdif.c | 68 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/ |
D | xlnx,spdif.txt | 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>;
|
D | img,spdif-in.txt | 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";
|
D | img,spdif-out.txt | 5 - 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";
|
D | adi,axi-spdif-tx.txt | 4 - 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/ |
D | Makefile | 4 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/ |
D | delta.c | 199 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 …]
|
D | ews.c | 254 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/ |
D | aiu-encoder-spdif.c | 144 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/ |
D | sun50i-h6-tanix.dtsi | 61 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/ |
D | bcm2835-pcm.c | 85 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/ |
D | uniphier-pxs2-vodka.dts | 42 spdif-out { 43 compatible = "linux,spdif-dit"; 53 comp-spdif-out { 54 compatible = "linux,spdif-dit";
|
/linux-6.12.1/sound/pci/hda/ |
D | hda_codec.c | 2217 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/ |
D | sun5i-gr8.dtsi | 66 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/ |
D | imx6qdl-wandboard.dtsi | 29 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 {
|
D | imx6q-prti6q.dts | 114 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/ |
D | cdn-dp-rockchip.txt | 12 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/ |
D | uniphier-ld20-akebi96.dts | 73 spdif-out { 74 compatible = "linux,spdif-dit"; 84 comp-spdif-out { 85 compatible = "linux,spdif-dit";
|