191f480d4SOndrej Jirman// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
291f480d4SOndrej Jirman// Copyright (C) 2019 Icenowy Zheng <icenowy@aosc.xyz>
391f480d4SOndrej Jirman// Copyright (C) 2020 Martijn Braam <martijn@brixit.nl>
491f480d4SOndrej Jirman// Copyright (C) 2020 Ondrej Jirman <megous@megous.com>
591f480d4SOndrej Jirman
691f480d4SOndrej Jirman#include "sun50i-a64.dtsi"
791f480d4SOndrej Jirman#include "sun50i-a64-cpu-opp.dtsi"
891f480d4SOndrej Jirman
991f480d4SOndrej Jirman#include <dt-bindings/gpio/gpio.h>
1091f480d4SOndrej Jirman#include <dt-bindings/input/input.h>
1191f480d4SOndrej Jirman#include <dt-bindings/leds/common.h>
1291f480d4SOndrej Jirman#include <dt-bindings/pwm/pwm.h>
1391f480d4SOndrej Jirman
1491f480d4SOndrej Jirman/ {
1591f480d4SOndrej Jirman	aliases {
1691f480d4SOndrej Jirman		serial0 = &uart0;
1791f480d4SOndrej Jirman	};
1891f480d4SOndrej Jirman
19a6a22f82SIcenowy Zheng	backlight: backlight {
20a6a22f82SIcenowy Zheng		compatible = "pwm-backlight";
21a6a22f82SIcenowy Zheng		pwms = <&r_pwm 0 50000 PWM_POLARITY_INVERTED>;
22a6a22f82SIcenowy Zheng		enable-gpios = <&pio 7 10 GPIO_ACTIVE_HIGH>; /* PH10 */
23a6a22f82SIcenowy Zheng		/* Backlight configuration differs per PinePhone revision. */
24a6a22f82SIcenowy Zheng	};
25a6a22f82SIcenowy Zheng
2691f480d4SOndrej Jirman	chosen {
2791f480d4SOndrej Jirman		stdout-path = "serial0:115200n8";
2891f480d4SOndrej Jirman	};
2991f480d4SOndrej Jirman
3091f480d4SOndrej Jirman	leds {
3191f480d4SOndrej Jirman		compatible = "gpio-leds";
3291f480d4SOndrej Jirman
3391f480d4SOndrej Jirman		blue {
3491f480d4SOndrej Jirman			function = LED_FUNCTION_INDICATOR;
3591f480d4SOndrej Jirman			color = <LED_COLOR_ID_BLUE>;
3691f480d4SOndrej Jirman			gpios = <&pio 3 20 GPIO_ACTIVE_HIGH>; /* PD20 */
3791f480d4SOndrej Jirman		};
3891f480d4SOndrej Jirman
3991f480d4SOndrej Jirman		green {
4091f480d4SOndrej Jirman			function = LED_FUNCTION_INDICATOR;
4191f480d4SOndrej Jirman			color = <LED_COLOR_ID_GREEN>;
4291f480d4SOndrej Jirman			gpios = <&pio 3 18 GPIO_ACTIVE_HIGH>; /* PD18 */
4391f480d4SOndrej Jirman		};
4491f480d4SOndrej Jirman
4591f480d4SOndrej Jirman		red {
4691f480d4SOndrej Jirman			function = LED_FUNCTION_INDICATOR;
4791f480d4SOndrej Jirman			color = <LED_COLOR_ID_RED>;
4891f480d4SOndrej Jirman			gpios = <&pio 3 19 GPIO_ACTIVE_HIGH>; /* PD19 */
4991f480d4SOndrej Jirman		};
5091f480d4SOndrej Jirman	};
5191f480d4SOndrej Jirman
5291f480d4SOndrej Jirman	speaker_amp: audio-amplifier {
5391f480d4SOndrej Jirman		compatible = "simple-audio-amplifier";
5491f480d4SOndrej Jirman		enable-gpios = <&pio 2 7 GPIO_ACTIVE_HIGH>; /* PC7 */
5591f480d4SOndrej Jirman		sound-name-prefix = "Speaker Amp";
5691f480d4SOndrej Jirman	};
5791f480d4SOndrej Jirman
5891f480d4SOndrej Jirman	vibrator {
5991f480d4SOndrej Jirman		compatible = "gpio-vibrator";
6091f480d4SOndrej Jirman		enable-gpios = <&pio 3 2 GPIO_ACTIVE_HIGH>; /* PD2 */
6191f480d4SOndrej Jirman		vcc-supply = <&reg_dcdc1>;
6291f480d4SOndrej Jirman	};
6391f480d4SOndrej Jirman};
6491f480d4SOndrej Jirman
6591f480d4SOndrej Jirman&codec {
6691f480d4SOndrej Jirman	status = "okay";
6791f480d4SOndrej Jirman};
6891f480d4SOndrej Jirman
6991f480d4SOndrej Jirman&codec_analog {
7091f480d4SOndrej Jirman	cpvdd-supply = <&reg_eldo1>;
7191f480d4SOndrej Jirman	status = "okay";
7291f480d4SOndrej Jirman};
7391f480d4SOndrej Jirman
7491f480d4SOndrej Jirman&cpu0 {
7591f480d4SOndrej Jirman	cpu-supply = <&reg_dcdc2>;
7691f480d4SOndrej Jirman};
7791f480d4SOndrej Jirman
7891f480d4SOndrej Jirman&cpu1 {
7991f480d4SOndrej Jirman	cpu-supply = <&reg_dcdc2>;
8091f480d4SOndrej Jirman};
8191f480d4SOndrej Jirman
8291f480d4SOndrej Jirman&cpu2 {
8391f480d4SOndrej Jirman	cpu-supply = <&reg_dcdc2>;
8491f480d4SOndrej Jirman};
8591f480d4SOndrej Jirman
8691f480d4SOndrej Jirman&cpu3 {
8791f480d4SOndrej Jirman	cpu-supply = <&reg_dcdc2>;
8891f480d4SOndrej Jirman};
8991f480d4SOndrej Jirman
9091f480d4SOndrej Jirman&dai {
9191f480d4SOndrej Jirman	status = "okay";
9291f480d4SOndrej Jirman};
9391f480d4SOndrej Jirman
94a6a22f82SIcenowy Zheng&de {
95a6a22f82SIcenowy Zheng	status = "okay";
96a6a22f82SIcenowy Zheng};
97a6a22f82SIcenowy Zheng
98a6a22f82SIcenowy Zheng&dphy {
99a6a22f82SIcenowy Zheng	status = "okay";
100a6a22f82SIcenowy Zheng};
101a6a22f82SIcenowy Zheng
102a6a22f82SIcenowy Zheng&dsi {
103a6a22f82SIcenowy Zheng	vcc-dsi-supply = <&reg_dldo1>;
104a6a22f82SIcenowy Zheng	status = "okay";
105a6a22f82SIcenowy Zheng
106a6a22f82SIcenowy Zheng	panel@0 {
107a6a22f82SIcenowy Zheng		compatible = "xingbangda,xbd599";
108a6a22f82SIcenowy Zheng		reg = <0>;
109a6a22f82SIcenowy Zheng		reset-gpios = <&pio 3 23 GPIO_ACTIVE_LOW>; /* PD23 */
110a6a22f82SIcenowy Zheng		iovcc-supply = <&reg_dldo2>;
111a6a22f82SIcenowy Zheng		vcc-supply = <&reg_ldo_io0>;
112a6a22f82SIcenowy Zheng		backlight = <&backlight>;
113a6a22f82SIcenowy Zheng	};
114a6a22f82SIcenowy Zheng};
115a6a22f82SIcenowy Zheng
11691f480d4SOndrej Jirman&ehci0 {
11791f480d4SOndrej Jirman	status = "okay";
11891f480d4SOndrej Jirman};
11991f480d4SOndrej Jirman
12091f480d4SOndrej Jirman&ehci1 {
12191f480d4SOndrej Jirman	status = "okay";
12291f480d4SOndrej Jirman};
12391f480d4SOndrej Jirman
12460f2de5fSOndrej Jirman&i2c0 {
12560f2de5fSOndrej Jirman	status = "okay";
12660f2de5fSOndrej Jirman
12760f2de5fSOndrej Jirman	touchscreen@5d {
12860f2de5fSOndrej Jirman		compatible = "goodix,gt917s";
12960f2de5fSOndrej Jirman		reg = <0x5d>;
13060f2de5fSOndrej Jirman		interrupt-parent = <&pio>;
13160f2de5fSOndrej Jirman		interrupts = <7 4 IRQ_TYPE_LEVEL_HIGH>; /* PH4 */
13260f2de5fSOndrej Jirman		irq-gpios = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */
13360f2de5fSOndrej Jirman		reset-gpios = <&pio 7 11 GPIO_ACTIVE_HIGH>; /* PH11 */
13460f2de5fSOndrej Jirman		AVDD28-supply = <&reg_ldo_io0>;
13560f2de5fSOndrej Jirman		VDDIO-supply = <&reg_ldo_io0>;
13660f2de5fSOndrej Jirman		touchscreen-size-x = <720>;
13760f2de5fSOndrej Jirman		touchscreen-size-y = <1440>;
13860f2de5fSOndrej Jirman	};
13960f2de5fSOndrej Jirman};
14060f2de5fSOndrej Jirman
14191f480d4SOndrej Jirman&i2c1 {
14291f480d4SOndrej Jirman	status = "okay";
14391f480d4SOndrej Jirman
14491f480d4SOndrej Jirman	/* Magnetometer */
14591f480d4SOndrej Jirman	lis3mdl@1e {
14691f480d4SOndrej Jirman		compatible = "st,lis3mdl-magn";
14791f480d4SOndrej Jirman		reg = <0x1e>;
14891f480d4SOndrej Jirman		vdd-supply = <&reg_dldo1>;
14991f480d4SOndrej Jirman		vddio-supply = <&reg_dldo1>;
15091f480d4SOndrej Jirman	};
15191f480d4SOndrej Jirman
15291f480d4SOndrej Jirman	/* Accelerometer/gyroscope */
15391f480d4SOndrej Jirman	mpu6050@68 {
15491f480d4SOndrej Jirman		compatible = "invensense,mpu6050";
15591f480d4SOndrej Jirman		reg = <0x68>;
15691f480d4SOndrej Jirman		interrupt-parent = <&pio>;
15791f480d4SOndrej Jirman		interrupts = <7 5 IRQ_TYPE_EDGE_RISING>; /* PH5 */
15891f480d4SOndrej Jirman		vdd-supply = <&reg_dldo1>;
15991f480d4SOndrej Jirman		vddio-supply = <&reg_dldo1>;
16091f480d4SOndrej Jirman	};
16191f480d4SOndrej Jirman};
16291f480d4SOndrej Jirman
16391f480d4SOndrej Jirman/* Connected to pogo pins (external spring based pinheader for user addons) */
16491f480d4SOndrej Jirman&i2c2 {
16591f480d4SOndrej Jirman	status = "okay";
16691f480d4SOndrej Jirman};
16791f480d4SOndrej Jirman
16891f480d4SOndrej Jirman&lradc {
16991f480d4SOndrej Jirman	vref-supply = <&reg_aldo3>;
17091f480d4SOndrej Jirman	status = "okay";
17191f480d4SOndrej Jirman
17291f480d4SOndrej Jirman	button-200 {
17391f480d4SOndrej Jirman		label = "Volume Up";
17491f480d4SOndrej Jirman		linux,code = <KEY_VOLUMEUP>;
17591f480d4SOndrej Jirman		channel = <0>;
17691f480d4SOndrej Jirman		voltage = <200000>;
17791f480d4SOndrej Jirman	};
17891f480d4SOndrej Jirman
17991f480d4SOndrej Jirman	button-400 {
18091f480d4SOndrej Jirman		label = "Volume Down";
18191f480d4SOndrej Jirman		linux,code = <KEY_VOLUMEDOWN>;
18291f480d4SOndrej Jirman		channel = <0>;
18391f480d4SOndrej Jirman		voltage = <400000>;
18491f480d4SOndrej Jirman	};
18591f480d4SOndrej Jirman};
18691f480d4SOndrej Jirman
18791f480d4SOndrej Jirman&mmc0 {
18891f480d4SOndrej Jirman	pinctrl-names = "default";
18991f480d4SOndrej Jirman	pinctrl-0 = <&mmc0_pins>;
19091f480d4SOndrej Jirman	vmmc-supply = <&reg_dcdc1>;
19191f480d4SOndrej Jirman	vqmmc-supply = <&reg_dcdc1>;
19291f480d4SOndrej Jirman	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
19391f480d4SOndrej Jirman	disable-wp;
19491f480d4SOndrej Jirman	bus-width = <4>;
19591f480d4SOndrej Jirman	status = "okay";
19691f480d4SOndrej Jirman};
19791f480d4SOndrej Jirman
19891f480d4SOndrej Jirman&mmc2 {
19991f480d4SOndrej Jirman	pinctrl-names = "default";
20091f480d4SOndrej Jirman	pinctrl-0 = <&mmc2_pins>;
20191f480d4SOndrej Jirman	vmmc-supply = <&reg_dcdc1>;
20291f480d4SOndrej Jirman	vqmmc-supply = <&reg_dcdc1>;
20391f480d4SOndrej Jirman	bus-width = <8>;
20491f480d4SOndrej Jirman	non-removable;
20591f480d4SOndrej Jirman	cap-mmc-hw-reset;
20691f480d4SOndrej Jirman	status = "okay";
20791f480d4SOndrej Jirman};
20891f480d4SOndrej Jirman
20991f480d4SOndrej Jirman&ohci0 {
21091f480d4SOndrej Jirman	status = "okay";
21191f480d4SOndrej Jirman};
21291f480d4SOndrej Jirman
21391f480d4SOndrej Jirman&ohci1 {
21491f480d4SOndrej Jirman	status = "okay";
21591f480d4SOndrej Jirman};
21691f480d4SOndrej Jirman
21791f480d4SOndrej Jirman&pio {
21891f480d4SOndrej Jirman	vcc-pb-supply = <&reg_dcdc1>;
21991f480d4SOndrej Jirman	vcc-pc-supply = <&reg_dcdc1>;
22091f480d4SOndrej Jirman	vcc-pd-supply = <&reg_dcdc1>;
22191f480d4SOndrej Jirman	vcc-pe-supply = <&reg_aldo1>;
22291f480d4SOndrej Jirman	vcc-pf-supply = <&reg_dcdc1>;
22391f480d4SOndrej Jirman	vcc-pg-supply = <&reg_dldo4>;
22491f480d4SOndrej Jirman	vcc-ph-supply = <&reg_dcdc1>;
22591f480d4SOndrej Jirman};
22691f480d4SOndrej Jirman
22791f480d4SOndrej Jirman&r_pio {
22891f480d4SOndrej Jirman	/*
22991f480d4SOndrej Jirman	 * FIXME: We can't add that supply for now since it would
23091f480d4SOndrej Jirman	 * create a circular dependency between pinctrl, the regulator
23191f480d4SOndrej Jirman	 * and the RSB Bus.
23291f480d4SOndrej Jirman	 *
23391f480d4SOndrej Jirman	 * vcc-pl-supply = <&reg_aldo2>;
23491f480d4SOndrej Jirman	 */
23591f480d4SOndrej Jirman};
23691f480d4SOndrej Jirman
237a6a22f82SIcenowy Zheng&r_pwm {
238a6a22f82SIcenowy Zheng	status = "okay";
239a6a22f82SIcenowy Zheng};
240a6a22f82SIcenowy Zheng
24191f480d4SOndrej Jirman&r_rsb {
24291f480d4SOndrej Jirman	status = "okay";
24391f480d4SOndrej Jirman
24491f480d4SOndrej Jirman	axp803: pmic@3a3 {
24591f480d4SOndrej Jirman		compatible = "x-powers,axp803";
24691f480d4SOndrej Jirman		reg = <0x3a3>;
24791f480d4SOndrej Jirman		interrupt-parent = <&r_intc>;
24891f480d4SOndrej Jirman		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
24991f480d4SOndrej Jirman	};
25091f480d4SOndrej Jirman};
25191f480d4SOndrej Jirman
25291f480d4SOndrej Jirman#include "axp803.dtsi"
25391f480d4SOndrej Jirman
25491f480d4SOndrej Jirman&ac_power_supply {
25591f480d4SOndrej Jirman	status = "okay";
25691f480d4SOndrej Jirman};
25791f480d4SOndrej Jirman
25891f480d4SOndrej Jirman&battery_power_supply {
25991f480d4SOndrej Jirman	status = "okay";
26091f480d4SOndrej Jirman};
26191f480d4SOndrej Jirman
26291f480d4SOndrej Jirman&reg_aldo1 {
26391f480d4SOndrej Jirman	regulator-min-microvolt = <1800000>;
26491f480d4SOndrej Jirman	regulator-max-microvolt = <1800000>;
26591f480d4SOndrej Jirman	regulator-name = "dovdd-csi";
26691f480d4SOndrej Jirman};
26791f480d4SOndrej Jirman
26891f480d4SOndrej Jirman&reg_aldo2 {
26991f480d4SOndrej Jirman	regulator-always-on;
27091f480d4SOndrej Jirman	regulator-min-microvolt = <1800000>;
27191f480d4SOndrej Jirman	regulator-max-microvolt = <1800000>;
27291f480d4SOndrej Jirman	regulator-name = "vcc-pl";
27391f480d4SOndrej Jirman};
27491f480d4SOndrej Jirman
27591f480d4SOndrej Jirman&reg_aldo3 {
27691f480d4SOndrej Jirman	regulator-always-on;
27791f480d4SOndrej Jirman	regulator-min-microvolt = <2700000>;
27891f480d4SOndrej Jirman	regulator-max-microvolt = <3300000>;
27991f480d4SOndrej Jirman	regulator-name = "vcc-pll-avcc";
28091f480d4SOndrej Jirman};
28191f480d4SOndrej Jirman
28291f480d4SOndrej Jirman&reg_dcdc1 {
28391f480d4SOndrej Jirman	regulator-always-on;
28491f480d4SOndrej Jirman	regulator-min-microvolt = <3300000>;
28591f480d4SOndrej Jirman	regulator-max-microvolt = <3300000>;
28691f480d4SOndrej Jirman	regulator-name = "vcc-3v3";
28791f480d4SOndrej Jirman};
28891f480d4SOndrej Jirman
28991f480d4SOndrej Jirman&reg_dcdc2 {
29091f480d4SOndrej Jirman	regulator-always-on;
29191f480d4SOndrej Jirman	regulator-min-microvolt = <1000000>;
29291f480d4SOndrej Jirman	regulator-max-microvolt = <1300000>;
29391f480d4SOndrej Jirman	regulator-name = "vdd-cpux";
29491f480d4SOndrej Jirman};
29591f480d4SOndrej Jirman
29691f480d4SOndrej Jirman/* DCDC3 is polyphased with DCDC2 */
29791f480d4SOndrej Jirman
29891f480d4SOndrej Jirman&reg_dcdc5 {
29991f480d4SOndrej Jirman	regulator-always-on;
30091f480d4SOndrej Jirman	regulator-min-microvolt = <1200000>;
30191f480d4SOndrej Jirman	regulator-max-microvolt = <1200000>;
30291f480d4SOndrej Jirman	regulator-name = "vcc-dram";
30391f480d4SOndrej Jirman};
30491f480d4SOndrej Jirman
30591f480d4SOndrej Jirman&reg_dcdc6 {
30691f480d4SOndrej Jirman	regulator-always-on;
30791f480d4SOndrej Jirman	regulator-min-microvolt = <1100000>;
30891f480d4SOndrej Jirman	regulator-max-microvolt = <1100000>;
30991f480d4SOndrej Jirman	regulator-name = "vdd-sys";
31091f480d4SOndrej Jirman};
31191f480d4SOndrej Jirman
31291f480d4SOndrej Jirman&reg_dldo1 {
31391f480d4SOndrej Jirman	regulator-min-microvolt = <3300000>;
31491f480d4SOndrej Jirman	regulator-max-microvolt = <3300000>;
31591f480d4SOndrej Jirman	regulator-name = "vcc-dsi-sensor";
31691f480d4SOndrej Jirman};
31791f480d4SOndrej Jirman
31891f480d4SOndrej Jirman&reg_dldo2 {
31991f480d4SOndrej Jirman	regulator-min-microvolt = <1800000>;
32091f480d4SOndrej Jirman	regulator-max-microvolt = <1800000>;
32191f480d4SOndrej Jirman	regulator-name = "vcc-mipi-io";
32291f480d4SOndrej Jirman};
32391f480d4SOndrej Jirman
32491f480d4SOndrej Jirman&reg_dldo3 {
32591f480d4SOndrej Jirman	regulator-min-microvolt = <2800000>;
32691f480d4SOndrej Jirman	regulator-max-microvolt = <2800000>;
32791f480d4SOndrej Jirman	regulator-name = "avdd-csi";
32891f480d4SOndrej Jirman};
32991f480d4SOndrej Jirman
33091f480d4SOndrej Jirman&reg_dldo4 {
33191f480d4SOndrej Jirman	regulator-min-microvolt = <1800000>;
33291f480d4SOndrej Jirman	regulator-max-microvolt = <3300000>;
33391f480d4SOndrej Jirman	regulator-name = "vcc-wifi-io";
33491f480d4SOndrej Jirman};
33591f480d4SOndrej Jirman
33691f480d4SOndrej Jirman&reg_eldo1 {
33791f480d4SOndrej Jirman	regulator-always-on;
33891f480d4SOndrej Jirman	regulator-min-microvolt = <1800000>;
33991f480d4SOndrej Jirman	regulator-max-microvolt = <1800000>;
34091f480d4SOndrej Jirman	regulator-name = "vcc-lpddr";
34191f480d4SOndrej Jirman};
34291f480d4SOndrej Jirman
34391f480d4SOndrej Jirman&reg_eldo3 {
34491f480d4SOndrej Jirman	regulator-min-microvolt = <1800000>;
34591f480d4SOndrej Jirman	regulator-max-microvolt = <1800000>;
34691f480d4SOndrej Jirman	regulator-name = "dvdd-1v8-csi";
34791f480d4SOndrej Jirman};
34891f480d4SOndrej Jirman
34991f480d4SOndrej Jirman&reg_fldo1 {
35091f480d4SOndrej Jirman	regulator-min-microvolt = <1200000>;
35191f480d4SOndrej Jirman	regulator-max-microvolt = <1200000>;
35291f480d4SOndrej Jirman	regulator-name = "vcc-1v2-hsic";
35391f480d4SOndrej Jirman};
35491f480d4SOndrej Jirman
35591f480d4SOndrej Jirman&reg_fldo2 {
35691f480d4SOndrej Jirman	regulator-always-on;
35791f480d4SOndrej Jirman	regulator-min-microvolt = <1100000>;
35891f480d4SOndrej Jirman	regulator-max-microvolt = <1100000>;
35991f480d4SOndrej Jirman	regulator-name = "vdd-cpus";
36091f480d4SOndrej Jirman};
36191f480d4SOndrej Jirman
36291f480d4SOndrej Jirman&reg_ldo_io0 {
36391f480d4SOndrej Jirman	regulator-min-microvolt = <3300000>;
36491f480d4SOndrej Jirman	regulator-max-microvolt = <3300000>;
36591f480d4SOndrej Jirman	regulator-name = "vcc-lcd-ctp-stk";
36691f480d4SOndrej Jirman	status = "okay";
36791f480d4SOndrej Jirman};
36891f480d4SOndrej Jirman
36991f480d4SOndrej Jirman&reg_ldo_io1 {
37091f480d4SOndrej Jirman	regulator-min-microvolt = <1800000>;
37191f480d4SOndrej Jirman	regulator-max-microvolt = <1800000>;
37291f480d4SOndrej Jirman	regulator-name = "vcc-1v8-typec";
37391f480d4SOndrej Jirman	status = "okay";
37491f480d4SOndrej Jirman};
37591f480d4SOndrej Jirman
37691f480d4SOndrej Jirman&reg_rtc_ldo {
37791f480d4SOndrej Jirman	regulator-name = "vcc-rtc";
37891f480d4SOndrej Jirman};
37991f480d4SOndrej Jirman
38091f480d4SOndrej Jirman&sound {
38191f480d4SOndrej Jirman	status = "okay";
38291f480d4SOndrej Jirman	simple-audio-card,aux-devs = <&codec_analog>, <&speaker_amp>;
38391f480d4SOndrej Jirman	simple-audio-card,widgets = "Microphone", "Headset Microphone",
38491f480d4SOndrej Jirman				    "Microphone", "Internal Microphone",
38591f480d4SOndrej Jirman				    "Headphone", "Headphone Jack",
38691f480d4SOndrej Jirman				    "Speaker", "Internal Earpiece",
38791f480d4SOndrej Jirman				    "Speaker", "Internal Speaker";
38891f480d4SOndrej Jirman	simple-audio-card,routing =
38991f480d4SOndrej Jirman			"Headphone Jack", "HP",
39091f480d4SOndrej Jirman			"Internal Earpiece", "EARPIECE",
39191f480d4SOndrej Jirman			"Internal Speaker", "Speaker Amp OUTL",
39291f480d4SOndrej Jirman			"Internal Speaker", "Speaker Amp OUTR",
39391f480d4SOndrej Jirman			"Speaker Amp INL", "LINEOUT",
39491f480d4SOndrej Jirman			"Speaker Amp INR", "LINEOUT",
39591f480d4SOndrej Jirman			"Left DAC", "AIF1 Slot 0 Left",
39691f480d4SOndrej Jirman			"Right DAC", "AIF1 Slot 0 Right",
39791f480d4SOndrej Jirman			"AIF1 Slot 0 Left ADC", "Left ADC",
39891f480d4SOndrej Jirman			"AIF1 Slot 0 Right ADC", "Right ADC",
39991f480d4SOndrej Jirman			"Internal Microphone", "MBIAS",
40091f480d4SOndrej Jirman			"MIC1", "Internal Microphone",
40191f480d4SOndrej Jirman			"Headset Microphone", "HBIAS",
40291f480d4SOndrej Jirman			"MIC2", "Headset Microphone";
40391f480d4SOndrej Jirman};
40491f480d4SOndrej Jirman
40591f480d4SOndrej Jirman&uart0 {
40691f480d4SOndrej Jirman	pinctrl-names = "default";
40791f480d4SOndrej Jirman	pinctrl-0 = <&uart0_pb_pins>;
40891f480d4SOndrej Jirman	status = "okay";
40991f480d4SOndrej Jirman};
41091f480d4SOndrej Jirman
41191f480d4SOndrej Jirman/* Connected to the modem (hardware flow control can't be used) */
41291f480d4SOndrej Jirman&uart3 {
41391f480d4SOndrej Jirman	pinctrl-names = "default";
41491f480d4SOndrej Jirman	pinctrl-0 = <&uart3_pins>;
41591f480d4SOndrej Jirman	status = "okay";
41691f480d4SOndrej Jirman};
41791f480d4SOndrej Jirman
41891f480d4SOndrej Jirman&usb_otg {
41991f480d4SOndrej Jirman	dr_mode = "peripheral";
42091f480d4SOndrej Jirman	status = "okay";
42191f480d4SOndrej Jirman};
42291f480d4SOndrej Jirman
42391f480d4SOndrej Jirman&usb_power_supply {
42491f480d4SOndrej Jirman	status = "okay";
42591f480d4SOndrej Jirman};
42691f480d4SOndrej Jirman
42791f480d4SOndrej Jirman&usbphy {
42891f480d4SOndrej Jirman	status = "okay";
42991f480d4SOndrej Jirman};
430