Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1670626 > unrolled thread
| Started by | olivier moysan <olivier.moysan@st.com> |
|---|---|
| First post | 2017-06-20 12:10 +0200 |
| Last post | 2017-06-20 12:10 +0200 |
| Articles | 2 — 1 participant |
Back to article view | Back to linux.kernel
[PATCH v2 0/2] ASoC: stm32: add SPDIFRX driver olivier moysan <olivier.moysan@st.com> - 2017-06-20 12:10 +0200
[PATCH v2 1/2] ASoC: stm32: Add DT bindings for SPDIFRX interface olivier moysan <olivier.moysan@st.com> - 2017-06-20 12:10 +0200
| From | olivier moysan <olivier.moysan@st.com> |
|---|---|
| Date | 2017-06-20 12:10 +0200 |
| Subject | [PATCH v2 0/2] ASoC: stm32: add SPDIFRX driver |
| Message-ID | <tUo71-6Xh-35@gated-at.bofh.it> |
This patch-set handles the SPDIFRX on STM32 platforms. The SPDIFRX peripheral, is designed to receive an S/PDIF flow compliant with IEC-60958 and IEC-61937 standards. SPDIFRX uses two DMA channels: - one DMA channel for S/PDIF data stream. - one DMA channel for control flow (channel status and user data bits). DMA is used for control flow instead of interrupts to get better performances, as channel status and user data are retrieved byte per byte. v1 -> v2: - fix merge issue olivier moysan (2): ASoC: stm32: Add DT bindings for SPDIFRX interface ASoC: stm32: Add SPDIFRX support .../devicetree/bindings/sound/st,stm32-spdifrx.txt | 56 ++ sound/soc/stm/Kconfig | 10 + sound/soc/stm/Makefile | 4 + sound/soc/stm/stm32_spdifrx.c | 998 +++++++++++++++++++++ 4 files changed, 1068 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/st,stm32-spdifrx.txt create mode 100644 sound/soc/stm/stm32_spdifrx.c -- 1.9.1
[toc] | [next] | [standalone]
| From | olivier moysan <olivier.moysan@st.com> |
|---|---|
| Date | 2017-06-20 12:10 +0200 |
| Subject | [PATCH v2 1/2] ASoC: stm32: Add DT bindings for SPDIFRX interface |
| Message-ID | <tUogG-7fS-17@gated-at.bofh.it> |
| In reply to | #1670626 |
Add documentation of device tree bindings for the
STM32 SPDIFRX interface.
Signed-off-by: olivier moysan <olivier.moysan@st.com>
---
.../devicetree/bindings/sound/st,stm32-spdifrx.txt | 56 ++++++++++++++++++++++
1 file changed, 56 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/st,stm32-spdifrx.txt
diff --git a/Documentation/devicetree/bindings/sound/st,stm32-spdifrx.txt b/Documentation/devicetree/bindings/sound/st,stm32-spdifrx.txt
new file mode 100644
index 0000000..33826f2
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/st,stm32-spdifrx.txt
@@ -0,0 +1,56 @@
+STMicroelectronics STM32 S/PDIF receiver (SPDIFRX).
+
+The SPDIFRX peripheral, is designed to receive an S/PDIF flow compliant with
+IEC-60958 and IEC-61937.
+
+Required properties:
+ - compatible: should be "st,stm32h7-spdifrx"
+ - reg: cpu DAI IP base address and size
+ - clocks: must contain an entry for kclk (used as S/PDIF signal reference)
+ - clock-names: must contain "kclk"
+ - interrupts: cpu DAI interrupt line
+ - dmas: DMA specifiers for audio data DMA and iec control flow DMA
+ See STM32 DMA bindings, Documentation/devicetree/bindings/dma/stm32-dma.txt
+ - dma-names: two dmas have to be defined, "rx" and "rx-ctrl"
+
+Optional properties:
+ - resets: Reference to a reset controller asserting the SPDIFRX
+
+The device node should contain one 'port' child node with one child 'endpoint'
+node, according to the bindings defined in Documentation/devicetree/bindings/
+graph.txt.
+
+Example:
+spdifrx: spdifrx@40004000 {
+ compatible = "st,stm32h7-spdifrx";
+ reg = <0x40004000 0x400>;
+ clocks = <&rcc SPDIFRX_CK>;
+ clock-names = "kclk";
+ interrupts = <97>;
+ dmas = <&dmamux1 2 93 0x400 0x0>,
+ <&dmamux1 3 94 0x400 0x0>;
+ dma-names = "rx", "rx-ctrl";
+ pinctrl-0 = <&spdifrx_pins>;
+ pinctrl-names = "default";
+
+ spdifrx_port: port {
+ cpu_endpoint: endpoint {
+ remote-endpoint = <&codec_endpoint>;
+ };
+ };
+};
+
+spdif_in: spdif-in {
+ compatible = "linux,spdif-dir";
+
+ codec_port: port {
+ codec_endpoint: endpoint {
+ remote-endpoint = <&cpu_endpoint>;
+ };
+ };
+};
+
+soundcard {
+ compatible = "audio-graph-card";
+ dais = <&spdifrx_port>;
+};
--
1.9.1
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web