120 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/sound/imx-audmux.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Freescale Digital Audio Mux device8 9maintainers:10 - Oleksij Rempel <o.rempel@pengutronix.de>11 12properties:13 compatible:14 oneOf:15 - items:16 - enum:17 - fsl,imx27-audmux18 - const: fsl,imx21-audmux19 - items:20 - enum:21 - fsl,imx25-audmux22 - fsl,imx35-audmux23 - fsl,imx50-audmux24 - fsl,imx51-audmux25 - fsl,imx53-audmux26 - fsl,imx6q-audmux27 - fsl,imx6sl-audmux28 - fsl,imx6sll-audmux29 - fsl,imx6sx-audmux30 - const: fsl,imx31-audmux31 32 reg:33 maxItems: 134 35 clocks:36 maxItems: 137 38 clock-names:39 items:40 - const: audmux41 42patternProperties:43 "^mux-[0-9a-z]*$":44 type: object45 properties:46 fsl,audmux-port:47 $ref: /schemas/types.yaml#/definitions/uint3248 description: |49 Integer of the audmux port that is configured by this child node50 51 fsl,port-config:52 $ref: /schemas/types.yaml#/definitions/uint32-array53 description: |54 List of configuration options for the specific port.55 For imx31-audmux and above, it is a list of tuples ptcr pdcr.56 For imx21-audmux it is a list of pcr values.57 58 required:59 - fsl,audmux-port60 - fsl,port-config61 62 additionalProperties: false63 64required:65 - compatible66 - reg67 68additionalProperties: false69 70examples:71 - |72 audmux@21d8000 {73 compatible = "fsl,imx6q-audmux", "fsl,imx31-audmux";74 reg = <0x021d8000 0x4000>;75 };76 - |77 audmux@10016000 {78 compatible = "fsl,imx27-audmux", "fsl,imx21-audmux";79 reg = <0x10016000 0x1000>;80 clocks = <&clks 1>;81 clock-names = "audmux";82 83 mux-ssi0 {84 fsl,audmux-port = <0>;85 fsl,port-config = <0xcb205000>;86 };87 88 mux-pins4 {89 fsl,audmux-port = <2>;90 fsl,port-config = <0x00001000>;91 };92 };93 - |94 #include <dt-bindings/sound/fsl-imx-audmux.h>95 audmux@21d8000 {96 compatible = "fsl,imx6q-audmux", "fsl,imx31-audmux";97 reg = <0x021d8000 0x4000>;98 pinctrl-names = "default";99 pinctrl-0 = <&pinctrl_audmux>;100 101 mux-ssi1 {102 fsl,audmux-port = <0>;103 fsl,port-config = <104 IMX_AUDMUX_V2_PTCR_SYN 0105 IMX_AUDMUX_V2_PTCR_TFSEL(2) 0106 IMX_AUDMUX_V2_PTCR_TCSEL(2) 0107 IMX_AUDMUX_V2_PTCR_TFSDIR 0108 IMX_AUDMUX_V2_PTCR_TCLKDIR IMX_AUDMUX_V2_PDCR_RXDSEL(2)109 >;110 };111 112 mux-pins3 {113 fsl,audmux-port = <2>;114 fsl,port-config = <115 IMX_AUDMUX_V2_PTCR_SYN IMX_AUDMUX_V2_PDCR_RXDSEL(0)116 0 IMX_AUDMUX_V2_PDCR_TXRXEN117 >;118 };119 };120