114aa731dSOleksij Rempel# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 214aa731dSOleksij Rempel%YAML 1.2 314aa731dSOleksij Rempel--- 414aa731dSOleksij Rempel$id: http://devicetree.org/schemas/sound/imx-audmux.yaml# 514aa731dSOleksij Rempel$schema: http://devicetree.org/meta-schemas/core.yaml# 614aa731dSOleksij Rempel 714aa731dSOleksij Rempeltitle: Freescale Digital Audio Mux device 814aa731dSOleksij Rempel 914aa731dSOleksij Rempelmaintainers: 1014aa731dSOleksij Rempel - Oleksij Rempel <o.rempel@pengutronix.de> 1114aa731dSOleksij Rempel 1214aa731dSOleksij Rempelproperties: 1314aa731dSOleksij Rempel compatible: 1414aa731dSOleksij Rempel oneOf: 1514aa731dSOleksij Rempel - items: 1614aa731dSOleksij Rempel - enum: 1714aa731dSOleksij Rempel - fsl,imx27-audmux 1814aa731dSOleksij Rempel - const: fsl,imx21-audmux 1914aa731dSOleksij Rempel - items: 2014aa731dSOleksij Rempel - enum: 2114aa731dSOleksij Rempel - fsl,imx25-audmux 2214aa731dSOleksij Rempel - fsl,imx35-audmux 2314aa731dSOleksij Rempel - fsl,imx50-audmux 2414aa731dSOleksij Rempel - fsl,imx51-audmux 2514aa731dSOleksij Rempel - fsl,imx53-audmux 2614aa731dSOleksij Rempel - fsl,imx6q-audmux 2714aa731dSOleksij Rempel - fsl,imx6sl-audmux 2814aa731dSOleksij Rempel - fsl,imx6sll-audmux 2914aa731dSOleksij Rempel - fsl,imx6sx-audmux 3014aa731dSOleksij Rempel - const: fsl,imx31-audmux 3114aa731dSOleksij Rempel 3214aa731dSOleksij Rempel reg: 3314aa731dSOleksij Rempel maxItems: 1 3414aa731dSOleksij Rempel 3514aa731dSOleksij Rempel clocks: 3614aa731dSOleksij Rempel maxItems: 1 3714aa731dSOleksij Rempel 3814aa731dSOleksij Rempel clock-names: 3914aa731dSOleksij Rempel items: 4014aa731dSOleksij Rempel - const: audmux 4114aa731dSOleksij Rempel 4214aa731dSOleksij RempelpatternProperties: 4314aa731dSOleksij Rempel "^mux-[0-9a-z]*$": 4414aa731dSOleksij Rempel type: object 4514aa731dSOleksij Rempel properties: 4614aa731dSOleksij Rempel fsl,audmux-port: 4714aa731dSOleksij Rempel $ref: /schemas/types.yaml#/definitions/uint32 4814aa731dSOleksij Rempel description: | 4914aa731dSOleksij Rempel Integer of the audmux port that is configured by this child node 5014aa731dSOleksij Rempel 5114aa731dSOleksij Rempel fsl,port-config: 5214aa731dSOleksij Rempel $ref: /schemas/types.yaml#/definitions/uint32-array 5314aa731dSOleksij Rempel description: | 5414aa731dSOleksij Rempel List of configuration options for the specific port. 5514aa731dSOleksij Rempel For imx31-audmux and above, it is a list of tuples ptcr pdcr. 5614aa731dSOleksij Rempel For imx21-audmux it is a list of pcr values. 5714aa731dSOleksij Rempel 5814aa731dSOleksij Rempel required: 5914aa731dSOleksij Rempel - fsl,audmux-port 6014aa731dSOleksij Rempel - fsl,port-config 6114aa731dSOleksij Rempel 6214aa731dSOleksij Rempel additionalProperties: false 6314aa731dSOleksij Rempel 6414aa731dSOleksij Rempelrequired: 6514aa731dSOleksij Rempel - compatible 6614aa731dSOleksij Rempel - reg 6714aa731dSOleksij Rempel 6814aa731dSOleksij RempeladditionalProperties: false 6914aa731dSOleksij Rempel 7014aa731dSOleksij Rempelexamples: 7114aa731dSOleksij Rempel - | 7214aa731dSOleksij Rempel audmux@21d8000 { 7314aa731dSOleksij Rempel compatible = "fsl,imx6q-audmux", "fsl,imx31-audmux"; 7414aa731dSOleksij Rempel reg = <0x021d8000 0x4000>; 7514aa731dSOleksij Rempel }; 7614aa731dSOleksij Rempel - | 7714aa731dSOleksij Rempel audmux@10016000 { 7814aa731dSOleksij Rempel compatible = "fsl,imx27-audmux", "fsl,imx21-audmux"; 7914aa731dSOleksij Rempel reg = <0x10016000 0x1000>; 8014aa731dSOleksij Rempel clocks = <&clks 1>; 8114aa731dSOleksij Rempel clock-names = "audmux"; 8214aa731dSOleksij Rempel 8314aa731dSOleksij Rempel mux-ssi0 { 8414aa731dSOleksij Rempel fsl,audmux-port = <0>; 8514aa731dSOleksij Rempel fsl,port-config = <0xcb205000>; 8614aa731dSOleksij Rempel }; 8714aa731dSOleksij Rempel 8814aa731dSOleksij Rempel mux-pins4 { 8914aa731dSOleksij Rempel fsl,audmux-port = <2>; 9014aa731dSOleksij Rempel fsl,port-config = <0x00001000>; 9114aa731dSOleksij Rempel }; 9214aa731dSOleksij Rempel }; 9314aa731dSOleksij Rempel - | 9414aa731dSOleksij Rempel #include <dt-bindings/sound/fsl-imx-audmux.h> 9514aa731dSOleksij Rempel audmux@21d8000 { 9614aa731dSOleksij Rempel compatible = "fsl,imx6q-audmux", "fsl,imx31-audmux"; 9714aa731dSOleksij Rempel reg = <0x021d8000 0x4000>; 9814aa731dSOleksij Rempel pinctrl-names = "default"; 9914aa731dSOleksij Rempel pinctrl-0 = <&pinctrl_audmux>; 10014aa731dSOleksij Rempel 10114aa731dSOleksij Rempel mux-ssi1 { 10214aa731dSOleksij Rempel fsl,audmux-port = <0>; 10314aa731dSOleksij Rempel fsl,port-config = < 10414aa731dSOleksij Rempel IMX_AUDMUX_V2_PTCR_SYN 0 10514aa731dSOleksij Rempel IMX_AUDMUX_V2_PTCR_TFSEL(2) 0 10614aa731dSOleksij Rempel IMX_AUDMUX_V2_PTCR_TCSEL(2) 0 10714aa731dSOleksij Rempel IMX_AUDMUX_V2_PTCR_TFSDIR 0 10814aa731dSOleksij Rempel IMX_AUDMUX_V2_PTCR_TCLKDIR IMX_AUDMUX_V2_PDCR_RXDSEL(2) 10914aa731dSOleksij Rempel >; 11014aa731dSOleksij Rempel }; 11114aa731dSOleksij Rempel 11214aa731dSOleksij Rempel mux-pins3 { 11314aa731dSOleksij Rempel fsl,audmux-port = <2>; 11414aa731dSOleksij Rempel fsl,port-config = < 11514aa731dSOleksij Rempel IMX_AUDMUX_V2_PTCR_SYN IMX_AUDMUX_V2_PDCR_RXDSEL(0) 11614aa731dSOleksij Rempel 0 IMX_AUDMUX_V2_PDCR_TXRXEN 11714aa731dSOleksij Rempel >; 11814aa731dSOleksij Rempel }; 11914aa731dSOleksij Rempel }; 120