Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

ASoC: dt-bindings: fsl-esai: Convert fsl,esai.txt to yaml

Convert fsl,esai.txt to yaml. So DTB_CHECK tools can verify dts file about
esai part.

clock-names 'spba' is optional according to description. So minItems of
clocks and clock-names is 3.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://msgid.link/r/20240322145406.2613256-1-Frank.Li@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Frank Li and committed by
Mark Brown
885dd75f 9855f05e

+116 -68
-68
Documentation/devicetree/bindings/sound/fsl,esai.txt
··· 1 - Freescale Enhanced Serial Audio Interface (ESAI) Controller 2 - 3 - The Enhanced Serial Audio Interface (ESAI) provides a full-duplex serial port 4 - for serial communication with a variety of serial devices, including industry 5 - standard codecs, Sony/Phillips Digital Interface (S/PDIF) transceivers, and 6 - other DSPs. It has up to six transmitters and four receivers. 7 - 8 - Required properties: 9 - 10 - - compatible : Compatible list, should contain one of the following 11 - compatibles: 12 - "fsl,imx35-esai", 13 - "fsl,vf610-esai", 14 - "fsl,imx6ull-esai", 15 - "fsl,imx8qm-esai", 16 - 17 - - reg : Offset and length of the register set for the device. 18 - 19 - - interrupts : Contains the spdif interrupt. 20 - 21 - - dmas : Generic dma devicetree binding as described in 22 - Documentation/devicetree/bindings/dma/dma.txt. 23 - 24 - - dma-names : Two dmas have to be defined, "tx" and "rx". 25 - 26 - - clocks : Contains an entry for each entry in clock-names. 27 - 28 - - clock-names : Includes the following entries: 29 - "core" The core clock used to access registers 30 - "extal" The esai baud clock for esai controller used to 31 - derive HCK, SCK and FS. 32 - "fsys" The system clock derived from ahb clock used to 33 - derive HCK, SCK and FS. 34 - "spba" The spba clock is required when ESAI is placed as a 35 - bus slave of the Shared Peripheral Bus and when two 36 - or more bus masters (CPU, DMA or DSP) try to access 37 - it. This property is optional depending on the SoC 38 - design. 39 - 40 - - fsl,fifo-depth : The number of elements in the transmit and receive 41 - FIFOs. This number is the maximum allowed value for 42 - TFCR[TFWM] or RFCR[RFWM]. 43 - 44 - - fsl,esai-synchronous: This is a boolean property. If present, indicating 45 - that ESAI would work in the synchronous mode, which 46 - means all the settings for Receiving would be 47 - duplicated from Transmission related registers. 48 - 49 - Optional properties: 50 - 51 - - big-endian : If this property is absent, the native endian mode 52 - will be in use as default, or the big endian mode 53 - will be in use for all the device registers. 54 - 55 - Example: 56 - 57 - esai: esai@2024000 { 58 - compatible = "fsl,imx35-esai"; 59 - reg = <0x02024000 0x4000>; 60 - interrupts = <0 51 0x04>; 61 - clocks = <&clks 208>, <&clks 118>, <&clks 208>; 62 - clock-names = "core", "extal", "fsys"; 63 - dmas = <&sdma 23 21 0>, <&sdma 24 21 0>; 64 - dma-names = "rx", "tx"; 65 - fsl,fifo-depth = <128>; 66 - fsl,esai-synchronous; 67 - big-endian; 68 - };
+116
Documentation/devicetree/bindings/sound/fsl,esai.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/sound/fsl,esai.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Freescale Enhanced Serial Audio Interface (ESAI) Controller 8 + 9 + maintainers: 10 + - Shengjiu Wang <shengjiu.wang@nxp.com> 11 + - Frank Li <Frank.Li@nxp.com> 12 + 13 + description: 14 + The Enhanced Serial Audio Interface (ESAI) provides a full-duplex serial port 15 + for serial communication with a variety of serial devices, including industry 16 + standard codecs, Sony/Phillips Digital Interface (S/PDIF) transceivers, and 17 + other DSPs. It has up to six transmitters and four receivers. 18 + 19 + properties: 20 + compatible: 21 + enum: 22 + - fsl,imx35-esai 23 + - fsl,imx6ull-esai 24 + - fsl,imx8qm-esai 25 + - fsl,vf610-esai 26 + 27 + reg: 28 + maxItems: 1 29 + 30 + interrupts: 31 + maxItems: 1 32 + 33 + clocks: 34 + minItems: 3 35 + items: 36 + - description: 37 + The core clock used to access registers. 38 + - description: 39 + The esai baud clock for esai controller used to 40 + derive HCK, SCK and FS. 41 + - description: 42 + The system clock derived from ahb clock used to 43 + derive HCK, SCK and FS. 44 + - description: 45 + The spba clock is required when ESAI is placed as a 46 + bus slave of the Shared Peripheral Bus and when two 47 + or more bus masters (CPU, DMA or DSP) try to access 48 + it. This property is optional depending on the SoC 49 + design. 50 + 51 + clock-names: 52 + minItems: 3 53 + items: 54 + - const: core 55 + - const: extal 56 + - const: fsys 57 + - const: spba 58 + 59 + dmas: 60 + minItems: 2 61 + maxItems: 2 62 + 63 + dma-names: 64 + items: 65 + - const: rx 66 + - const: tx 67 + 68 + fsl,fifo-depth: 69 + $ref: /schemas/types.yaml#/definitions/uint32 70 + description: 71 + The number of elements in the transmit and receive 72 + FIFOs. This number is the maximum allowed value for 73 + TFCR[TFWM] or RFCR[RFWM]. 74 + 75 + fsl,esai-synchronous: 76 + $ref: /schemas/types.yaml#/definitions/flag 77 + description: 78 + This is a boolean property. If present, indicating 79 + that ESAI would work in the synchronous mode, which 80 + means all the settings for Receiving would be 81 + duplicated from Transmission related registers. 82 + 83 + big-endian: 84 + $ref: /schemas/types.yaml#/definitions/flag 85 + description: 86 + If this property is absent, the native endian mode 87 + will be in use as default, or the big endian mode 88 + will be in use for all the device registers. 89 + 90 + required: 91 + - compatible 92 + - reg 93 + - interrupts 94 + - clocks 95 + - clock-names 96 + - dmas 97 + - dma-names 98 + - fsl,fifo-depth 99 + - fsl,esai-synchronous 100 + 101 + unevaluatedProperties: false 102 + 103 + examples: 104 + - | 105 + esai@2024000 { 106 + compatible = "fsl,imx35-esai"; 107 + reg = <0x02024000 0x4000>; 108 + interrupts = <0 51 0x04>; 109 + clocks = <&clks 208>, <&clks 118>, <&clks 208>; 110 + clock-names = "core", "extal", "fsys"; 111 + dmas = <&sdma 23 21 0>, <&sdma 24 21 0>; 112 + dma-names = "rx", "tx"; 113 + fsl,fifo-depth = <128>; 114 + fsl,esai-synchronous; 115 + big-endian; 116 + };