The Audio Block Control contains clock distribution and gating controls, as well as reset handling to several of the AUDIOMIX peripherals. Especially the reset controls for Enhanced Audio Return Channel (EARC) PHY and Controller. So Audio Block Control is a Multi-Function Devices. Add reset-controller sub node which is a reset provider for EARC. Add compatible string "syscon", "simple-mfd" which make Audio Block Control device support reset-controller sub-node. Signed-off-by: Shengjiu Wang <shengjiu.wang@xxxxxxx> --- .../bindings/clock/imx8mp-audiomix.yaml | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/Documentation/devicetree/bindings/clock/imx8mp-audiomix.yaml b/Documentation/devicetree/bindings/clock/imx8mp-audiomix.yaml index 0a6dc1a6e122..a403ace4d11f 100644 --- a/Documentation/devicetree/bindings/clock/imx8mp-audiomix.yaml +++ b/Documentation/devicetree/bindings/clock/imx8mp-audiomix.yaml @@ -15,7 +15,10 @@ description: | properties: compatible: - const: fsl,imx8mp-audio-blk-ctrl + items: + - const: fsl,imx8mp-audio-blk-ctrl + - const: syscon + - const: simple-mfd reg: maxItems: 1 @@ -44,6 +47,11 @@ properties: ID in its "clocks" phandle cell. See include/dt-bindings/clock/imx8mp-clock.h for the full list of i.MX8MP IMX8MP_CLK_AUDIOMIX_ clock IDs. + reset-controller: + type: object + $ref: /schemas/reset/fsl,imx8mp-audiomix-reset.yaml# + description: The child reset devices of AudioMIX Block Control. + required: - compatible - reg @@ -60,7 +68,7 @@ examples: #include <dt-bindings/clock/imx8mp-clock.h> clock-controller@30e20000 { - compatible = "fsl,imx8mp-audio-blk-ctrl"; + compatible = "fsl,imx8mp-audio-blk-ctrl", "syscon", "simple-mfd"; reg = <0x30e20000 0x10000>; #clock-cells = <1>; clocks = <&clk IMX8MP_CLK_AUDIO_ROOT>, @@ -74,6 +82,11 @@ examples: "sai1", "sai2", "sai3", "sai5", "sai6", "sai7"; power-domains = <&pgc_audio>; + + reset-controller { + compatible = "fsl,imx8mp-audiomix-reset"; + #reset-cells = <1>; + }; }; ... -- 2.34.1