1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright 2013 Christian Hemp, Phytec Messtechnik GmbH 4 */ 5 6#include <dt-bindings/sound/fsl-imx-audmux.h> 7 8/ { 9 chosen { 10 stdout-path = &uart4; 11 }; 12 13 sound_1v8: regulator-sound-1v8 { 14 compatible = "regulator-fixed"; 15 regulator-name = "i2s-audio-1v8"; 16 regulator-min-microvolt = <1800000>; 17 regulator-max-microvolt = <1800000>; 18 }; 19 20 sound_3v3: regulator-sound-3v3 { 21 compatible = "regulator-fixed"; 22 regulator-name = "i2s-audio-3v3"; 23 regulator-min-microvolt = <3300000>; 24 regulator-max-microvolt = <3300000>; 25 }; 26 27 tlv320_mclk: oscillator { 28 compatible = "fixed-clock"; 29 #clock-cells = <0>; 30 clock-frequency = <19200000>; 31 clock-output-names = "tlv320-mclk"; 32 }; 33 34 sound { 35 compatible = "simple-audio-card"; 36 simple-audio-card,name = "OnboardTLV320AIC3007"; 37 simple-audio-card,format = "i2s"; 38 simple-audio-card,bitclock-master = <&dailink_master>; 39 simple-audio-card,frame-master = <&dailink_master>; 40 simple-audio-card,widgets = 41 "Microphone", "Mic Jack", 42 "Line", "Line In", 43 "Line", "Line Out", 44 "Speaker", "Speaker", 45 "Headphone", "Headphone Jack"; 46 simple-audio-card,routing = 47 "Line Out", "LLOUT", 48 "Line Out", "RLOUT", 49 "Speaker", "SPOP", 50 "Speaker", "SPOM", 51 "Headphone Jack", "HPLOUT", 52 "Headphone Jack", "HPROUT", 53 "MIC3L", "Mic Jack", 54 "MIC3R", "Mic Jack", 55 "Mic Jack", "Mic Bias", 56 "LINE1L", "Line In", 57 "LINE1R", "Line In"; 58 59 simple-audio-card,cpu { 60 sound-dai = <&ssi2>; 61 }; 62 63 dailink_master: simple-audio-card,codec { 64 sound-dai = <&codec>; 65 clocks = <&tlv320_mclk>; 66 }; 67 }; 68 69}; 70 71&audmux { 72 status = "okay"; 73 74 mux-ssi2 { 75 fsl,audmux-port = <1>; 76 fsl,port-config = < 77 (IMX_AUDMUX_V2_PTCR_SYN | 78 IMX_AUDMUX_V2_PTCR_TFSDIR | 79 IMX_AUDMUX_V2_PTCR_TFSEL(4) | 80 IMX_AUDMUX_V2_PTCR_TCLKDIR | 81 IMX_AUDMUX_V2_PTCR_TCSEL(4)) 82 IMX_AUDMUX_V2_PDCR_RXDSEL(4) 83 >; 84 }; 85 86 mux-pins5 { 87 fsl,audmux-port = <4>; 88 fsl,port-config = < 89 IMX_AUDMUX_V2_PTCR_SYN 90 IMX_AUDMUX_V2_PDCR_RXDSEL(1) 91 >; 92 }; 93}; 94 95&can1 { 96 status = "okay"; 97}; 98 99&fec { 100 status = "okay"; 101}; 102 103&hdmi { 104 status = "okay"; 105}; 106 107&i2c2 { 108 status = "okay"; 109 110 codec: tlv320@18 { 111 compatible = "ti,tlv320aic3007"; 112 #sound-dai-cells = <0>; 113 reg = <0x18>; 114 ai3x-micbias-vg = <2>; 115 116 AVDD-supply = <&sound_3v3>; 117 IOVDD-supply = <&sound_3v3>; 118 DRVDD-supply = <&sound_3v3>; 119 DVDD-supply = <&sound_1v8>; 120 }; 121 122 stmpe@41 { 123 compatible = "st,stmpe811"; 124 reg = <0x41>; 125 }; 126 127 rtc@51 { 128 compatible = "epson,rtc8564"; 129 reg = <0x51>; 130 }; 131 132 adc@64 { 133 compatible = "maxim,max1037"; 134 reg = <0x64>; 135 }; 136}; 137 138&i2c3 { 139 status = "okay"; 140}; 141 142&pcie { 143 status = "okay"; 144}; 145 146&ssi2 { 147 status = "okay"; 148}; 149 150&uart3 { 151 status = "okay"; 152}; 153 154&uart4 { 155 status = "okay"; 156}; 157 158&usbh1 { 159 status = "okay"; 160}; 161 162&usbotg { 163 status = "okay"; 164 dr_mode = "peripheral"; 165}; 166 167&usdhc2 { 168 status = "okay"; 169}; 170 171&usdhc3 { 172 status = "okay"; 173}; 174