/Linux-v6.1/drivers/hsi/clients/ |
D | ssi_protocol.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Implementation of the SSI McSAAB improved protocol. 44 #define SSIP_MAX_CMDS 5 /* Number of pre-allocated commands buffers */ 45 #define SSIP_BYTES_TO_FRAMES(x) ((((x) - 1) >> 2) + 1) 48 * SSI protocol command definitions 104 * struct ssi_protocol - SSI protocol (McSAAB) data 114 * @keep_alive: Workaround for SSI HW bug 135 struct timer_list keep_alive; /* wake-up workaround */ 148 /* List of ssi protocol instances */ 157 data = sg_virt(msg->sgt.sgl); in ssip_set_cmd() [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 13 N900 (Nokia RX-51) hardware. 28 tristate "SSI protocol" 31 If you say Y here, you will enable the SSI protocol aka McSAAB. 36 tristate "HSI/SSI character driver" 39 If you say Y here, you will enable the HSI/SSI character driver. 41 serial communication with the cellular modem over HSI/SSI bus.
|
/Linux-v6.1/sound/soc/sh/ |
D | rz-ssi.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Renesas RZ/G2L ASoC Serial Sound Interface (SSIF-2) Driver 28 /* SSI REGISTER BITS */ 74 #define SSI_RATES SNDRV_PCM_RATE_8000_48000 /* 8k-44.1kHz */ 85 int fifo_sample_size; /* sample capacity of SSI FIFO */ 97 int (*transfer)(struct rz_ssi_priv *ssi, struct rz_ssi_stream *strm); 116 * The SSI supports full-duplex transmission and reception. 119 * So it is better to use as half-duplex (playing and recording 139 writel(data, (priv->base + reg)); in rz_ssi_reg_writel() 144 return readl(priv->base + reg); in rz_ssi_reg_readl() [all …]
|
D | ssi.c | 1 // SPDX-License-Identifier: GPL-2.0 8 // enable SSI output pins! 12 * The SSI unit has only one physical data line, so full duplex is 14 * other SSI unit for recording; however the SH7780 has only 1 SSI 18 * The SSI features "compressed mode": in this mode it continuously 57 #define CR_MUTE (1 << 3) /* SSI mute */ 60 #define CR_EN (1 << 0) /* enable SSI */ 62 #define SSIREG(reg) (*(unsigned long *)(ssi->mmio + (reg))) 86 * track usage of the SSI; it is simplex-only so prevent attempts of 92 struct ssi_priv *ssi = &ssi_cpu_data[dai->id]; in ssi_startup() local [all …]
|
D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 3 snd-soc-dma-sh7760-objs := dma-sh7760.o 4 obj-$(CONFIG_SND_SOC_PCM_SH7760) += snd-soc-dma-sh7760.o 6 ## audio units found on some SH-4 7 snd-soc-hac-objs := hac.o 8 snd-soc-ssi-objs := ssi.o 9 snd-soc-fsi-objs := fsi.o 10 snd-soc-siu-objs := siu_pcm.o siu_dai.o 11 obj-$(CONFIG_SND_SOC_SH4_HAC) += snd-soc-hac.o 12 obj-$(CONFIG_SND_SOC_SH4_SSI) += snd-soc-ssi.o [all …]
|
/Linux-v6.1/sound/soc/fsl/ |
D | fsl_ssi.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Freescale SSI ALSA SoC Digital Audio Interface (DAI) driver 7 // Copyright 2007-2010 Freescale Semiconductor, Inc. 9 // Some notes why imx-pcm-fiq is used instead of DMA on some boards: 11 // The i.MX SSI core has some nasty limitations in AC97 mode. While most 16 // we receive in our (PCM-) data stream. The only chance we have is to 43 #include <linux/dma/imx-dma.h> 53 #include "imx-pcm.h" 55 /* Define RX and TX to index ssi->regvals array; Can be 0 or 1 only */ 60 * FSLSSI_I2S_FORMATS: audio formats supported by the SSI [all …]
|
D | fsl_ssi.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * fsl_ssi.h - ALSA SSI interface for the Freescale MPC8610 and i.MX SoC 7 * Copyright 2007-2008 Freescale Semiconductor, Inc. 13 /* -- SSI Register Map -- */ 15 /* SSI Transmit Data Register 0 */ 17 /* SSI Transmit Data Register 1 */ 19 /* SSI Receive Data Register 0 */ 21 /* SSI Receive Data Register 1 */ 23 /* SSI Control Register */ 25 /* SSI Interrupt Status Register */ [all …]
|
D | p1022_rdk.c | 1 // SPDX-License-Identifier: GPL-2.0 28 /* P1022-specific PMUXCR and DMUXCR bit definitions */ 38 #define CCSR_GUTS_DMUXCR_SSI 2 /* DMA controller/channel set to SSI */ 56 unsigned int shift = 16 + (8 * (1 - co) + 2 * (3 - ch)); in guts_set_dmuxcr() 58 clrsetbits_be32(&guts->dmuxcr, 3 << shift, device << shift); in guts_set_dmuxcr() 65 * machine_data: machine-specific ASoC device data 85 * This function is used to initialize the board-specific hardware. 97 dev_err(card->dev, "could not map global utilities\n"); in p1022_rdk_machine_probe() 98 return -ENOMEM; in p1022_rdk_machine_probe() 101 /* Enable SSI Tx signal */ in p1022_rdk_machine_probe() [all …]
|
/Linux-v6.1/drivers/hsi/controllers/ |
D | omap_ssi_core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 /* OMAP SSI driver. 17 #include <linux/dma-mapping.h> 40 struct hsi_controller *ssi = m->private; in ssi_regs_show() local 41 struct omap_ssi_controller *omap_ssi = hsi_controller_drvdata(ssi); in ssi_regs_show() 42 void __iomem *sys = omap_ssi->sys; in ssi_regs_show() 44 pm_runtime_get_sync(ssi->device.parent); in ssi_regs_show() 48 pm_runtime_put(ssi->device.parent); in ssi_regs_show() 55 struct hsi_controller *ssi = m->private; in ssi_gdd_regs_show() local 56 struct omap_ssi_controller *omap_ssi = hsi_controller_drvdata(ssi); in ssi_gdd_regs_show() [all …]
|
D | omap_ssi_port.c | 1 // SPDX-License-Identifier: GPL-2.0-only 2 /* OMAP SSI port driver. 12 #include <linux/dma-mapping.h> 36 return gpiod_get_value(omap_port->wake_gpio); in ssi_wakein() 44 debugfs_remove_recursive(omap_port->dir); in ssi_debug_remove_port() 49 struct hsi_port *port = m->private; in ssi_port_regs_show() 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() 53 void __iomem *base = omap_ssi->sys; in ssi_port_regs_show() 56 pm_runtime_get_sync(omap_port->pdev); in ssi_port_regs_show() [all …]
|
D | omap_ssi.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* OMAP SSI internal interface. 23 #define SSI_BYTES_TO_FRAMES(x) ((((x) - 1) >> 2) + 1) 28 * struct omap_ssm_ctx - OMAP synchronous serial module (TX/RX) context 50 * struct omap_ssi_port - OMAP SSI port data 53 * @sst_dma: SSI transmitter physical base address 54 * @ssr_dma: SSI receiver physical base address 55 * @sst_base: SSI transmitter base address 56 * @ssr_base: SSI receiver base address 58 * @lock: Spin lock to serialize access to the SSI port [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 8 tristate "OMAP SSI hardware driver" 12 SSI is a legacy version of HSI. It is usually used to connect 14 If you say Y here, you will enable the OMAP SSI hardware driver.
|
/Linux-v6.1/sound/soc/sh/rcar/ |
D | ssi.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Renesas R-Car SSIU/SSI support 13 * SSI interrupt status debug message when debugging 61 #define EN (1 << 0) /* SSI Module Enable */ 77 #define SSI_NAME "ssi" 101 #define RSND_SSI_NO_BUSIF (1 << 1) /* SSI+DMA without BUSIF */ 107 ((pos) = ((struct rsnd_ssi *)(priv)->ssi + i)); \ 110 #define rsnd_ssi_get(priv, id) ((struct rsnd_ssi *)(priv->ssi) + id) 111 #define rsnd_ssi_nr(priv) ((priv)->ssi_nr) 113 #define rsnd_ssi_is_parent(ssi, io) ((ssi) == rsnd_io_to_mod_ssip(io)) argument [all …]
|
D | dma.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Renesas R-Car Audio DMAC support 53 #define rsnd_priv_to_dmac(p) ((struct rsnd_dma_ctrl *)(p)->dma) 55 #define rsnd_dma_to_dmaen(dma) (&(dma)->dma.en) 56 #define rsnd_dma_to_dmapp(dma) (&(dma)->dma.pp) 104 if (dmaen->chan) in rsnd_dmaen_stop() 105 dmaengine_terminate_async(dmaen->chan); in rsnd_dmaen_stop() 122 if (dmaen->chan) in rsnd_dmaen_cleanup() 123 dma_release_channel(dmaen->chan); in rsnd_dmaen_cleanup() 125 dmaen->chan = NULL; in rsnd_dmaen_cleanup() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/sound/ |
D | renesas,rz-ssi.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/sound/renesas,rz-ssi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Renesas RZ/{G2L,V2L} ASoC Sound Serial Interface (SSIF-2) 10 - Biju Das <biju.das.jz@bp.renesas.com> 15 - enum: 16 - renesas,r9a07g043-ssi # RZ/G2UL 17 - renesas,r9a07g044-ssi # RZ/G2{L,LC} 18 - renesas,r9a07g054-ssi # RZ/V2L [all …]
|
D | fsl,ssi.txt | 3 The SSI is a serial device that communicates with audio codecs. It can 4 be programmed in AC97, I2S, left-justified, or right-justified modes. 7 - compatible: Compatible list, should contain one of the following 9 fsl,mpc8610-ssi 10 fsl,imx51-ssi 11 fsl,imx35-ssi 12 fsl,imx21-ssi 13 - cell-index: The SSI, <0> = SSI1, <1> = SSI2, and so on. 14 - reg: Offset and length of the register set for the device. 15 - interrupts: <a b> where a is the interrupt number and b is a [all …]
|
D | renesas,rsnd.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Renesas R-Car Sound Driver 10 - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> 17 - items: 18 - enum: 19 - renesas,rcar_sound-r8a7778 # R-Car M1A 20 - renesas,rcar_sound-r8a7779 # R-Car H1 21 - enum: [all …]
|
D | renesas,rsnd.txt | 1 Renesas R-Car sound 7 Renesas R-Car and RZ/G sound is constructed from below modules 11 - SRC : Sampling Rate Converter 12 - CMD 13 - CTU : Channel Transfer Unit 14 - MIX : Mixer 15 - DVC : Digital Volume and Mute Function 17 SSI : Serial Sound Interface 25 Multi channel is supported by Multi-SSI, or TDM-SSI. 27 Multi-SSI : 6ch case, you can use stereo x 3 SSI [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/hsi/ |
D | omap-ssi.txt | 1 OMAP SSI controller bindings 3 OMAP3's Synchronous Serial Interface (SSI) controller implements a 9 - compatible: Should include "ti,omap3-ssi" or "ti,omap4-hsi" 10 - reg-names: Contains the values "sys" and "gdd" (in this order). 11 - reg: Contains a matching register specifier for each entry 12 in reg-names. 13 - interrupt-names: Contains the value "gdd_mpu". 14 - interrupts: Contains matching interrupt information for each entry 15 in interrupt-names. 16 - ranges: Represents the bus address mapping between the main [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/spi/ |
D | snps,dw-apb-ssi.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/spi/snps,dw-apb-ssi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Mark Brown <broonie@kernel.org> 13 - $ref: "spi-controller.yaml#" 14 - if: 19 - mscc,ocelot-spi 20 - mscc,jaguar2-spi 25 - if: [all …]
|
/Linux-v6.1/arch/mips/boot/dts/ingenic/ |
D | cu1000-neo.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 5 #include <dt-bindings/gpio/gpio.h> 6 #include <dt-bindings/clock/ingenic,sysost.h> 7 #include <dt-bindings/interrupt-controller/irq.h> 10 compatible = "yna,cu1000-neo", "ingenic,x1000e"; 11 model = "YSH & ATIL General Board CU1000-Neo"; 18 stdout-path = "serial2:115200n8"; 27 compatible = "gpio-leds"; 28 led-0 { [all …]
|
/Linux-v6.1/arch/arm/boot/dts/ |
D | r8a7778.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Device Tree Source for the R-Car M1A (R8A77781) SoC 14 #include <dt-bindings/clock/r8a7778-clock.h> 15 #include <dt-bindings/interrupt-controller/arm-gic.h> 16 #include <dt-bindings/interrupt-controller/irq.h> 20 interrupt-parent = <&gic>; 21 #address-cells = <1>; 22 #size-cells = <1>; 25 #address-cells = <1>; 26 #size-cells = <0>; [all …]
|
D | r8a7793.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Device Tree Source for the R-Car M2-N (R8A77930) SoC 5 * Copyright (C) 2014-2015 Renesas Electronics Corporation 8 #include <dt-bindings/clock/r8a7793-cpg-mssr.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/interrupt-controller/irq.h> 11 #include <dt-bindings/power/r8a7793-sysc.h> 15 #address-cells = <2>; 16 #size-cells = <2>; 37 compatible = "fixed-clock"; [all …]
|
D | r8a7794.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Device Tree Source for the R-Car E2 (R8A77940) SoC 9 #include <dt-bindings/clock/r8a7794-cpg-mssr.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/power/r8a7794-sysc.h> 16 #address-cells = <2>; 17 #size-cells = <2>; 39 compatible = "fixed-clock"; 40 #clock-cells = <0>; [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/dma/ |
D | fsl-imx-sdma.txt | 4 - compatible : Should be one of 5 "fsl,imx25-sdma" 6 "fsl,imx31-sdma", "fsl,imx31-to1-sdma", "fsl,imx31-to2-sdma" 7 "fsl,imx35-sdma", "fsl,imx35-to1-sdma", "fsl,imx35-to2-sdma" 8 "fsl,imx51-sdma" 9 "fsl,imx53-sdma" 10 "fsl,imx6q-sdma" 11 "fsl,imx7d-sdma" 12 "fsl,imx6ul-sdma" 13 "fsl,imx8mq-sdma" [all …]
|