xref: /freebsd/sys/contrib/device-tree/src/arm64/exynos/google/gs101-pixel-common.dtsi (revision 833e5d42ab135b0238e61c5b3c19b8619677cbfa)
18ccc0d23SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
28ccc0d23SEmmanuel Vadot/*
38ccc0d23SEmmanuel Vadot * Device Tree nodes common for all GS101-based Pixel
48ccc0d23SEmmanuel Vadot *
58ccc0d23SEmmanuel Vadot * Copyright 2021-2023 Google LLC
68ccc0d23SEmmanuel Vadot * Copyright 2023 Linaro Ltd - <peter.griffin@linaro.org>
78ccc0d23SEmmanuel Vadot */
88ccc0d23SEmmanuel Vadot
98ccc0d23SEmmanuel Vadot/dts-v1/;
108ccc0d23SEmmanuel Vadot
118ccc0d23SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
128ccc0d23SEmmanuel Vadot#include <dt-bindings/input/input.h>
138ccc0d23SEmmanuel Vadot#include <dt-bindings/usb/pd.h>
148ccc0d23SEmmanuel Vadot#include "gs101-pinctrl.h"
158ccc0d23SEmmanuel Vadot#include "gs101.dtsi"
168ccc0d23SEmmanuel Vadot
178ccc0d23SEmmanuel Vadot/ {
188ccc0d23SEmmanuel Vadot	aliases {
198ccc0d23SEmmanuel Vadot		serial0 = &serial_0;
208ccc0d23SEmmanuel Vadot	};
218ccc0d23SEmmanuel Vadot
228ccc0d23SEmmanuel Vadot	chosen {
238ccc0d23SEmmanuel Vadot		/* Bootloader expects bootargs specified otherwise it crashes */
248ccc0d23SEmmanuel Vadot		bootargs = "";
258ccc0d23SEmmanuel Vadot		stdout-path = &serial_0;
268ccc0d23SEmmanuel Vadot
278ccc0d23SEmmanuel Vadot		/* Use display framebuffer as setup by bootloader */
288ccc0d23SEmmanuel Vadot		framebuffer0: framebuffer-0 {
298ccc0d23SEmmanuel Vadot			compatible = "simple-framebuffer";
308ccc0d23SEmmanuel Vadot			memory-region = <&cont_splash_mem>;
318ccc0d23SEmmanuel Vadot			/* format properties to be added by actual board */
328ccc0d23SEmmanuel Vadot			status = "disabled";
338ccc0d23SEmmanuel Vadot		};
348ccc0d23SEmmanuel Vadot	};
358ccc0d23SEmmanuel Vadot
368ccc0d23SEmmanuel Vadot	gpio-keys {
378ccc0d23SEmmanuel Vadot		compatible = "gpio-keys";
388ccc0d23SEmmanuel Vadot		pinctrl-0 = <&key_voldown>, <&key_volup>, <&key_power>;
398ccc0d23SEmmanuel Vadot		pinctrl-names = "default";
408ccc0d23SEmmanuel Vadot
418ccc0d23SEmmanuel Vadot		button-vol-down {
428ccc0d23SEmmanuel Vadot			label = "KEY_VOLUMEDOWN";
438ccc0d23SEmmanuel Vadot			linux,code = <KEY_VOLUMEDOWN>;
448ccc0d23SEmmanuel Vadot			gpios = <&gpa7 3 GPIO_ACTIVE_LOW>;
458ccc0d23SEmmanuel Vadot			wakeup-source;
468ccc0d23SEmmanuel Vadot		};
478ccc0d23SEmmanuel Vadot
488ccc0d23SEmmanuel Vadot		button-vol-up {
498ccc0d23SEmmanuel Vadot			label = "KEY_VOLUMEUP";
508ccc0d23SEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
518ccc0d23SEmmanuel Vadot			gpios = <&gpa8 1 GPIO_ACTIVE_LOW>;
528ccc0d23SEmmanuel Vadot			wakeup-source;
538ccc0d23SEmmanuel Vadot		};
548ccc0d23SEmmanuel Vadot
558ccc0d23SEmmanuel Vadot		button-power {
568ccc0d23SEmmanuel Vadot			label = "KEY_POWER";
578ccc0d23SEmmanuel Vadot			linux,code = <KEY_POWER>;
588ccc0d23SEmmanuel Vadot			gpios = <&gpa10 1 GPIO_ACTIVE_LOW>;
598ccc0d23SEmmanuel Vadot			wakeup-source;
608ccc0d23SEmmanuel Vadot		};
618ccc0d23SEmmanuel Vadot	};
628ccc0d23SEmmanuel Vadot
63*833e5d42SEmmanuel Vadot	reboot-mode {
64*833e5d42SEmmanuel Vadot		compatible = "nvmem-reboot-mode";
65*833e5d42SEmmanuel Vadot		nvmem-cells = <&nvmem_reboot_mode>;
66*833e5d42SEmmanuel Vadot		nvmem-cell-names = "reboot-mode";
67*833e5d42SEmmanuel Vadot		mode-bootloader = <0x800000fc>;
68*833e5d42SEmmanuel Vadot		mode-charge = <0x8000000a>;
69*833e5d42SEmmanuel Vadot		mode-dm-verity-device-corrupted = <0x80000050>;
70*833e5d42SEmmanuel Vadot		mode-fastboot = <0x800000fa>;
71*833e5d42SEmmanuel Vadot		mode-reboot-ab-update = <0x80000052>;
72*833e5d42SEmmanuel Vadot		mode-recovery = <0x800000ff>;
73*833e5d42SEmmanuel Vadot		mode-rescue = <0x800000f9>;
74*833e5d42SEmmanuel Vadot		mode-shutdown-thermal = <0x80000051>;
75*833e5d42SEmmanuel Vadot		mode-shutdown-thermal-battery = <0x80000051>;
76*833e5d42SEmmanuel Vadot	};
77*833e5d42SEmmanuel Vadot
788ccc0d23SEmmanuel Vadot	/* TODO: Remove this once PMIC is implemented  */
798ccc0d23SEmmanuel Vadot	reg_placeholder: regulator-0 {
808ccc0d23SEmmanuel Vadot		compatible = "regulator-fixed";
818ccc0d23SEmmanuel Vadot		regulator-name = "placeholder_reg";
828ccc0d23SEmmanuel Vadot	};
838ccc0d23SEmmanuel Vadot
848ccc0d23SEmmanuel Vadot	/* TODO: Remove this once S2MPG11 slave PMIC is implemented  */
858ccc0d23SEmmanuel Vadot	ufs_0_fixed_vcc_reg: regulator-1 {
868ccc0d23SEmmanuel Vadot		compatible = "regulator-fixed";
878ccc0d23SEmmanuel Vadot		regulator-name = "ufs-vcc";
888ccc0d23SEmmanuel Vadot		gpio = <&gpp0 1 GPIO_ACTIVE_HIGH>;
898ccc0d23SEmmanuel Vadot		regulator-boot-on;
908ccc0d23SEmmanuel Vadot		enable-active-high;
918ccc0d23SEmmanuel Vadot	};
928ccc0d23SEmmanuel Vadot
938ccc0d23SEmmanuel Vadot	reserved-memory {
948ccc0d23SEmmanuel Vadot		cont_splash_mem: splash@fac00000 {
958ccc0d23SEmmanuel Vadot			/* size to be updated by actual board */
968ccc0d23SEmmanuel Vadot			reg = <0x0 0xfac00000 0x0>;
978ccc0d23SEmmanuel Vadot			no-map;
988ccc0d23SEmmanuel Vadot			status = "disabled";
998ccc0d23SEmmanuel Vadot		};
1008ccc0d23SEmmanuel Vadot	};
1018ccc0d23SEmmanuel Vadot};
1028ccc0d23SEmmanuel Vadot
103*833e5d42SEmmanuel Vadot&acpm_ipc {
104*833e5d42SEmmanuel Vadot	pmic {
105*833e5d42SEmmanuel Vadot		compatible = "samsung,s2mpg10-pmic";
106*833e5d42SEmmanuel Vadot		interrupts-extended = <&gpa0 6 IRQ_TYPE_LEVEL_LOW>;
107*833e5d42SEmmanuel Vadot		pinctrl-names = "default";
108*833e5d42SEmmanuel Vadot		pinctrl-0 = <&pmic_int>;
109*833e5d42SEmmanuel Vadot		system-power-controller;
110*833e5d42SEmmanuel Vadot		wakeup-source;
111*833e5d42SEmmanuel Vadot
112*833e5d42SEmmanuel Vadot		regulators {
113*833e5d42SEmmanuel Vadot		};
114*833e5d42SEmmanuel Vadot	};
115*833e5d42SEmmanuel Vadot};
116*833e5d42SEmmanuel Vadot
1178ccc0d23SEmmanuel Vadot&ext_24_5m {
1188ccc0d23SEmmanuel Vadot	clock-frequency = <24576000>;
1198ccc0d23SEmmanuel Vadot};
1208ccc0d23SEmmanuel Vadot
1218ccc0d23SEmmanuel Vadot&ext_200m {
1228ccc0d23SEmmanuel Vadot	clock-frequency = <200000000>;
1238ccc0d23SEmmanuel Vadot};
1248ccc0d23SEmmanuel Vadot
1258ccc0d23SEmmanuel Vadot&hsi2c_8 {
1268ccc0d23SEmmanuel Vadot	status = "okay";
1278ccc0d23SEmmanuel Vadot
1288ccc0d23SEmmanuel Vadot	eeprom: eeprom@50 {
1298ccc0d23SEmmanuel Vadot		compatible = "atmel,24c08";
1308ccc0d23SEmmanuel Vadot		reg = <0x50>;
1318ccc0d23SEmmanuel Vadot	};
1328ccc0d23SEmmanuel Vadot};
1338ccc0d23SEmmanuel Vadot
1348ccc0d23SEmmanuel Vadot&hsi2c_12 {
1358ccc0d23SEmmanuel Vadot	status = "okay";
1368ccc0d23SEmmanuel Vadot	/* TODO: add the devices once drivers exist */
1378ccc0d23SEmmanuel Vadot
1388ccc0d23SEmmanuel Vadot	usb-typec@25 {
1398ccc0d23SEmmanuel Vadot		compatible = "maxim,max77759-tcpci", "maxim,max33359";
1408ccc0d23SEmmanuel Vadot		reg = <0x25>;
1418ccc0d23SEmmanuel Vadot		interrupts-extended = <&gpa8 2 IRQ_TYPE_LEVEL_LOW>;
1428ccc0d23SEmmanuel Vadot		pinctrl-0 = <&typec_int>;
1438ccc0d23SEmmanuel Vadot		pinctrl-names = "default";
1448ccc0d23SEmmanuel Vadot
1458ccc0d23SEmmanuel Vadot		connector {
1468ccc0d23SEmmanuel Vadot			compatible = "usb-c-connector";
1478ccc0d23SEmmanuel Vadot			label = "USB-C";
1488ccc0d23SEmmanuel Vadot			data-role = "dual";
1498ccc0d23SEmmanuel Vadot			power-role = "dual";
1508ccc0d23SEmmanuel Vadot			self-powered;
1518ccc0d23SEmmanuel Vadot			try-power-role = "sink";
1528ccc0d23SEmmanuel Vadot			op-sink-microwatt = <2600000>;
1538ccc0d23SEmmanuel Vadot			slow-charger-loop;
1548ccc0d23SEmmanuel Vadot			/*
1558ccc0d23SEmmanuel Vadot			 * max77759 operating in reverse boost mode (0xA) can
1568ccc0d23SEmmanuel Vadot			 * source up to 1.5A while extboost can only do ~1A.
1578ccc0d23SEmmanuel Vadot			 * Since extboost is the primary path, advertise 900mA.
1588ccc0d23SEmmanuel Vadot			 */
1598ccc0d23SEmmanuel Vadot			source-pdos = <PDO_FIXED(5000, 900,
1608ccc0d23SEmmanuel Vadot						 (PDO_FIXED_SUSPEND
1618ccc0d23SEmmanuel Vadot						  | PDO_FIXED_USB_COMM
1628ccc0d23SEmmanuel Vadot						  | PDO_FIXED_DATA_SWAP
1638ccc0d23SEmmanuel Vadot						  | PDO_FIXED_DUAL_ROLE))>;
1648ccc0d23SEmmanuel Vadot			sink-pdos = <PDO_FIXED(5000, 3000,
1658ccc0d23SEmmanuel Vadot					       (PDO_FIXED_DATA_SWAP
1668ccc0d23SEmmanuel Vadot						| PDO_FIXED_USB_COMM
1678ccc0d23SEmmanuel Vadot						| PDO_FIXED_HIGHER_CAP
1688ccc0d23SEmmanuel Vadot						| PDO_FIXED_DUAL_ROLE))
1698ccc0d23SEmmanuel Vadot				     PDO_FIXED(9000, 2200, 0)
1708ccc0d23SEmmanuel Vadot				     PDO_PPS_APDO(5000, 11000, 3000)>;
1718ccc0d23SEmmanuel Vadot			sink-vdos = <VDO_IDH(1, 1, IDH_PTYPE_PERIPH, 0,
1728ccc0d23SEmmanuel Vadot					     IDH_PTYPE_DFP_HOST, 2, 0x18d1)
1738ccc0d23SEmmanuel Vadot				     VDO_CERT(0x0)
1748ccc0d23SEmmanuel Vadot				     VDO_PRODUCT(0x4ee1, 0x0)
1758ccc0d23SEmmanuel Vadot				     VDO_UFP(UFP_VDO_VER1_2,
1768ccc0d23SEmmanuel Vadot					     (DEV_USB2_CAPABLE
1778ccc0d23SEmmanuel Vadot					      | DEV_USB3_CAPABLE),
1788ccc0d23SEmmanuel Vadot					     UFP_RECEPTACLE, 0,
1798ccc0d23SEmmanuel Vadot					     AMA_VCONN_NOT_REQ, 0,
1808ccc0d23SEmmanuel Vadot					     UFP_ALTMODE_NOT_SUPP,
1818ccc0d23SEmmanuel Vadot					     UFP_USB32_GEN1)
1828ccc0d23SEmmanuel Vadot				     /* padding */ 0
1838ccc0d23SEmmanuel Vadot				     VDO_DFP(DFP_VDO_VER1_1,
1848ccc0d23SEmmanuel Vadot					     (HOST_USB2_CAPABLE
1858ccc0d23SEmmanuel Vadot					      | HOST_USB3_CAPABLE),
1868ccc0d23SEmmanuel Vadot					     DFP_RECEPTACLE, 0)>;
1878ccc0d23SEmmanuel Vadot			sink-vdos-v1 = <VDO_IDH(1, 1, IDH_PTYPE_PERIPH, 0,
1888ccc0d23SEmmanuel Vadot						0, 0, 0x18d1)
1898ccc0d23SEmmanuel Vadot					VDO_CERT(0x0)
1908ccc0d23SEmmanuel Vadot					VDO_PRODUCT(0x4ee1, 0x0)>;
1918ccc0d23SEmmanuel Vadot			/*
1928ccc0d23SEmmanuel Vadot			 * Until bootloader is updated to set those two when
1938ccc0d23SEmmanuel Vadot			 * console is enabled, we disable PD here.
1948ccc0d23SEmmanuel Vadot			 */
1958ccc0d23SEmmanuel Vadot			pd-disable;
1968ccc0d23SEmmanuel Vadot			typec-power-opmode = "default";
1978ccc0d23SEmmanuel Vadot
1988ccc0d23SEmmanuel Vadot			ports {
1998ccc0d23SEmmanuel Vadot				#address-cells = <1>;
2008ccc0d23SEmmanuel Vadot				#size-cells = <0>;
2018ccc0d23SEmmanuel Vadot
2028ccc0d23SEmmanuel Vadot				port@0 {
2038ccc0d23SEmmanuel Vadot					reg = <0>;
2048ccc0d23SEmmanuel Vadot
2058ccc0d23SEmmanuel Vadot					usbc0_orien_sw: endpoint {
2068ccc0d23SEmmanuel Vadot						remote-endpoint = <&usbdrd31_phy_orien_switch>;
2078ccc0d23SEmmanuel Vadot					};
2088ccc0d23SEmmanuel Vadot				};
2098ccc0d23SEmmanuel Vadot
2108ccc0d23SEmmanuel Vadot				port@1 {
2118ccc0d23SEmmanuel Vadot					reg = <1>;
2128ccc0d23SEmmanuel Vadot
2138ccc0d23SEmmanuel Vadot					usbc0_role_sw: endpoint {
2148ccc0d23SEmmanuel Vadot						remote-endpoint = <&usbdrd31_dwc3_role_switch>;
2158ccc0d23SEmmanuel Vadot					};
2168ccc0d23SEmmanuel Vadot				};
2178ccc0d23SEmmanuel Vadot			};
2188ccc0d23SEmmanuel Vadot		};
2198ccc0d23SEmmanuel Vadot	};
220*833e5d42SEmmanuel Vadot
221*833e5d42SEmmanuel Vadot	pmic@66 {
222*833e5d42SEmmanuel Vadot		compatible = "maxim,max77759";
223*833e5d42SEmmanuel Vadot		reg = <0x66>;
224*833e5d42SEmmanuel Vadot
225*833e5d42SEmmanuel Vadot		pinctrl-0 = <&if_pmic_int>;
226*833e5d42SEmmanuel Vadot		pinctrl-names = "default";
227*833e5d42SEmmanuel Vadot		interrupts-extended = <&gpa8 3 IRQ_TYPE_LEVEL_LOW>;
228*833e5d42SEmmanuel Vadot
229*833e5d42SEmmanuel Vadot		interrupt-controller;
230*833e5d42SEmmanuel Vadot		#interrupt-cells = <2>;
231*833e5d42SEmmanuel Vadot
232*833e5d42SEmmanuel Vadot		gpio {
233*833e5d42SEmmanuel Vadot			compatible = "maxim,max77759-gpio";
234*833e5d42SEmmanuel Vadot
235*833e5d42SEmmanuel Vadot			gpio-controller;
236*833e5d42SEmmanuel Vadot			#gpio-cells = <2>;
237*833e5d42SEmmanuel Vadot			/*
238*833e5d42SEmmanuel Vadot			 * "Human-readable name [SIGNAL_LABEL]" where the
239*833e5d42SEmmanuel Vadot			 * latter comes from the schematic
240*833e5d42SEmmanuel Vadot			 */
241*833e5d42SEmmanuel Vadot			gpio-line-names = "OTG boost [OTG_BOOST_EN]",
242*833e5d42SEmmanuel Vadot					  "max20339 IRQ [MW_OVP_INT_L]";
243*833e5d42SEmmanuel Vadot
244*833e5d42SEmmanuel Vadot			interrupt-controller;
245*833e5d42SEmmanuel Vadot			#interrupt-cells = <2>;
246*833e5d42SEmmanuel Vadot		};
247*833e5d42SEmmanuel Vadot
248*833e5d42SEmmanuel Vadot		nvmem-0 {
249*833e5d42SEmmanuel Vadot			compatible = "maxim,max77759-nvmem";
250*833e5d42SEmmanuel Vadot
251*833e5d42SEmmanuel Vadot			nvmem-layout {
252*833e5d42SEmmanuel Vadot				compatible = "fixed-layout";
253*833e5d42SEmmanuel Vadot				#address-cells = <1>;
254*833e5d42SEmmanuel Vadot				#size-cells = <1>;
255*833e5d42SEmmanuel Vadot
256*833e5d42SEmmanuel Vadot				nvmem_reboot_mode: reboot-mode@0 {
257*833e5d42SEmmanuel Vadot					reg = <0x0 0x4>;
258*833e5d42SEmmanuel Vadot				};
259*833e5d42SEmmanuel Vadot
260*833e5d42SEmmanuel Vadot				boot-reason@4 {
261*833e5d42SEmmanuel Vadot					reg = <0x4 0x4>;
262*833e5d42SEmmanuel Vadot				};
263*833e5d42SEmmanuel Vadot
264*833e5d42SEmmanuel Vadot				shutdown-user-flag@8 {
265*833e5d42SEmmanuel Vadot					reg = <0x8 0x1>;
266*833e5d42SEmmanuel Vadot				};
267*833e5d42SEmmanuel Vadot
268*833e5d42SEmmanuel Vadot				rsoc@a {
269*833e5d42SEmmanuel Vadot					reg = <0xa 0x2>;
270*833e5d42SEmmanuel Vadot				};
271*833e5d42SEmmanuel Vadot			};
272*833e5d42SEmmanuel Vadot		};
273*833e5d42SEmmanuel Vadot	};
2748ccc0d23SEmmanuel Vadot};
2758ccc0d23SEmmanuel Vadot
2768ccc0d23SEmmanuel Vadot&pinctrl_far_alive {
2778ccc0d23SEmmanuel Vadot	key_voldown: key-voldown-pins {
2788ccc0d23SEmmanuel Vadot		samsung,pins = "gpa7-3";
2798ccc0d23SEmmanuel Vadot		samsung,pin-function = <GS101_PIN_FUNC_EINT>;
2808ccc0d23SEmmanuel Vadot		samsung,pin-pud = <GS101_PIN_PULL_NONE>;
2818ccc0d23SEmmanuel Vadot		samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>;
2828ccc0d23SEmmanuel Vadot	};
2838ccc0d23SEmmanuel Vadot
2848ccc0d23SEmmanuel Vadot	key_volup: key-volup-pins {
2858ccc0d23SEmmanuel Vadot		samsung,pins = "gpa8-1";
2868ccc0d23SEmmanuel Vadot		samsung,pin-function = <GS101_PIN_FUNC_EINT>;
2878ccc0d23SEmmanuel Vadot		samsung,pin-pud = <GS101_PIN_PULL_NONE>;
2888ccc0d23SEmmanuel Vadot		samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>;
2898ccc0d23SEmmanuel Vadot	};
2908ccc0d23SEmmanuel Vadot
2918ccc0d23SEmmanuel Vadot	typec_int: typec-int-pins {
2928ccc0d23SEmmanuel Vadot		samsung,pins = "gpa8-2";
2938ccc0d23SEmmanuel Vadot		samsung,pin-function = <GS101_PIN_FUNC_EINT>;
2948ccc0d23SEmmanuel Vadot		samsung,pin-pud = <GS101_PIN_PULL_UP>;
2958ccc0d23SEmmanuel Vadot		samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>;
2968ccc0d23SEmmanuel Vadot	};
297*833e5d42SEmmanuel Vadot
298*833e5d42SEmmanuel Vadot	if_pmic_int: if-pmic-int-pins {
299*833e5d42SEmmanuel Vadot		samsung,pins = "gpa8-3";
300*833e5d42SEmmanuel Vadot		samsung,pin-function = <GS101_PIN_FUNC_EINT>;
301*833e5d42SEmmanuel Vadot		samsung,pin-pud = <GS101_PIN_PULL_UP>;
302*833e5d42SEmmanuel Vadot		samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>;
303*833e5d42SEmmanuel Vadot	};
3048ccc0d23SEmmanuel Vadot};
3058ccc0d23SEmmanuel Vadot
3068ccc0d23SEmmanuel Vadot&pinctrl_gpio_alive {
307*833e5d42SEmmanuel Vadot	pmic_int: pmic-int-pins {
308*833e5d42SEmmanuel Vadot		samsung,pins = "gpa0-6";
309*833e5d42SEmmanuel Vadot		samsung,pin-function = <GS101_PIN_FUNC_EINT>;
310*833e5d42SEmmanuel Vadot		samsung,pin-pud = <GS101_PIN_PULL_NONE>;
311*833e5d42SEmmanuel Vadot	};
312*833e5d42SEmmanuel Vadot
3138ccc0d23SEmmanuel Vadot	key_power: key-power-pins {
3148ccc0d23SEmmanuel Vadot		samsung,pins = "gpa10-1";
3158ccc0d23SEmmanuel Vadot		samsung,pin-function = <GS101_PIN_FUNC_EINT>;
3168ccc0d23SEmmanuel Vadot		samsung,pin-pud = <GS101_PIN_PULL_NONE>;
3178ccc0d23SEmmanuel Vadot		samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>;
3188ccc0d23SEmmanuel Vadot	};
3198ccc0d23SEmmanuel Vadot};
3208ccc0d23SEmmanuel Vadot
3218ccc0d23SEmmanuel Vadot&serial_0 {
3228ccc0d23SEmmanuel Vadot	status = "okay";
3238ccc0d23SEmmanuel Vadot};
3248ccc0d23SEmmanuel Vadot
3258ccc0d23SEmmanuel Vadot&ufs_0 {
3268ccc0d23SEmmanuel Vadot	status = "okay";
3278ccc0d23SEmmanuel Vadot	vcc-supply = <&ufs_0_fixed_vcc_reg>;
3288ccc0d23SEmmanuel Vadot};
3298ccc0d23SEmmanuel Vadot
3308ccc0d23SEmmanuel Vadot&ufs_0_phy {
3318ccc0d23SEmmanuel Vadot	status = "okay";
3328ccc0d23SEmmanuel Vadot};
3338ccc0d23SEmmanuel Vadot
3348ccc0d23SEmmanuel Vadot&usbdrd31 {
3358ccc0d23SEmmanuel Vadot	vdd10-supply = <&reg_placeholder>;
3368ccc0d23SEmmanuel Vadot	vdd33-supply = <&reg_placeholder>;
3378ccc0d23SEmmanuel Vadot	status = "okay";
3388ccc0d23SEmmanuel Vadot};
3398ccc0d23SEmmanuel Vadot
3408ccc0d23SEmmanuel Vadot&usbdrd31_dwc3 {
3418ccc0d23SEmmanuel Vadot	dr_mode = "otg";
3428ccc0d23SEmmanuel Vadot	usb-role-switch;
3438ccc0d23SEmmanuel Vadot	role-switch-default-mode = "peripheral";
3448ccc0d23SEmmanuel Vadot	maximum-speed = "super-speed-plus";
3458ccc0d23SEmmanuel Vadot	status = "okay";
3468ccc0d23SEmmanuel Vadot
3478ccc0d23SEmmanuel Vadot	port {
3488ccc0d23SEmmanuel Vadot		usbdrd31_dwc3_role_switch: endpoint {
3498ccc0d23SEmmanuel Vadot			remote-endpoint = <&usbc0_role_sw>;
3508ccc0d23SEmmanuel Vadot		};
3518ccc0d23SEmmanuel Vadot	};
3528ccc0d23SEmmanuel Vadot};
3538ccc0d23SEmmanuel Vadot
3548ccc0d23SEmmanuel Vadot&usbdrd31_phy {
3558ccc0d23SEmmanuel Vadot	orientation-switch;
3568ccc0d23SEmmanuel Vadot	/* TODO: Update these once PMIC is implemented */
3578ccc0d23SEmmanuel Vadot	pll-supply = <&reg_placeholder>;
3588ccc0d23SEmmanuel Vadot	dvdd-usb20-supply = <&reg_placeholder>;
3598ccc0d23SEmmanuel Vadot	vddh-usb20-supply = <&reg_placeholder>;
3608ccc0d23SEmmanuel Vadot	vdd33-usb20-supply = <&reg_placeholder>;
3618ccc0d23SEmmanuel Vadot	vdda-usbdp-supply = <&reg_placeholder>;
3628ccc0d23SEmmanuel Vadot	vddh-usbdp-supply = <&reg_placeholder>;
3638ccc0d23SEmmanuel Vadot	status = "okay";
3648ccc0d23SEmmanuel Vadot
3658ccc0d23SEmmanuel Vadot	port {
3668ccc0d23SEmmanuel Vadot		usbdrd31_phy_orien_switch: endpoint {
3678ccc0d23SEmmanuel Vadot			remote-endpoint = <&usbc0_orien_sw>;
3688ccc0d23SEmmanuel Vadot		};
3698ccc0d23SEmmanuel Vadot	};
3708ccc0d23SEmmanuel Vadot};
3718ccc0d23SEmmanuel Vadot
3728ccc0d23SEmmanuel Vadot&usi_uart {
3738ccc0d23SEmmanuel Vadot	samsung,clkreq-on; /* needed for UART mode */
3748ccc0d23SEmmanuel Vadot	status = "okay";
3758ccc0d23SEmmanuel Vadot};
3768ccc0d23SEmmanuel Vadot
3778ccc0d23SEmmanuel Vadot&usi8 {
378ae5de77eSEmmanuel Vadot	samsung,mode = <USI_MODE_I2C>;
3798ccc0d23SEmmanuel Vadot	status = "okay";
3808ccc0d23SEmmanuel Vadot};
3818ccc0d23SEmmanuel Vadot
3828ccc0d23SEmmanuel Vadot&usi12 {
383ae5de77eSEmmanuel Vadot	samsung,mode = <USI_MODE_I2C>;
3848ccc0d23SEmmanuel Vadot	status = "okay";
3858ccc0d23SEmmanuel Vadot};
3868ccc0d23SEmmanuel Vadot
3878ccc0d23SEmmanuel Vadot&watchdog_cl0 {
3888ccc0d23SEmmanuel Vadot	timeout-sec = <30>;
3898ccc0d23SEmmanuel Vadot	status = "okay";
3908ccc0d23SEmmanuel Vadot};
391