Lines Matching +full:codec +full:- +full:gpio3
1 // SPDX-License-Identifier: GPL-2.0+
3 * Copyright 2018-2020 Purism SPC
6 /dts-v1/;
8 #include "dt-bindings/input/input.h"
9 #include <dt-bindings/interrupt-controller/irq.h>
10 #include <dt-bindings/leds/common.h>
11 #include "dt-bindings/pwm/pwm.h"
12 #include "dt-bindings/usb/pd.h"
18 chassis-type = "handset";
20 backlight_dsi: backlight-dsi {
21 compatible = "led-backlight";
23 brightness-levels = <255>;
24 default-brightness-level = <190>;
27 pmic_osc: clock-pmic {
28 compatible = "fixed-clock";
29 #clock-cells = <0>;
30 clock-frequency = <32768>;
31 clock-output-names = "pmic_osc";
35 stdout-path = &uart1;
38 gpio-keys {
39 compatible = "gpio-keys";
40 pinctrl-names = "default";
41 pinctrl-0 = <&pinctrl_keys>;
43 key-vol-down {
47 debounce-interval = <50>;
50 key-vol-up {
54 debounce-interval = <50>;
58 led-controller {
59 compatible = "pwm-leds-multicolor";
61 multi-led {
64 max-brightness = <248>;
66 led-0 {
71 led-1 {
76 led-2 {
83 reg_aud_1v8: regulator-audio-1v8 {
84 compatible = "regulator-fixed";
85 pinctrl-names = "default";
86 pinctrl-0 = <&pinctrl_audiopwr>;
87 regulator-name = "AUD_1V8";
88 regulator-min-microvolt = <1800000>;
89 regulator-max-microvolt = <1800000>;
91 enable-active-high;
92 regulator-always-on;
95 reg_mic_2v4: regulator-mic-2v4 {
96 compatible = "regulator-fixed";
97 regulator-name = "MIC_2V4";
98 regulator-min-microvolt = <2400000>;
99 regulator-max-microvolt = <2400000>;
100 vin-supply = <®_aud_1v8>;
107 reg_csi_1v8: regulator-csi-1v8 {
108 compatible = "regulator-fixed";
109 regulator-name = "CAMERA_VDDIO_1V8";
110 regulator-min-microvolt = <1800000>;
111 regulator-max-microvolt = <1800000>;
112 vin-supply = <®_vdd_3v3>;
114 enable-active-high;
118 reg_vcam_1v2: regulator-vcam-1v2 {
119 compatible = "regulator-fixed";
120 regulator-name = "CAMERA_VDDD_1V2";
121 regulator-min-microvolt = <1200000>;
122 regulator-max-microvolt = <1200000>;
123 vin-supply = <®_vdd_1v8>;
124 enable-active-high;
127 reg_vcam_2v8: regulator-vcam-2v8 {
128 compatible = "regulator-fixed";
129 regulator-name = "CAMERA_VDDA_2V8";
130 regulator-min-microvolt = <2800000>;
131 regulator-max-microvolt = <2800000>;
132 vin-supply = <®_vdd_3v3>;
134 enable-active-high;
137 reg_gnss: regulator-gnss {
138 compatible = "regulator-fixed";
139 pinctrl-names = "default";
140 pinctrl-0 = <&pinctrl_gnsspwr>;
141 regulator-name = "GNSS";
142 regulator-min-microvolt = <3300000>;
143 regulator-max-microvolt = <3300000>;
144 gpio = <&gpio3 12 GPIO_ACTIVE_HIGH>;
145 enable-active-high;
148 reg_hub: regulator-hub {
149 compatible = "regulator-fixed";
150 pinctrl-names = "default";
151 pinctrl-0 = <&pinctrl_hub_pwr>;
152 regulator-name = "HUB";
153 regulator-min-microvolt = <3300000>;
154 regulator-max-microvolt = <3300000>;
156 enable-active-high;
159 reg_lcd_1v8: regulator-lcd-1v8 {
160 compatible = "regulator-fixed";
161 pinctrl-names = "default";
162 pinctrl-0 = <&pinctrl_dsien>;
163 regulator-name = "LCD_1V8";
164 regulator-min-microvolt = <1800000>;
165 regulator-max-microvolt = <1800000>;
166 vin-supply = <®_vdd_1v8>;
168 enable-active-high;
170 regulator-always-on;
173 reg_lcd_3v4: regulator-lcd-3v4 {
174 compatible = "regulator-fixed";
175 regulator-name = "LCD_3V4";
176 pinctrl-names = "default";
177 pinctrl-0 = <&pinctrl_dsibiasen>;
178 vin-supply = <®_vsys_3v4>;
180 enable-active-high;
183 reg_vdd_sen: regulator-vdd-sen {
184 compatible = "regulator-fixed";
185 regulator-name = "VDD_SEN";
186 regulator-min-microvolt = <3300000>;
187 regulator-max-microvolt = <3300000>;
190 reg_vdd_1v8: regulator-vdd-1v8 {
191 compatible = "regulator-fixed";
192 regulator-name = "VDD_1V8";
193 regulator-min-microvolt = <1800000>;
194 regulator-max-microvolt = <1800000>;
195 vin-supply = <&buck7_reg>;
198 reg_vdd_3v3: regulator-vdd-3v3 {
199 compatible = "regulator-fixed";
200 regulator-name = "VDD_3V3";
201 regulator-min-microvolt = <3300000>;
202 regulator-max-microvolt = <3300000>;
205 reg_vsys_3v4: regulator-vsys-3v4 {
206 compatible = "regulator-fixed";
207 regulator-name = "VSYS_3V4";
208 regulator-min-microvolt = <3400000>;
209 regulator-max-microvolt = <3400000>;
210 regulator-always-on;
213 reg_wifi_3v3: regulator-wifi-3v3 {
214 compatible = "regulator-fixed";
215 pinctrl-names = "default";
216 pinctrl-0 = <&pinctrl_wifi_pwr>;
217 regulator-name = "3V3_WIFI";
218 regulator-min-microvolt = <3300000>;
219 regulator-max-microvolt = <3300000>;
220 gpio = <&gpio3 10 GPIO_ACTIVE_HIGH>;
221 enable-active-high;
222 vin-supply = <®_vdd_3v3>;
226 compatible = "simple-audio-card";
227 pinctrl-names = "default";
228 pinctrl-0 = <&pinctrl_hp>;
229 simple-audio-card,name = "Librem 5";
230 simple-audio-card,format = "i2s";
231 simple-audio-card,widgets =
236 simple-audio-card,routing =
244 simple-audio-card,hp-det-gpios = <&gpio3 9 GPIO_ACTIVE_HIGH>;
246 simple-audio-card,cpu {
247 sound-dai = <&sai2>;
250 simple-audio-card,codec {
251 sound-dai = <&codec>;
253 frame-master;
254 bitclock-master;
258 sound-wwan {
259 compatible = "simple-audio-card";
260 simple-audio-card,name = "Modem";
261 simple-audio-card,format = "i2s";
263 simple-audio-card,cpu {
264 sound-dai = <&sai6>;
265 frame-inversion;
268 simple-audio-card,codec {
269 sound-dai = <&bm818_codec>;
270 frame-master;
271 bitclock-master;
276 pinctrl-names = "default";
277 pinctrl-0 = <&pinctrl_bt>, <&pinctrl_wifi_disable>;
278 compatible = "mmc-pwrseq-simple";
279 reset-gpios = <&gpio3 25 GPIO_ACTIVE_HIGH>,
283 bm818_codec: sound-wwan-codec {
285 #sound-dai-cells = <0>;
289 compatible = "pwm-vibrator";
291 pwm-names = "enable";
292 vcc-supply = <®_vdd_3v3>;
297 cpu-supply = <&buck2_reg>;
301 cpu-supply = <&buck2_reg>;
305 cpu-supply = <&buck2_reg>;
309 cpu-supply = <&buck2_reg>;
317 operating-points-v2 = <&ddrc_opp_table>;
320 ddrc_opp_table: opp-table {
321 compatible = "operating-points-v2";
323 opp-25000000 {
324 opp-hz = /bits/ 64 <25000000>;
327 opp-100000000 {
328 opp-hz = /bits/ 64 <100000000>;
331 opp-166000000 {
332 opp-hz = /bits/ 64 <166935483>;
335 opp-800000000 {
336 opp-hz = /bits/ 64 <800000000>;
346 pinctrl-names = "default";
347 pinctrl-0 = <&pinctrl_ecspi1>;
348 cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
349 #address-cells = <1>;
350 #size-cells = <0>;
354 compatible = "jedec,spi-nor";
356 spi-max-frequency = <1000000>;
357 #address-cells = <1>;
358 #size-cells = <1>;
363 read-only;
369 read-only;
375 pinctrl-names = "default";
376 pinctrl-0 = <&pinctrl_pmic_5v>;
378 pmic-5v-hog {
379 gpio-hog;
382 line-name = "pmic-5v";
387 pinctrl-names = "default";
388 pinctrl-0 = <&pinctrl_hog>;
538 /* VOL- */
688 pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
705 pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
735 pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
748 pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
784 clock-frequency = <384000>;
785 pinctrl-names = "default";
786 pinctrl-0 = <&pinctrl_i2c1>;
789 typec_pd: usb-pd@3f {
792 pinctrl-names = "default";
793 pinctrl-0 = <&pinctrl_typec>, <&pinctrl_tcpc>;
794 interrupt-parent = <&gpio1>;
796 interrupt-names = "irq";
797 wakeup-source;
800 compatible = "usb-c-connector";
801 label = "USB-C";
802 data-role = "dual";
805 #address-cells = <1>;
806 #size-cells = <0>;
812 remote-endpoint = <&typec_hs>;
820 remote-endpoint = <&typec_ss>;
830 pinctrl-names = "default";
831 pinctrl-0 = <&pinctrl_pmic>, <&pinctrl_camera_pwr>;
833 #clock-cells = <0>;
834 clock-names = "osc";
835 clock-output-names = "pmic_clk";
836 interrupt-parent = <&gpio1>;
838 rohm,reset-snvs-powered;
842 regulator-name = "buck1";
843 regulator-min-microvolt = <700000>;
844 regulator-max-microvolt = <1300000>;
845 regulator-boot-on;
846 regulator-ramp-delay = <1250>;
847 rohm,dvs-run-voltage = <880000>;
848 rohm,dvs-idle-voltage = <820000>;
849 rohm,dvs-suspend-voltage = <810000>;
850 regulator-always-on;
854 regulator-name = "buck2";
855 regulator-min-microvolt = <700000>;
856 regulator-max-microvolt = <1300000>;
857 regulator-boot-on;
858 regulator-ramp-delay = <1250>;
859 rohm,dvs-run-voltage = <950000>;
860 rohm,dvs-idle-voltage = <850000>;
861 regulator-always-on;
865 regulator-name = "buck3";
866 regulator-min-microvolt = <700000>;
867 regulator-max-microvolt = <1300000>;
868 regulator-boot-on;
869 rohm,dvs-run-voltage = <850000>;
873 regulator-name = "buck4";
874 regulator-min-microvolt = <700000>;
875 regulator-max-microvolt = <1300000>;
876 rohm,dvs-run-voltage = <930000>;
880 regulator-name = "buck5";
881 regulator-min-microvolt = <700000>;
882 regulator-max-microvolt = <1350000>;
883 regulator-boot-on;
884 regulator-always-on;
888 regulator-name = "buck6";
889 regulator-min-microvolt = <3000000>;
890 regulator-max-microvolt = <3300000>;
891 regulator-boot-on;
892 regulator-always-on;
896 regulator-name = "buck7";
897 regulator-min-microvolt = <1605000>;
898 regulator-max-microvolt = <1995000>;
899 regulator-boot-on;
900 regulator-always-on;
904 regulator-name = "buck8";
905 regulator-min-microvolt = <800000>;
906 regulator-max-microvolt = <1400000>;
907 regulator-boot-on;
908 regulator-always-on;
912 regulator-name = "ldo1";
913 regulator-min-microvolt = <3000000>;
914 regulator-max-microvolt = <3300000>;
915 regulator-boot-on;
917 regulator-always-on;
921 regulator-name = "ldo2";
922 regulator-min-microvolt = <900000>;
923 regulator-max-microvolt = <900000>;
924 regulator-boot-on;
926 regulator-always-on;
930 regulator-name = "ldo3";
931 regulator-min-microvolt = <1800000>;
932 regulator-max-microvolt = <3300000>;
933 regulator-boot-on;
934 regulator-always-on;
938 regulator-name = "ldo4";
939 regulator-min-microvolt = <900000>;
940 regulator-max-microvolt = <1800000>;
941 regulator-boot-on;
942 regulator-always-on;
946 /* VDD_PHY_0V9 - MIPI and HDMI domains */
947 regulator-name = "ldo5";
948 regulator-min-microvolt = <1800000>;
949 regulator-max-microvolt = <3300000>;
950 regulator-always-on;
954 /* VDD_PHY_0V9 - MIPI, HDMI and USB domains */
955 regulator-name = "ldo6";
956 regulator-min-microvolt = <900000>;
957 regulator-max-microvolt = <1800000>;
958 regulator-boot-on;
959 regulator-always-on;
963 /* VDD_PHY_3V3 - USB domain */
964 regulator-name = "ldo7";
965 regulator-min-microvolt = <1800000>;
966 regulator-max-microvolt = <3300000>;
967 regulator-boot-on;
968 regulator-always-on;
976 pinctrl-names = "default";
977 pinctrl-0 = <&pinctrl_rtc>;
978 interrupt-parent = <&gpio1>;
984 clock-frequency = <384000>;
985 pinctrl-names = "default";
986 pinctrl-0 = <&pinctrl_i2c2>;
990 compatible = "st,lsm9ds1-magn";
992 pinctrl-names = "default";
993 pinctrl-0 = <&pinctrl_mag>;
994 interrupt-parent = <&gpio3>;
996 vdd-supply = <®_vdd_sen>;
997 vddio-supply = <®_vdd_1v8>;
1005 regulator-name = "LCD_AVDD";
1006 vin-supply = <®_lcd_3v4>;
1010 regulator-name = "LCD_AVEE";
1011 vin-supply = <®_lcd_3v4>;
1018 pinctrl-names = "default";
1019 pinctrl-0 = <&pinctrl_prox>;
1020 interrupt-parent = <&gpio3>;
1024 accel_gyro: accel-gyro@6a {
1025 compatible = "st,lsm9ds1-imu";
1027 vdd-supply = <®_vdd_sen>;
1028 vddio-supply = <®_vdd_1v8>;
1033 clock-frequency = <384000>;
1034 pinctrl-names = "default";
1035 pinctrl-0 = <&pinctrl_i2c3>;
1038 codec: audio-codec@1a { label
1042 assigned-clocks = <&clk IMX8MQ_CLK_SAI2>;
1043 assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
1044 assigned-clock-rates = <24576000>;
1045 #sound-dai-cells = <0>;
1046 mic-cfg = <0x200>;
1047 DCVDD-supply = <®_aud_1v8>;
1048 DBVDD-supply = <®_aud_1v8>;
1049 AVDD-supply = <®_aud_1v8>;
1050 CPVDD-supply = <®_aud_1v8>;
1051 MICVDD-supply = <®_mic_2v4>;
1052 PLLVDD-supply = <®_aud_1v8>;
1053 SPKVDD1-supply = <®_vsys_3v4>;
1054 SPKVDD2-supply = <®_vsys_3v4>;
1055 gpio-cfg = <
1058 0x0013 /* gpio3, 2: dmicclk */
1068 pinctrl-names = "default";
1069 pinctrl-0 = <&pinctrl_csi1>;
1071 assigned-clocks = <&clk IMX8MQ_CLK_CLKO2>;
1072 assigned-clock-rates = <25000000>;
1073 reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
1074 vdda-supply = <®_vcam_2v8>;
1075 vddd-supply = <®_vcam_1v2>;
1076 vddio-supply = <®_csi_1v8>;
1082 data-lanes = <1 2>;
1083 link-frequencies = /bits/ 64
1085 remote-endpoint = <&mipi1_sensor_ep>;
1093 pinctrl-names = "default";
1094 pinctrl-0 = <&pinctrl_bl>;
1095 #address-cells = <1>;
1096 #size-cells = <0>;
1097 enable-gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
1098 vled-supply = <®_vsys_3v4>;
1099 ti,ovp-microvolt = <25000000>;
1104 linux,default-trigger = "backlight";
1105 led-max-microamp = <20000>;
1110 compatible = "edt,edt-ft5506";
1112 pinctrl-names = "default";
1113 pinctrl-0 = <&pinctrl_touch>;
1114 interrupt-parent = <&gpio1>;
1116 touchscreen-size-x = <720>;
1117 touchscreen-size-y = <1440>;
1118 vcc-supply = <®_lcd_1v8>;
1123 clock-frequency = <384000>;
1124 pinctrl-names = "default";
1125 pinctrl-0 = <&pinctrl_i2c4>;
1131 vcc-supply = <®_csi_1v8>;
1134 bat: fuel-gauge@36 {
1137 interrupt-parent = <&gpio3>;
1139 pinctrl-names = "default";
1140 pinctrl-0 = <&pinctrl_gauge>;
1141 power-supplies = <&bq25895>;
1142 maxim,over-heat-temp = <700>;
1143 maxim,over-volt = <4500>;
1144 maxim,rsns-microohm = <5000>;
1150 pinctrl-names = "default";
1151 pinctrl-0 = <&pinctrl_charger_in>;
1152 interrupt-parent = <&gpio3>;
1154 ti,battery-regulation-voltage = <4208000>; /* uV */
1155 ti,termination-current = <128000>; /* uA */
1156 ti,precharge-current = <128000>; /* uA */
1157 ti,minimum-sys-voltage = <3700000>; /* uV */
1158 ti,boost-voltage = <5000000>; /* uV */
1159 ti,boost-max-current = <1500000>; /* uA */
1160 monitored-battery = <&bat>;
1161 power-supplies = <&typec_pd>;
1170 assigned-clock-rates = <266000000>, <200000000>, <66000000>;
1178 remote-endpoint = <&camera1_ep>;
1179 data-lanes = <1 2>;
1186 #address-cells = <1>;
1187 #size-cells = <0>;
1191 compatible = "mantix,mlaf057we51-x";
1193 pinctrl-names = "default";
1194 pinctrl-0 = <&pinctrl_dsirst>;
1195 avdd-supply = <®_lcd_avdd>;
1196 avee-supply = <®_lcd_avee>;
1197 vddi-supply = <®_lcd_1v8>;
1199 reset-gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;
1200 mantix,tp-rstn-gpios = <&gpio1 24 GPIO_ACTIVE_LOW>;
1204 remote-endpoint = <&mipi_dsi_out>;
1214 remote-endpoint = <&panel_in>;
1221 power-supply = <&buck3_reg>;
1225 power-supply = <&ldo5_reg>;
1229 power-supply = <&buck4_reg>;
1233 pinctrl-names = "default";
1234 pinctrl-0 = <&pinctrl_haptic>;
1239 pinctrl-names = "default";
1240 pinctrl-0 = <&pinctrl_led_b>;
1245 pinctrl-names = "default";
1246 pinctrl-0 = <&pinctrl_led_r>;
1251 pinctrl-names = "default";
1252 pinctrl-0 = <&pinctrl_led_g>;
1257 pinctrl-names = "default";
1258 pinctrl-0 = <&pinctrl_sai2>;
1259 assigned-clocks = <&clk IMX8MQ_CLK_SAI2>;
1260 assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
1261 assigned-clock-rates = <24576000>;
1266 pinctrl-names = "default";
1267 pinctrl-0 = <&pinctrl_sai6>;
1268 assigned-clocks = <&clk IMX8MQ_CLK_SAI6>;
1269 assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
1270 assigned-clock-rates = <24576000>;
1271 fsl,sai-synchronous-rx;
1284 pinctrl-names = "default";
1285 pinctrl-0 = <&pinctrl_uart1>;
1289 &uart2 { /* TPS - GPS - DEBUG */
1290 pinctrl-names = "default";
1291 pinctrl-0 = <&pinctrl_uart2>;
1296 vcc-supply = <®_gnss>;
1297 current-speed = <9600>;
1302 pinctrl-names = "default";
1303 pinctrl-0 = <&pinctrl_uart3>;
1308 pinctrl-names = "default";
1309 pinctrl-0 = <&pinctrl_uart4>;
1310 uart-has-rtscts;
1319 vbus-supply = <®_hub>;
1325 usb-role-switch;
1329 #address-cells = <1>;
1330 #size-cells = <0>;
1336 remote-endpoint = <&usb_con_hs>;
1344 remote-endpoint = <&usb_con_ss>;
1353 #address-cells = <1>;
1354 #size-cells = <0>;
1360 #address-cells = <1>;
1361 #size-cells = <0>;
1363 mass-storage@1 {
1371 assigned-clocks = <&clk IMX8MQ_CLK_USDHC1>;
1372 assigned-clock-rates = <400000000>;
1373 pinctrl-names = "default", "state_100mhz", "state_200mhz";
1374 pinctrl-0 = <&pinctrl_usdhc1>;
1375 pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
1376 pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
1377 bus-width = <8>;
1378 vmmc-supply = <®_vdd_3v3>;
1379 vqmmc-supply = <®_vdd_1v8>;
1380 non-removable;
1385 assigned-clocks = <&clk IMX8MQ_CLK_USDHC2>;
1386 assigned-clock-rates = <200000000>;
1387 pinctrl-names = "default", "state_100mhz", "state_200mhz";
1388 pinctrl-0 = <&pinctrl_usdhc2>;
1389 pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
1390 pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
1391 bus-width = <4>;
1392 vmmc-supply = <®_wifi_3v3>;
1393 mmc-pwrseq = <&usdhc2_pwrseq>;
1394 post-power-on-delay-ms = <20>;
1395 cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
1396 max-frequency = <100000000>;
1397 disable-wp;
1398 cap-sdio-irq;
1399 keep-power-in-suspend;
1400 wakeup-source;
1405 pinctrl-names = "default";
1406 pinctrl-0 = <&pinctrl_wdog>;
1407 fsl,ext-reset-output;
1412 opp-1000000000 {
1413 opp-microvolt = <850000>;
1416 opp-1500000000 {
1417 opp-microvolt = <950000>;