| /linux/sound/soc/renesas/ |
| H A D | rz-ssi.c | 101 int (*transfer)(struct rz_ssi_priv *ssi, struct rz_ssi_stream *strm); 181 rz_ssi_stream_get(struct rz_ssi_priv *ssi, struct snd_pcm_substream *substream) in rz_ssi_stream_get() argument 183 return (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) ? &ssi->playback : &ssi->capture; in rz_ssi_stream_get() 186 static inline bool rz_ssi_is_dma_enabled(struct rz_ssi_priv *ssi) in rz_ssi_is_dma_enabled() argument 188 return (ssi->playback.dma_ch && (ssi->dma_rt || ssi->capture.dma_ch)); in rz_ssi_is_dma_enabled() 194 struct rz_ssi_priv *ssi = strm->priv; in rz_ssi_set_substream() local 196 guard(spinlock_irqsave)(&ssi->lock); in rz_ssi_set_substream() 201 static bool rz_ssi_stream_is_valid(struct rz_ssi_priv *ssi, in rz_ssi_stream_is_valid() argument 204 guard(spinlock_irqsave)(&ssi->lock); in rz_ssi_stream_is_valid() 231 static void rz_ssi_stream_quit(struct rz_ssi_priv *ssi, in rz_ssi_stream_quit() argument [all …]
|
| H A D | ssi.c | 62 #define SSIREG(reg) (*(unsigned long *)(ssi->mmio + (reg))) 92 struct ssi_priv *ssi = &ssi_cpu_data[dai->id]; in ssi_startup() local 93 if (ssi->inuse) { in ssi_startup() 97 ssi->inuse = 1; in ssi_startup() 104 struct ssi_priv *ssi = &ssi_cpu_data[dai->id]; in ssi_shutdown() local 106 ssi->inuse = 0; in ssi_shutdown() 112 struct ssi_priv *ssi = &ssi_cpu_data[dai->id]; in ssi_trigger() local 132 struct ssi_priv *ssi = &ssi_cpu_data[dai->id]; in ssi_hw_params() local 211 struct ssi_priv *ssi = &ssi_cpu_data[cpu_dai->id]; in ssi_set_sysclk() local 213 ssi->sysclk = freq; in ssi_set_sysclk() [all …]
|
| H A D | Makefile | 8 snd-soc-ssi-y := ssi.o 12 obj-$(CONFIG_SND_SOC_SH4_SSI) += snd-soc-ssi.o 27 snd-soc-rz-ssi-y := rz-ssi.o 28 obj-$(CONFIG_SND_SOC_RZ) += snd-soc-rz-ssi.o
|
| /linux/sound/soc/fsl/ |
| H A D | fsl_ssi.c | 55 /* Define RX and TX to index ssi->regvals array; Can be 0 or 1 only */ 344 { .compatible = "fsl,mpc8610-ssi", .data = &fsl_ssi_mpc8610 }, 345 { .compatible = "fsl,imx51-ssi", .data = &fsl_ssi_imx51 }, 346 { .compatible = "fsl,imx35-ssi", .data = &fsl_ssi_imx35 }, 347 { .compatible = "fsl,imx21-ssi", .data = &fsl_ssi_imx21 }, 352 static bool fsl_ssi_is_ac97(struct fsl_ssi *ssi) in fsl_ssi_is_ac97() argument 354 return (ssi->dai_fmt & SND_SOC_DAIFMT_FORMAT_MASK) == in fsl_ssi_is_ac97() 358 static bool fsl_ssi_is_i2s_clock_provider(struct fsl_ssi *ssi) in fsl_ssi_is_i2s_clock_provider() argument 360 return (ssi->dai_fmt & SND_SOC_DAIFMT_CLOCK_PROVIDER_MASK) == in fsl_ssi_is_i2s_clock_provider() 364 static bool fsl_ssi_is_i2s_bc_fp(struct fsl_ssi *ssi) in fsl_ssi_is_i2s_bc_fp() argument 377 struct fsl_ssi *ssi = dev_id; fsl_ssi_isr() local 404 fsl_ssi_config_enable(struct fsl_ssi * ssi,bool tx) fsl_ssi_config_enable() argument 507 fsl_ssi_config_disable(struct fsl_ssi * ssi,bool tx) fsl_ssi_config_disable() argument 568 fsl_ssi_tx_ac97_saccst_setup(struct fsl_ssi * ssi) fsl_ssi_tx_ac97_saccst_setup() argument 586 fsl_ssi_setup_regvals(struct fsl_ssi * ssi) fsl_ssi_setup_regvals() argument 615 fsl_ssi_setup_ac97(struct fsl_ssi * ssi) fsl_ssi_setup_ac97() argument 638 struct fsl_ssi *ssi = snd_soc_dai_get_drvdata(snd_soc_rtd_to_cpu(rtd, 0)); fsl_ssi_startup() local 662 struct fsl_ssi *ssi = snd_soc_dai_get_drvdata(snd_soc_rtd_to_cpu(rtd, 0)); fsl_ssi_shutdown() local 684 struct fsl_ssi *ssi = snd_soc_dai_get_drvdata(dai); fsl_ssi_set_bclk() local 809 struct fsl_ssi *ssi = snd_soc_dai_get_drvdata(dai); fsl_ssi_hw_params() local 894 struct fsl_ssi *ssi = snd_soc_dai_get_drvdata(snd_soc_rtd_to_cpu(rtd, 0)); fsl_ssi_hw_free() local 905 _fsl_ssi_set_dai_fmt(struct fsl_ssi * ssi,unsigned int fmt) _fsl_ssi_set_dai_fmt() argument 1040 struct fsl_ssi *ssi = snd_soc_dai_get_drvdata(dai); fsl_ssi_set_dai_fmt() local 1060 struct fsl_ssi *ssi = snd_soc_dai_get_drvdata(dai); fsl_ssi_set_dai_tdm_slot() local 1111 struct fsl_ssi *ssi = snd_soc_dai_get_drvdata(snd_soc_rtd_to_cpu(rtd, 0)); fsl_ssi_trigger() local 1145 struct fsl_ssi *ssi = snd_soc_dai_get_drvdata(dai); fsl_ssi_dai_probe() local 1289 fsl_ssi_hw_init(struct fsl_ssi * ssi) fsl_ssi_hw_init() argument 1319 fsl_ssi_hw_clean(struct fsl_ssi * ssi) fsl_ssi_hw_clean() argument 1347 fsl_ssi_imx_probe(struct platform_device * pdev,struct fsl_ssi * ssi,void __iomem * iomem) fsl_ssi_imx_probe() argument 1419 fsl_ssi_imx_clean(struct platform_device * pdev,struct fsl_ssi * ssi) fsl_ssi_imx_clean() argument 1427 fsl_ssi_probe_from_dt(struct fsl_ssi * ssi) fsl_ssi_probe_from_dt() argument 1511 struct fsl_ssi *ssi; fsl_ssi_probe() local 1677 struct fsl_ssi *ssi = dev_get_drvdata(&pdev->dev); fsl_ssi_remove() local 1698 struct fsl_ssi *ssi = dev_get_drvdata(dev); fsl_ssi_suspend() local 1712 struct fsl_ssi *ssi = dev_get_drvdata(dev); fsl_ssi_resume() local [all...] |
| /linux/drivers/hsi/clients/ |
| H A D | ssi_protocol.c | 199 static struct hsi_msg *ssip_alloc_data(struct ssi_protocol *ssi, in ssip_alloc_data() argument 209 msg->channel = ssi->channel_id_data; in ssip_alloc_data() 217 struct ssi_protocol *ssi = hsi_client_drvdata(msg->cl); in ssip_release_cmd() local 220 spin_lock_bh(&ssi->lock); in ssip_release_cmd() 221 list_add_tail(&msg->link, &ssi->cmdqueue); in ssip_release_cmd() 222 spin_unlock_bh(&ssi->lock); in ssip_release_cmd() 225 static struct hsi_msg *ssip_claim_cmd(struct ssi_protocol *ssi) in ssip_claim_cmd() argument 229 BUG_ON(list_empty(&ssi->cmdqueue)); in ssip_claim_cmd() 231 spin_lock_bh(&ssi->lock); in ssip_claim_cmd() 232 msg = list_first_entry(&ssi->cmdqueue, struct hsi_msg, link); in ssip_claim_cmd() [all …]
|
| /linux/drivers/hsi/controllers/ |
| H A D | omap_ssi_core.c | 42 struct hsi_controller *ssi = m->private; in ssi_regs_show() local 43 struct omap_ssi_controller *omap_ssi = hsi_controller_drvdata(ssi); in ssi_regs_show() 46 pm_runtime_get_sync(ssi->device.parent); in ssi_regs_show() 50 pm_runtime_put(ssi->device.parent); in ssi_regs_show() 57 struct hsi_controller *ssi = m->private; in ssi_gdd_regs_show() local 58 struct omap_ssi_controller *omap_ssi = hsi_controller_drvdata(ssi); in ssi_gdd_regs_show() 63 pm_runtime_get_sync(ssi->device.parent); in ssi_gdd_regs_show() 104 pm_runtime_put(ssi->device.parent); in ssi_gdd_regs_show() 112 static int ssi_debug_add_ctrl(struct hsi_controller *ssi) in ssi_debug_add_ctrl() argument 114 struct omap_ssi_controller *omap_ssi = hsi_controller_drvdata(ssi); in ssi_debug_add_ctrl() [all …]
|
| H A D | omap_ssi_port.c | 51 struct hsi_controller *ssi = to_hsi_controller(port->device.parent); in ssi_port_regs_show() local 52 struct omap_ssi_controller *omap_ssi = hsi_controller_drvdata(ssi); in ssi_port_regs_show() 187 struct hsi_controller *ssi = to_hsi_controller(port->device.parent); in ssi_claim_lch() local 188 struct omap_ssi_controller *omap_ssi = hsi_controller_drvdata(ssi); in ssi_claim_lch() 205 struct hsi_controller *ssi = to_hsi_controller(port->device.parent); in ssi_start_dma() local 206 struct omap_ssi_controller *omap_ssi = hsi_controller_drvdata(ssi); in ssi_start_dma() 225 err = dma_map_sg(&ssi->device, msg->sgt.sgl, msg->sgt.nents, in ssi_start_dma() 228 dev_dbg(&ssi->device, "DMA map SG failed !\n"); in ssi_start_dma() 242 err = dma_map_sg(&ssi->device, msg->sgt.sgl, msg->sgt.nents, in ssi_start_dma() 245 dev_dbg(&ssi->device, "DMA map SG failed !\n"); in ssi_start_dma() [all …]
|
| /linux/sound/soc/renesas/rcar/ |
| H A D | ssi.c | 109 ((pos) = ((struct rsnd_ssi *)(priv)->ssi + i)); \ 112 #define rsnd_ssi_get(priv, id) ((struct rsnd_ssi *)(priv->ssi) + id) 115 #define rsnd_ssi_is_parent(ssi, io) ((ssi) == rsnd_io_to_mod_ssip(io)) argument 125 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); in rsnd_ssi_use_busif() local 131 if (!(rsnd_flags_has(ssi, RSND_SSI_NO_BUSIF))) in rsnd_ssi_use_busif() 272 struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); in rsnd_ssi_master_clk_start() local 294 if (ssi->usrcnt > 0) { in rsnd_ssi_master_clk_start() 295 if (ssi->rate != rate) { in rsnd_ssi_master_clk_start() 300 if (ssi->chan != chan) { in rsnd_ssi_master_clk_start() 327 ssi->cr_clk = FORCE | rsnd_rdai_width_to_swl(rdai) | in rsnd_ssi_master_clk_start() [all …]
|
| H A D | dma.c | 319 struct rsnd_mod *ssi = rsnd_io_to_mod_ssi(io); in rsnd_dmapp_get_id() local 327 if ((mod == ssi) || in rsnd_dmapp_get_id() 551 {{{ RDMA_SSI_O_N(ssi, id), 0 }, in rsnd_gen2_dma_addr() 552 { RDMA_SSIU_O_P(ssi, id, busif), 0 }, in rsnd_gen2_dma_addr() 553 { RDMA_SSIU_O_P(ssi, id, busif), 0 } }, in rsnd_gen2_dma_addr() 555 {{ 0, RDMA_SSI_I_N(ssi, id) }, in rsnd_gen2_dma_addr() 556 { 0, RDMA_SSIU_I_P(ssi, id, busif) }, in rsnd_gen2_dma_addr() 557 { 0, RDMA_SSIU_I_P(ssi, id, busif) } } in rsnd_gen2_dma_addr() 561 {{{ RDMA_SSIU_O_N(ssi, id, busif), 0 }, in rsnd_gen2_dma_addr() 562 { RDMA_SSIU_O_P(ssi, id, busif), 0 }, in rsnd_gen2_dma_addr() [all …]
|
| /linux/Documentation/devicetree/bindings/hsi/ |
| H A D | omap-ssi.txt | 9 - compatible: Should include "ti,omap3-ssi" or "ti,omap4-hsi" 27 Each port is represented as a sub-node of the ti,omap3-ssi device. 31 ti,omap3-ssi-port (applicable to OMAP34xx devices) 38 - ti,ssi-cawake-gpio: Defines which GPIO pin is used to signify CAWAKE 49 ssi-controller@48058000 { 50 compatible = "ti,omap3-ssi"; 53 ti,hwmods = "ssi"; 74 ssi-port@4805a000 { 75 compatible = "ti,omap3-ssi-port"; 86 ti,ssi-cawake-gpio = <&gpio5 23 GPIO_ACTIVE_HIGH>; /* 151 */ [all …]
|
| /linux/arch/mips/boot/dts/ingenic/ |
| H A D | cu1000-neo.dts | 68 &ssi { 192 pins_ssi: ssi { 193 function = "ssi"; 194 groups = "ssi-dt-d", "ssi-dr-d", "ssi-clk-d", "ssi-ce0-d";
|
| /linux/arch/arm/boot/dts/renesas/ |
| H A D | r8a7778.dtsi | 258 reg-names = "sru", "ssi", "adg"; 280 clock-names = "ssi.8", "ssi.7", "ssi.6", "ssi.5", "ssi.4", 281 "ssi.3", "ssi.2", "ssi.1", "ssi.0", 298 rcar_sound,ssi { 299 ssi3: ssi-3 { interrupts = <GIC_SPI 0x85 IRQ_TYPE_LEVEL_HIGH>; }; 300 ssi4: ssi-4 { interrupts = <GIC_SPI 0x85 IRQ_TYPE_LEVEL_HIGH>; }; 301 ssi5: ssi-5 { interrupts = <GIC_SPI 0x86 IRQ_TYPE_LEVEL_HIGH>; }; 302 ssi6: ssi-6 { interrupts = <GIC_SPI 0x86 IRQ_TYPE_LEVEL_HIGH>; }; 303 ssi7: ssi-7 { interrupts = <GIC_SPI 0x86 IRQ_TYPE_LEVEL_HIGH>; }; 304 ssi8: ssi-8 { interrupts = <GIC_SPI 0x86 IRQ_TYPE_LEVEL_HIGH>; }; [all …]
|
| H A D | r8a7794.dtsi | 1033 reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 1049 clock-names = "ssi-all", 1050 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1051 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1052 "ssi.1", "ssi.0", 1066 reset-names = "ssi-all", 1067 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1068 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1069 "ssi.1", "ssi.0"; 1136 rcar_sound,ssi { [all …]
|
| H A D | r8a7793.dtsi | 1066 reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 1082 clock-names = "ssi-all", 1083 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1084 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1085 "ssi.1", "ssi.0", 1098 reset-names = "ssi-all", 1099 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1100 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1101 "ssi.1", "ssi.0"; 1169 rcar_sound,ssi { [all …]
|
| H A D | r8a7745.dtsi | 1193 reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 1209 clock-names = "ssi-all", 1210 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1211 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1212 "ssi.1", "ssi.0", 1225 reset-names = "ssi-all", 1226 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1227 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1228 "ssi.1", "ssi.0"; 1295 rcar_sound,ssi { [all …]
|
| H A D | r8a7791.dtsi | 1301 reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 1319 clock-names = "ssi-all", 1320 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1321 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1322 "ssi.1", "ssi.0", "src.9", "src.8", 1336 reset-names = "ssi-all", 1337 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1338 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1339 "ssi.1", "ssi.0"; 1423 rcar_sound,ssi { [all …]
|
| H A D | r8a7744.dtsi | 1263 reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 1281 clock-names = "ssi-all", 1282 "ssi.9", "ssi.8", "ssi.7", "ssi.6", "ssi.5", 1283 "ssi.4", "ssi.3", "ssi.2", "ssi.1", "ssi.0", 1295 reset-names = "ssi-all", 1296 "ssi.9", "ssi.8", "ssi.7", "ssi.6", "ssi.5", 1297 "ssi.4", "ssi.3", "ssi.2", "ssi.1", "ssi.0"; 1380 rcar_sound,ssi { 1381 ssi0: ssi-0 { 1386 ssi1: ssi-1 { [all …]
|
| H A D | r8a7742.dtsi | 1228 reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 1246 clock-names = "ssi-all", 1247 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1248 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1249 "ssi.1", "ssi.0", 1264 reset-names = "ssi-all", 1265 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1266 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1267 "ssi.1", "ssi.0"; 1351 rcar_sound,ssi { [all …]
|
| H A D | r8a7743.dtsi | 1263 reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 1281 clock-names = "ssi-all", 1282 "ssi.9", "ssi.8", "ssi.7", "ssi.6", "ssi.5", 1283 "ssi.4", "ssi.3", "ssi.2", "ssi.1", "ssi.0", 1295 reset-names = "ssi-all", 1296 "ssi.9", "ssi.8", "ssi.7", "ssi.6", "ssi.5", 1297 "ssi.4", "ssi.3", "ssi.2", "ssi.1", "ssi.0"; 1380 rcar_sound,ssi { 1381 ssi0: ssi-0 { 1386 ssi1: ssi-1 { [all …]
|
| H A D | r8a7790.dtsi | 1268 reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 1286 clock-names = "ssi-all", 1287 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1288 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1289 "ssi.1", "ssi.0", 1304 reset-names = "ssi-all", 1305 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1306 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1307 "ssi.1", "ssi.0"; 1391 rcar_sound,ssi { [all …]
|
| /linux/drivers/media/dvb-frontends/cxd2880/ |
| H A D | cxd2880_tnrdmd_dvbt_mon.c | 669 int rf_lvl, u8 *ssi) in dvbt_calc_ssi() argument 676 if (!tnr_dmd || !ssi) in dvbt_calc_ssi() 700 *ssi = (temp_ssi > 100) ? 100 : (u8)temp_ssi; in dvbt_calc_ssi() 706 u8 *ssi) in cxd2880_tnrdmd_dvbt_mon_ssi() argument 711 if (!tnr_dmd || !ssi) in cxd2880_tnrdmd_dvbt_mon_ssi() 727 return dvbt_calc_ssi(tnr_dmd, rf_lvl, ssi); in cxd2880_tnrdmd_dvbt_mon_ssi() 731 u8 *ssi) in cxd2880_tnrdmd_dvbt_mon_ssi_sub() argument 736 if (!tnr_dmd || !ssi) in cxd2880_tnrdmd_dvbt_mon_ssi_sub() 752 return dvbt_calc_ssi(tnr_dmd, rf_lvl, ssi); in cxd2880_tnrdmd_dvbt_mon_ssi_sub()
|
| /linux/arch/arm64/boot/dts/renesas/ |
| H A D | r8a774c0.dtsi | 1352 reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 1371 clock-names = "ssi-all", 1372 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1373 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1374 "ssi.1", "ssi.0", 1389 reset-names = "ssi-all", 1390 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1391 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1392 "ssi.1", "ssi.0"; 1475 rcar_sound,ssi { [all …]
|
| H A D | r9a07g043.dtsi | 147 ssi0: ssi@10049c00 { 148 compatible = "renesas,r9a07g043-ssi", 149 "renesas,rz-ssi"; 158 clock-names = "ssi", "ssi_sfr", "audio_clk1", "audio_clk2"; 167 ssi1: ssi@1004a000 { 168 compatible = "renesas,r9a07g043-ssi", 169 "renesas,rz-ssi"; 178 clock-names = "ssi", "ssi_sfr", "audio_clk1", "audio_clk2"; 187 ssi2: ssi@1004a400 { 188 compatible = "renesas,r9a07g043-ssi", [all …]
|
| H A D | r8a77990.dtsi | 1513 reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 1532 clock-names = "ssi-all", 1533 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1534 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1535 "ssi.1", "ssi.0", 1550 reset-names = "ssi-all", 1551 "ssi.9", "ssi.8", "ssi.7", "ssi.6", 1552 "ssi.5", "ssi.4", "ssi.3", "ssi.2", 1553 "ssi.1", "ssi.0"; 1636 rcar_sound,ssi { [all …]
|
| H A D | r9a08g045.dtsi | 421 ssi0: ssi@100a8000 { 422 compatible = "renesas,r9a08g045-ssi", 423 "renesas,rz-ssi"; 432 clock-names = "ssi", "ssi_sfr", "audio_clk1", "audio_clk2"; 441 ssi1: ssi@100a8400 { 442 compatible = "renesas,r9a08g045-ssi", 443 "renesas,rz-ssi"; 452 clock-names = "ssi", "ssi_sfr", "audio_clk1", "audio_clk2"; 461 ssi2: ssi@100a8800 { 462 compatible = "renesas,r9a08g045-ssi", [all …]
|