| /linux/sound/soc/hisilicon/ |
| A D | hi6210-i2s.c | 247 i2s->format = fmt; in hi6210_i2s_set_fmt() 248 i2s->master = (i2s->format & SND_SOC_DAIFMT_MASTER_MASK) == in hi6210_i2s_set_fmt() 315 i2s->bits = 32; in hi6210_i2s_hw_params() 319 i2s->bits = 16; in hi6210_i2s_hw_params() 325 i2s->channel_length = i2s->channels * i2s->bits; in hi6210_i2s_hw_params() 455 if (!i2s->master) in hi6210_i2s_hw_params() 552 i2s = devm_kzalloc(dev, sizeof(*i2s), GFP_KERNEL); in hi6210_i2s_probe() 553 if (!i2s) in hi6210_i2s_probe() 556 i2s->dev = dev; in hi6210_i2s_probe() 576 i2s->clocks++; in hi6210_i2s_probe() [all …]
|
| /linux/sound/soc/img/ |
| A D | img-i2s-out.c | 182 img_i2s_out_enable(i2s); in img_i2s_out_reset() 204 img_i2s_out_reset(i2s); in img_i2s_out_trigger() 435 i2s = devm_kzalloc(&pdev->dev, sizeof(*i2s), GFP_KERNEL); in img_i2s_out_probe() 436 if (!i2s) in img_i2s_out_probe() 441 i2s->dev = &pdev->dev; in img_i2s_out_probe() 447 i2s->base = base; in img_i2s_out_probe() 460 if (IS_ERR(i2s->rst)) { in img_i2s_out_probe() 481 i2s->max_i2s_chan, sizeof(*i2s->suspend_ch_ctl), GFP_KERNEL); in img_i2s_out_probe() 518 i2s->dai_driver.playback.channels_max = i2s->max_i2s_chan * 2; in img_i2s_out_probe() 571 i2s->suspend_ctl = img_i2s_out_readl(i2s, IMG_I2S_OUT_CTL); in img_i2s_out_suspend() [all …]
|
| A D | img-i2s-in.c | 169 img_i2s_in_enable(i2s); in img_i2s_in_trigger() 205 dev_err(i2s->dev, in img_i2s_in_check_rate() 294 img_i2s_in_flush(i2s); in img_i2s_in_hw_params() 429 i2s = devm_kzalloc(dev, sizeof(*i2s), GFP_KERNEL); in img_i2s_in_probe() 430 if (!i2s) in img_i2s_in_probe() 435 i2s->dev = dev; in img_i2s_in_probe() 441 i2s->base = base; in img_i2s_in_probe() 476 i2s->dai_driver.capture.channels_max = i2s->max_i2s_chan * 2; in img_i2s_in_probe() 512 i2s->max_i2s_chan, sizeof(*i2s->suspend_ch_ctl), GFP_KERNEL); in img_i2s_in_probe() 565 i2s->suspend_ctl = img_i2s_in_readl(i2s, IMG_I2S_IN_CTL); in img_i2s_in_suspend() [all …]
|
| /linux/sound/soc/rockchip/ |
| A D | rockchip_i2s.c | 100 spin_lock(&i2s->lock); in rockchip_snd_txctrl() 109 i2s->tx_start = true; in rockchip_snd_txctrl() 116 if (!i2s->rx_start) { in rockchip_snd_txctrl() 149 spin_lock(&i2s->lock); in rockchip_snd_rxctrl() 158 i2s->rx_start = true; in rockchip_snd_rxctrl() 378 if (!IS_ERR(i2s->grf) && i2s->pins) { in rockchip_i2s_hw_params() 399 regmap_write(i2s->grf, i2s->pins->reg_offset, val); in rockchip_i2s_hw_params() 479 i2s->has_playback ? &i2s->playback_dma_data : NULL, in rockchip_i2s_dai_probe() 480 i2s->has_capture ? &i2s->capture_dma_data : NULL); in rockchip_i2s_dai_probe() 688 i2s = devm_kzalloc(&pdev->dev, sizeof(*i2s), GFP_KERNEL); in rockchip_i2s_probe() [all …]
|
| /linux/sound/soc/stm/ |
| A D | stm32_i2s.c | 296 i2s->div = div; in stm32_i2s_calc_clk_div() 297 i2s->odd = odd; in stm32_i2s_calc_clk_div() 608 i2s->fmt = fmt; in stm32_i2s_set_dai_fmt() 670 clk_set_parent(i2s->i2sclk, i2s->x11kclk); in stm32_i2s_configure_clock() 672 clk_set_parent(i2s->i2sclk, i2s->x8kclk); in stm32_i2s_configure_clock() 849 i2s->refcount++; in stm32_i2s_trigger() 855 if (STM32_I2S_IS_MASTER(i2s) && i2s->refcount == 1) in stm32_i2s_trigger() 883 i2s->refcount--; in stm32_i2s_trigger() 1126 i2s = devm_kzalloc(&pdev->dev, sizeof(*i2s), GFP_KERNEL); in stm32_i2s_probe() 1127 if (!i2s) in stm32_i2s_probe() [all …]
|
| /linux/sound/soc/adi/ |
| A D | axi-i2s.c | 143 i2s->has_playback ? &i2s->playback_dma_data : NULL, in axi_i2s_dai_probe() 144 i2s->has_capture ? &i2s->capture_dma_data : NULL); in axi_i2s_dai_probe() 189 struct axi_i2s *i2s; in axi_i2s_probe() local 193 i2s = devm_kzalloc(&pdev->dev, sizeof(*i2s), GFP_KERNEL); in axi_i2s_probe() 194 if (!i2s) in axi_i2s_probe() 207 if (IS_ERR(i2s->regmap)) in axi_i2s_probe() 211 if (IS_ERR(i2s->clk)) in axi_i2s_probe() 222 if (i2s->has_playback) { in axi_i2s_probe() 234 if (i2s->has_capture) { in axi_i2s_probe() 246 i2s->ratnum.num = clk_get_rate(i2s->clk_ref) / 2 / AXI_I2S_BITS_PER_FRAME; in axi_i2s_probe() [all …]
|
| /linux/sound/soc/sunxi/ |
| A D | sun4i-i2s.c | 373 bclk_parent_rate = i2s->variant->get_bclk_parent_rate(i2s); in sun4i_i2s_set_clk_rate() 381 mclk_div = sun4i_i2s_get_mclk_div(i2s, clk_rate, i2s->mclk_freq); in sun4i_i2s_set_clk_rate() 587 if (i2s->slots) in sun4i_i2s_hw_params() 588 slots = i2s->slots; in sun4i_i2s_hw_params() 590 if (i2s->slot_width) in sun4i_i2s_hw_params() 593 ret = i2s->variant->set_chan_cfg(i2s, channels, slots, slot_width); in sun4i_i2s_hw_params() 928 ret = i2s->variant->set_fmt(i2s, fmt); in sun4i_i2s_set_fmt() 934 i2s->format = fmt; in sun4i_i2s_set_fmt() 1060 i2s->slots = slots; in sun4i_i2s_set_tdm_slot() 1468 i2s = devm_kzalloc(&pdev->dev, sizeof(*i2s), GFP_KERNEL); in sun4i_i2s_probe() [all …]
|
| /linux/sound/soc/tegra/ |
| A D | tegra30_i2s.c | 62 regcache_mark_dirty(i2s->regmap); in tegra30_i2s_runtime_resume() 200 i2s->soc_data->set_audio_cif(i2s->regmap, reg, &cif_conf); in tegra30_i2s_hw_params() 408 struct tegra30_i2s *i2s; in tegra30_i2s_platform_probe() local 415 if (!i2s) { in tegra30_i2s_platform_probe() 427 i2s->soc_data = soc_data; in tegra30_i2s_platform_probe() 442 if (IS_ERR(i2s->clk_i2s)) { in tegra30_i2s_platform_probe() 456 if (IS_ERR(i2s->regmap)) { in tegra30_i2s_platform_probe() 458 ret = PTR_ERR(i2s->regmap); in tegra30_i2s_platform_probe() 500 &i2s->dai, 1); in tegra30_i2s_platform_probe() 508 &i2s->dma_config, i2s->playback_dma_chan, in tegra30_i2s_platform_probe() [all …]
|
| A D | tegra210_i2s.c | 191 regcache_sync(i2s->regmap); in tegra210_i2s_runtime_resume() 326 i2s->loopback = value; in tegra210_i2s_put_loopback() 355 i2s->fsync_width = value; in tegra210_i2s_put_fsync_width() 497 i2s->rx_fifo_th = value; in tegra210_i2s_pput_fifo_th() 523 i2s->bclk_ratio = value; in tegra210_i2s_put_bclk_ratio() 533 i2s->bclk_ratio = ratio; in tegra210_i2s_set_dai_bclk_ratio() 547 if (i2s->bclk_ratio) in tegra210_i2s_set_timing_params() 580 i2s->tx_mask, i2s->rx_mask); in tegra210_i2s_set_timing_params() 883 i2s = devm_kzalloc(dev, sizeof(*i2s), GFP_KERNEL); in tegra210_i2s_probe() 884 if (!i2s) in tegra210_i2s_probe() [all …]
|
| A D | tegra20_i2s.c | 70 regcache_mark_dirty(i2s->regmap); in tegra20_i2s_runtime_resume() 72 ret = regcache_sync(i2s->regmap); in tegra20_i2s_runtime_resume() 352 struct tegra20_i2s *i2s; in tegra20_i2s_platform_probe() local 358 if (!i2s) { in tegra20_i2s_platform_probe() 368 if (IS_ERR(i2s->reset)) { in tegra20_i2s_platform_probe() 370 return PTR_ERR(i2s->reset); in tegra20_i2s_platform_probe() 374 if (IS_ERR(i2s->clk_i2s)) { in tegra20_i2s_platform_probe() 376 ret = PTR_ERR(i2s->clk_i2s); in tegra20_i2s_platform_probe() 388 if (IS_ERR(i2s->regmap)) { in tegra20_i2s_platform_probe() 390 ret = PTR_ERR(i2s->regmap); in tegra20_i2s_platform_probe() [all …]
|
| /linux/sound/soc/xtensa/ |
| A D | xtfpga-i2s.c | 137 for (; i2s->tx_fifo_level < i2s->tx_fifo_high; \ 166 unsigned new_tx_ptr = i2s->tx_fn(i2s, tx_substream->runtime, in xtfpga_pcm_push_tx() 201 i2s->tx_fifo_level = i2s->tx_fifo_low; in xtfpga_pcm_refill_fifo() 248 i2s->tx_fifo_level = i2s->tx_fifo_low; in xtfpga_i2s_threaded_irq_handler() 322 i2s->tx_fifo_high = 2 * i2s->tx_fifo_low; in xtfpga_i2s_hw_params() 328 dev_dbg(i2s->dev, in xtfpga_i2s_hw_params() 534 i2s = devm_kzalloc(&pdev->dev, sizeof(*i2s), GFP_KERNEL); in xtfpga_i2s_probe() 535 if (!i2s) { in xtfpga_i2s_probe() 549 i2s->regmap = devm_regmap_init_mmio(&pdev->dev, i2s->regs, in xtfpga_i2s_probe() 577 pdev->name, i2s); in xtfpga_i2s_probe() [all …]
|
| /linux/sound/soc/jz4740/ |
| A D | jz4740-i2s.c | 113 return readl(i2s->base + reg); in jz4740_i2s_read() 119 writel(value, i2s->base + reg); in jz4740_i2s_write() 401 &i2s->capture_dma_data); in jz4740_i2s_dai_probe() 518 struct jz4740_i2s *i2s; in jz4740_i2s_dev_probe() local 522 i2s = devm_kzalloc(dev, sizeof(*i2s), GFP_KERNEL); in jz4740_i2s_dev_probe() 523 if (!i2s) in jz4740_i2s_dev_probe() 529 if (IS_ERR(i2s->base)) in jz4740_i2s_dev_probe() 530 return PTR_ERR(i2s->base); in jz4740_i2s_dev_probe() 532 i2s->phys_base = mem->start; in jz4740_i2s_dev_probe() 535 if (IS_ERR(i2s->clk_aic)) in jz4740_i2s_dev_probe() [all …]
|
| /linux/sound/soc/samsung/ |
| A D | i2s.c | 141 if (!i2s) in tx_active() 157 return i2s->pri_dai ? : i2s->sec_dai; in get_other_dai() 171 return tx_active(i2s) || other_tx_active(i2s); in any_tx_active() 179 if (!i2s) in rx_active() 198 return rx_active(i2s) || other_rx_active(i2s); in any_rx_active() 210 return tx_active(i2s) || rx_active(i2s); in this_active() 216 return this_active(i2s) || other_active(i2s); in any_active() 228 if (i2s && (i2s->mode & DAI_OPENED)) in is_opened() 236 if (is_opened(i2s) && (i2s->mode & DAI_MANAGER)) in is_manager() 478 if (!i2s) in i2s_fifo() [all …]
|
| A D | s3c-i2s-v2.c | 74 void __iomem *regs = i2s->regs; in s3c2412_snd_txctrl() 257 i2s->master = 0; in s3c2412_i2s_set_fmt() 261 i2s->master = 1; in s3c2412_i2s_set_fmt() 404 if (!i2s->master) { in s3c2412_i2s_trigger() 549 return i2s->iis_cclk; in s3c_i2sv2_get_clock() 551 return i2s->iis_pclk; in s3c_i2sv2_get_clock() 626 i2s->dev = dev; in s3c_i2sv2_probe() 644 s3c2412_snd_txctrl(i2s, 0); in s3c_i2sv2_probe() 645 s3c2412_snd_rxctrl(i2s, 0); in s3c_i2sv2_probe() 655 clk_put(i2s->iis_pclk); in s3c_i2sv2_cleanup() [all …]
|
| A D | s3c2412-i2s.c | 95 iismod = readl(i2s->regs + S3C2412_IISMOD); in s3c2412_i2s_hw_params() 107 writel(iismod, i2s->regs + S3C2412_IISMOD); in s3c2412_i2s_hw_params() 120 i2s->suspend_iismod = readl(i2s->regs + S3C2412_IISMOD); in s3c2412_i2s_suspend() 121 i2s->suspend_iiscon = readl(i2s->regs + S3C2412_IISCON); in s3c2412_i2s_suspend() 122 i2s->suspend_iispsr = readl(i2s->regs + S3C2412_IISPSR); in s3c2412_i2s_suspend() 146 component->active, i2s->suspend_iismod, i2s->suspend_iiscon); in s3c2412_i2s_resume() 149 writel(i2s->suspend_iiscon, i2s->regs + S3C2412_IISCON); in s3c2412_i2s_resume() 150 writel(i2s->suspend_iismod, i2s->regs + S3C2412_IISMOD); in s3c2412_i2s_resume() 151 writel(i2s->suspend_iispsr, i2s->regs + S3C2412_IISPSR); in s3c2412_i2s_resume() 154 i2s->regs + S3C2412_IISFIC); in s3c2412_i2s_resume() [all …]
|
| A D | Makefile | 5 snd-soc-s3c24xx-i2s-objs := s3c24xx-i2s.o 6 snd-soc-s3c2412-i2s-objs := s3c2412-i2s.o 7 snd-soc-s3c-i2s-v2-objs := s3c-i2s-v2.o 10 snd-soc-i2s-objs := i2s.o 13 obj-$(CONFIG_SND_S3C24XX_I2S) += snd-soc-s3c24xx-i2s.o 14 obj-$(CONFIG_SND_S3C2412_SOC_I2S) += snd-soc-s3c2412-i2s.o 15 obj-$(CONFIG_SND_S3C_I2SV2_SOC) += snd-soc-s3c-i2s-v2.o 18 obj-$(CONFIG_SND_SAMSUNG_I2S) += snd-soc-i2s.o
|
| /linux/Documentation/devicetree/bindings/sound/ |
| A D | allwinner,sun4i-a10-i2s.yaml | 19 - const: allwinner,sun4i-a10-i2s 20 - const: allwinner,sun6i-a31-i2s 21 - const: allwinner,sun8i-a83t-i2s 22 - const: allwinner,sun8i-h3-i2s 25 - const: allwinner,sun8i-h3-i2s 27 - const: allwinner,sun8i-v3-i2s 33 - const: allwinner,sun50i-h6-i2s 65 - allwinner,sun6i-a31-i2s 67 - allwinner,sun8i-h3-i2s 81 - allwinner,sun8i-h3-i2s [all …]
|
| A D | rockchip-i2s.yaml | 19 - const: rockchip,rk3066-i2s 22 - rockchip,px30-i2s 23 - rockchip,rk1808-i2s 24 - rockchip,rk3036-i2s 25 - rockchip,rk3128-i2s 26 - rockchip,rk3188-i2s 27 - rockchip,rk3228-i2s 28 - rockchip,rk3288-i2s 29 - rockchip,rk3308-i2s 114 i2s@ff890000 { [all …]
|
| A D | hisilicon,hi6210-i2s.txt | 1 * Hisilicon 6210 i2s controller 6 - "hisilicon,hi6210-i2s" 7 - reg: physical base address of the i2s controller unit and length of 9 - interrupts: should contain the i2s interrupt. 14 - "i2s-base" 25 Example for the hi6210 i2s controller: 27 i2s0: i2s@f7118000{ 28 compatible = "hisilicon,hi6210-i2s"; 29 reg = <0x0 0xf7118000 0x0 0x8000>; /* i2s unit */ 33 clock-names = "dacodec", "i2s-base"; [all …]
|
| A D | ingenic,aic.yaml | 19 - ingenic,jz4740-i2s 20 - ingenic,jz4760-i2s 21 - ingenic,jz4770-i2s 22 - ingenic,jz4780-i2s 24 - const: ingenic,jz4725b-i2s 25 - const: ingenic,jz4740-i2s 46 - const: i2s 76 compatible = "ingenic,jz4740-i2s"; 88 clock-names = "aic", "i2s", "ext", "pll half";
|
| A D | nvidia,tegra30-i2s.txt | 4 - compatible : For Tegra30, must contain "nvidia,tegra30-i2s". For Tegra124, 5 must contain "nvidia,tegra124-i2s". Otherwise, must contain 6 "nvidia,<chip>-i2s" plus at least one of the above, where <chip> is 14 - i2s 20 i2s@70080300 { 21 compatible = "nvidia,tegra30-i2s"; 26 reset-names = "i2s";
|
| A D | nvidia,tegra210-i2s.yaml | 4 $id: http://devicetree.org/schemas/sound/nvidia,tegra210-i2s.yaml# 24 pattern: "^i2s@[0-9a-f]*$" 28 - const: nvidia,tegra210-i2s 31 - nvidia,tegra194-i2s 32 - nvidia,tegra186-i2s 33 - const: nvidia,tegra210-i2s 54 - const: i2s 103 i2s@702d1000 { 104 compatible = "nvidia,tegra210-i2s"; 107 clock-names = "i2s";
|
| A D | rockchip-max98090.txt | 6 - rockchip,i2s-controller: The phandle of the Rockchip I2S controller that's 21 rockchip,i2s-controller = <&i2s>; 30 rockchip,i2s-controller = <&i2s>; 38 rockchip,i2s-controller = <&i2s>;
|
| A D | samsung-i2s.yaml | 4 $id: http://devicetree.org/schemas/sound/samsung-i2s.yaml# 16 samsung,s3c6410-i2s: for 8/16/24bit stereo I2S. 18 samsung,s5pv210-i2s: for 8/16/24bit multichannel (5.1) I2S with 22 samsung,exynos5420-i2s: for 8/16/24bit multichannel (5.1) I2S for 29 samsung,exynos7-i2s: with all the available features of Exynos5 I2S. 38 - samsung,s3c6410-i2s 39 - samsung,s5pv210-i2s 40 - samsung,exynos5420-i2s 41 - samsung,exynos7-i2s 139 i2s0: i2s@3830000 { [all …]
|
| A D | rockchip,i2s-tdm.yaml | 4 $id: http://devicetree.org/schemas/sound/rockchip,i2s-tdm.yaml# 20 - rockchip,px30-i2s-tdm 21 - rockchip,rk1808-i2s-tdm 22 - rockchip,rk3308-i2s-tdm 23 - rockchip,rk3568-i2s-tdm 24 - rockchip,rv1126-i2s-tdm 101 rockchip,i2s-rx-route: 111 rockchip,i2s-tx-route: 116 rockchip,i2s-tx-route = <3> would mean sdo3 is sending to data0. 153 i2s@fe410000 { [all …]
|