1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * Oriole Device Tree 4 * 5 * Copyright 2021-2023 Google LLC 6 * Copyright 2023 Linaro Ltd - <peter.griffin@linaro.org> 7 */ 8 9/dts-v1/; 10 11#include <dt-bindings/gpio/gpio.h> 12#include <dt-bindings/input/input.h> 13#include "gs101-pinctrl.h" 14#include "gs101.dtsi" 15 16/ { 17 model = "Oriole"; 18 compatible = "google,gs101-oriole", "google,gs101"; 19 20 aliases { 21 serial0 = &serial_0; 22 }; 23 24 chosen { 25 /* Bootloader expects bootargs specified otherwise it crashes */ 26 bootargs = ""; 27 stdout-path = &serial_0; 28 }; 29 30 gpio-keys { 31 compatible = "gpio-keys"; 32 pinctrl-0 = <&key_voldown>, <&key_volup>, <&key_power>; 33 pinctrl-names = "default"; 34 35 button-vol-down { 36 label = "KEY_VOLUMEDOWN"; 37 linux,code = <KEY_VOLUMEDOWN>; 38 gpios = <&gpa7 3 GPIO_ACTIVE_LOW>; 39 wakeup-source; 40 }; 41 42 button-vol-up { 43 label = "KEY_VOLUMEUP"; 44 linux,code = <KEY_VOLUMEUP>; 45 gpios = <&gpa8 1 GPIO_ACTIVE_LOW>; 46 wakeup-source; 47 }; 48 49 button-power { 50 label = "KEY_POWER"; 51 linux,code = <KEY_POWER>; 52 gpios = <&gpa10 1 GPIO_ACTIVE_LOW>; 53 wakeup-source; 54 }; 55 }; 56 57 /* TODO: Remove this once PMIC is implemented */ 58 reg_placeholder: regulator-0 { 59 compatible = "regulator-fixed"; 60 regulator-name = "placeholder_reg"; 61 }; 62 63 /* TODO: Remove this once S2MPG11 slave PMIC is implemented */ 64 ufs_0_fixed_vcc_reg: regulator-1 { 65 compatible = "regulator-fixed"; 66 regulator-name = "ufs-vcc"; 67 gpio = <&gpp0 1 GPIO_ACTIVE_HIGH>; 68 regulator-boot-on; 69 enable-active-high; 70 }; 71}; 72 73&ext_24_5m { 74 clock-frequency = <24576000>; 75}; 76 77&ext_200m { 78 clock-frequency = <200000000>; 79}; 80 81&hsi2c_8 { 82 status = "okay"; 83 84 eeprom: eeprom@50 { 85 compatible = "atmel,24c08"; 86 reg = <0x50>; 87 }; 88}; 89 90&hsi2c_12 { 91 status = "okay"; 92 /* TODO: add the devices once drivers exist */ 93}; 94 95&pinctrl_far_alive { 96 key_voldown: key-voldown-pins { 97 samsung,pins = "gpa7-3"; 98 samsung,pin-function = <GS101_PIN_FUNC_EINT>; 99 samsung,pin-pud = <GS101_PIN_PULL_NONE>; 100 samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>; 101 }; 102 103 key_volup: key-volup-pins { 104 samsung,pins = "gpa8-1"; 105 samsung,pin-function = <GS101_PIN_FUNC_EINT>; 106 samsung,pin-pud = <GS101_PIN_PULL_NONE>; 107 samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>; 108 }; 109}; 110 111&pinctrl_gpio_alive { 112 key_power: key-power-pins { 113 samsung,pins = "gpa10-1"; 114 samsung,pin-function = <GS101_PIN_FUNC_EINT>; 115 samsung,pin-pud = <GS101_PIN_PULL_NONE>; 116 samsung,pin-drv = <GS101_PIN_DRV_2_5_MA>; 117 }; 118}; 119 120&serial_0 { 121 status = "okay"; 122}; 123 124&ufs_0 { 125 status = "okay"; 126 vcc-supply = <&ufs_0_fixed_vcc_reg>; 127}; 128 129&ufs_0_phy { 130 status = "okay"; 131}; 132 133&usbdrd31 { 134 vdd10-supply = <®_placeholder>; 135 vdd33-supply = <®_placeholder>; 136 status = "okay"; 137}; 138 139&usbdrd31_dwc3 { 140 dr_mode = "otg"; 141 usb-role-switch; 142 role-switch-default-mode = "peripheral"; 143 maximum-speed = "super-speed-plus"; 144 status = "okay"; 145}; 146 147&usbdrd31_phy { 148 /* TODO: Update these once PMIC is implemented */ 149 pll-supply = <®_placeholder>; 150 dvdd-usb20-supply = <®_placeholder>; 151 vddh-usb20-supply = <®_placeholder>; 152 vdd33-usb20-supply = <®_placeholder>; 153 vdda-usbdp-supply = <®_placeholder>; 154 vddh-usbdp-supply = <®_placeholder>; 155 status = "okay"; 156}; 157 158&usi_uart { 159 samsung,clkreq-on; /* needed for UART mode */ 160 status = "okay"; 161}; 162 163&usi8 { 164 samsung,mode = <USI_V2_I2C>; 165 status = "okay"; 166}; 167 168&usi12 { 169 samsung,mode = <USI_V2_I2C>; 170 status = "okay"; 171}; 172 173&watchdog_cl0 { 174 timeout-sec = <30>; 175 status = "okay"; 176}; 177