1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd 4 */ 5 6/dts-v1/; 7#include "rk3308.dtsi" 8 9/ { 10 model = "Firefly ROC-RK3308-CC board"; 11 compatible = "firefly,roc-rk3308-cc", "rockchip,rk3308"; 12 13 aliases { 14 mmc0 = &sdmmc; 15 mmc1 = &emmc; 16 }; 17 18 chosen { 19 stdout-path = "serial2:1500000n8"; 20 }; 21 22 ir_rx { 23 compatible = "gpio-ir-receiver"; 24 gpios = <&gpio0 RK_PC0 GPIO_ACTIVE_HIGH>; 25 pinctrl-names = "default"; 26 pinctrl-0 = <&ir_recv_pin>; 27 }; 28 29 ir_tx { 30 compatible = "pwm-ir-tx"; 31 pwms = <&pwm5 0 25000 0>; 32 }; 33 34 leds { 35 compatible = "gpio-leds"; 36 37 power_led: led-0 { 38 label = "firefly:red:power"; 39 linux,default-trigger = "ir-power-click"; 40 default-state = "on"; 41 gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>; 42 }; 43 44 user_led: led-1 { 45 label = "firefly:blue:user"; 46 linux,default-trigger = "ir-user-click"; 47 default-state = "off"; 48 gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_HIGH>; 49 }; 50 }; 51 52 typec_vcc5v: typec-vcc5v { 53 compatible = "regulator-fixed"; 54 regulator-name = "typec_vcc5v"; 55 regulator-min-microvolt = <5000000>; 56 regulator-max-microvolt = <5000000>; 57 regulator-always-on; 58 regulator-boot-on; 59 }; 60 61 vcc5v0_sys: vcc5v0-sys { 62 compatible = "regulator-fixed"; 63 regulator-name = "vcc5v0_sys"; 64 regulator-min-microvolt = <5000000>; 65 regulator-max-microvolt = <5000000>; 66 regulator-always-on; 67 regulator-boot-on; 68 vin-supply = <&typec_vcc5v>; 69 }; 70 71 vcc_io: vcc-io { 72 compatible = "regulator-fixed"; 73 regulator-name = "vcc_io"; 74 regulator-min-microvolt = <3300000>; 75 regulator-max-microvolt = <3300000>; 76 regulator-always-on; 77 regulator-boot-on; 78 vin-supply = <&vcc5v0_sys>; 79 }; 80 81 vcc_sdmmc: vcc-sdmmc { 82 compatible = "regulator-gpio"; 83 regulator-name = "vcc_sdmmc"; 84 regulator-min-microvolt = <1800000>; 85 regulator-max-microvolt = <3300000>; 86 gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_HIGH>; 87 states = <1800000 0x0>, 88 <3300000 0x1>; 89 vin-supply = <&vcc5v0_sys>; 90 }; 91 92 vcc_sd: vcc-sd { 93 compatible = "regulator-fixed"; 94 gpio = <&gpio4 RK_PD6 GPIO_ACTIVE_LOW>; 95 regulator-name = "vcc_sd"; 96 regulator-min-microvolt = <3300000>; 97 regulator-max-microvolt = <3300000>; 98 regulator-always-on; 99 regulator-boot-on; 100 vin-supply = <&vcc_io>; 101 }; 102 103 vdd_core: vdd-core { 104 compatible = "pwm-regulator"; 105 pwms = <&pwm0 0 5000 1>; 106 regulator-name = "vdd_core"; 107 regulator-min-microvolt = <827000>; 108 regulator-max-microvolt = <1340000>; 109 regulator-init-microvolt = <1015000>; 110 regulator-settling-time-up-us = <250>; 111 regulator-always-on; 112 regulator-boot-on; 113 pwm-supply = <&vcc5v0_sys>; 114 }; 115 116 vdd_log: vdd-log { 117 compatible = "regulator-fixed"; 118 regulator-name = "vdd_log"; 119 regulator-min-microvolt = <1050000>; 120 regulator-max-microvolt = <1050000>; 121 regulator-always-on; 122 regulator-boot-on; 123 vin-supply = <&vcc5v0_sys>; 124 }; 125}; 126 127&cpu0 { 128 cpu-supply = <&vdd_core>; 129}; 130 131&emmc { 132 cap-mmc-highspeed; 133 mmc-hs200-1_8v; 134 non-removable; 135 status = "okay"; 136}; 137 138&i2c1 { 139 clock-frequency = <400000>; 140 status = "okay"; 141 142 rtc: rtc@51 { 143 compatible = "nxp,pcf8563"; 144 reg = <0x51>; 145 #clock-cells = <0>; 146 }; 147}; 148 149&pwm5 { 150 status = "okay"; 151 pinctrl-names = "active"; 152 pinctrl-0 = <&pwm5_pin_pull_down>; 153}; 154 155&pinctrl { 156 pinctrl-names = "default"; 157 pinctrl-0 = <&rtc_32k>; 158 159 ir-receiver { 160 ir_recv_pin: ir-recv-pin { 161 rockchip,pins = <0 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>; 162 }; 163 }; 164 165 buttons { 166 pwr_key: pwr-key { 167 rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>; 168 }; 169 }; 170}; 171 172&pwm0 { 173 status = "okay"; 174 pinctrl-0 = <&pwm0_pin_pull_down>; 175}; 176 177&sdmmc { 178 cap-mmc-highspeed; 179 cap-sd-highspeed; 180 card-detect-delay = <300>; 181 sd-uhs-sdr25; 182 sd-uhs-sdr50; 183 sd-uhs-sdr104; 184 vmmc-supply = <&vcc_sd>; 185 vqmmc-supply = <&vcc_sdmmc>; 186 status = "okay"; 187}; 188 189&uart2 { 190 status = "okay"; 191}; 192