This board use uart4 as debug port and arm core voltage
is modulated by pwm, logic voltage is fixed to 1.05V.

Signed-off-by: Andy Yan <andy....@rock-chips.com>

---

Changes in v2:
- Split binding to a separate patch
- Power tree update.

 arch/arm64/boot/dts/rockchip/Makefile       |   1 +
 arch/arm64/boot/dts/rockchip/rk3308-evb.dts | 230 ++++++++++++++++++++
 2 files changed, 231 insertions(+)
 create mode 100644 arch/arm64/boot/dts/rockchip/rk3308-evb.dts

diff --git a/arch/arm64/boot/dts/rockchip/Makefile 
b/arch/arm64/boot/dts/rockchip/Makefile
index 1f18a9392d15..a959434ad46e 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -1,5 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0
 dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-evb.dtb
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-evb.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3328-evb.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3328-rock64.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3328-roc-cc.dtb
diff --git a/arch/arm64/boot/dts/rockchip/rk3308-evb.dts 
b/arch/arm64/boot/dts/rockchip/rk3308-evb.dts
new file mode 100644
index 000000000000..124a24086684
--- /dev/null
+++ b/arch/arm64/boot/dts/rockchip/rk3308-evb.dts
@@ -0,0 +1,230 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd
+ *
+ */
+
+/dts-v1/;
+#include <dt-bindings/input/input.h>
+#include "rk3308.dtsi"
+
+/ {
+       model = "Rockchip RK3308 EVB";
+       compatible = "rockchip,rk3308-evb", "rockchip,rk3308";
+
+       chosen {
+               stdout-path = "serial4:1500000n8";
+       };
+
+       adc-keys0 {
+               compatible = "adc-keys";
+               io-channels = <&saradc 0>;
+               io-channel-names = "buttons";
+               poll-interval = <100>;
+               keyup-threshold-microvolt = <1800000>;
+
+               func-key {
+                       linux,code = <KEY_FN>;
+                       label = "function";
+                       press-threshold-microvolt = <18000>;
+               };
+       };
+
+       adc-keys1 {
+               compatible = "adc-keys";
+               io-channels = <&saradc 1>;
+               io-channel-names = "buttons";
+               poll-interval = <100>;
+               keyup-threshold-microvolt = <1800000>;
+
+               esc-key {
+                       linux,code = <KEY_MICMUTE>;
+                       label = "micmute";
+                       press-threshold-microvolt = <1130000>;
+               };
+
+               home-key {
+                       linux,code = <KEY_MODE>;
+                       label = "mode";
+                       press-threshold-microvolt = <901000>;
+               };
+
+               menu-key {
+                       linux,code = <KEY_PLAY>;
+                       label = "play";
+                       press-threshold-microvolt = <624000>;
+               };
+
+               vol-down-key {
+                       linux,code = <KEY_VOLUMEDOWN>;
+                       label = "volume down";
+                       press-threshold-microvolt = <300000>;
+               };
+
+               vol-up-key {
+                       linux,code = <KEY_VOLUMEUP>;
+                       label = "volume up";
+                       press-threshold-microvolt = <18000>;
+               };
+       };
+
+       gpio-keys {
+               compatible = "gpio-keys";
+               autorepeat;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&pwr_key>;
+
+               power {
+                       gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_POWER>;
+                       label = "GPIO Key Power";
+                       wakeup-source;
+                       debounce-interval = <100>;
+               };
+       };
+
+       vcc12v_dcin: vcc12v-dcin {
+               compatible = "regulator-fixed";
+               regulator-name = "vcc12v_dcin";
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-min-microvolt = <12000000>;
+               regulator-max-microvolt = <12000000>;
+       };
+
+       vcc5v0_sys: vcc5v0-sys {
+               compatible = "regulator-fixed";
+               regulator-name = "vcc5v0_sys";
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-min-microvolt = <5000000>;
+               regulator-max-microvolt = <5000000>;
+               vin-supply = <&vcc12v_dcin>;
+       };
+
+       vdd_core: vdd-core {
+               compatible = "pwm-regulator";
+               pwms = <&pwm0 0 5000 1>;
+               regulator-name = "vdd_core";
+               regulator-min-microvolt = <827000>;
+               regulator-max-microvolt = <1340000>;
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-settling-time-up-us = <250>;
+               pwm-supply = <&vcc5v0_sys>;
+       };
+
+       vdd_log: vdd-log {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd_log";
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-min-microvolt = <1050000>;
+               regulator-max-microvolt = <1050000>;
+               vin-supply = <&vcc5v0_sys>;
+       };
+
+       vdd_1v0: vdd-1v0 {
+               compatible = "regulator-fixed";
+               regulator-name = "vdd_1v0";
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-min-microvolt = <1000000>;
+               regulator-max-microvolt = <1000000>;
+               vin-supply = <&vcc5v0_sys>;
+       };
+
+       vccio_sdio: vcc_1v8: vcc-1v8 {
+               compatible = "regulator-fixed";
+               regulator-name = "vcc_1v8";
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <1800000>;
+               vin-supply = <&vcc_io>;
+       };
+
+       vcc_ddr: vcc-ddr {
+               compatible = "regulator-fixed";
+               regulator-name = "vcc_ddr";
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-min-microvolt = <1500000>;
+               regulator-max-microvolt = <1500000>;
+               vin-supply = <&vcc5v0_sys>;
+       };
+
+       vcc_io: vcc-io {
+               compatible = "regulator-fixed";
+               regulator-name = "vcc_io";
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               vin-supply = <&vcc5v0_sys>;
+       };
+
+       vccio_flash: vccio-flash {
+               compatible = "regulator-fixed";
+               regulator-name = "vccio_flash";
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               vin-supply = <&vcc_io>;
+       };
+
+       vcc5v0_host: vcc5v0-host {
+               compatible = "regulator-fixed";
+               enable-active-high;
+               gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&usb_drv>;
+               regulator-name = "vbus_host";
+               vin-supply = <&vcc5v0_sys>;
+       };
+};
+
+&cpu0 {
+       cpu-supply = <&vdd_core>;
+};
+
+&saradc {
+       status = "okay";
+       vref-supply = <&vcc_1v8>;
+};
+
+&pinctrl {
+       pinctrl-names = "default";
+       pinctrl-0 = <&rtc_32k>;
+
+       buttons {
+               pwr_key: pwr-key {
+                       rockchip,pins = <0 RK_PA6 0 &pcfg_pull_up>;
+               };
+       };
+
+       usb {
+               usb_drv: usb-drv {
+                       rockchip,pins = <0 RK_PC5 0 &pcfg_pull_none>;
+               };
+       };
+
+       sdio-pwrseq {
+               wifi_enable_h: wifi-enable-h {
+                       rockchip,pins = <0 RK_PA2 0 &pcfg_pull_none>;
+               };
+       };
+};
+
+&pwm0 {
+       status = "okay";
+       pinctrl-0 = <&pwm0_pin_pull_down>;
+};
+
+&uart4 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&uart4_xfer>;
+       status = "okay";
+};
-- 
2.17.1



Reply via email to