mirror of https://github.com/armbian/build.git
fine3399: move dts from patch file to dedicated dt directory
This commit is contained in:
parent
d3bf2462bc
commit
c9835d6aa3
|
|
@ -1,892 +0,0 @@
|
||||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Lemon1151 <smile1151@foxmail.com>
|
|
||||||
Date: Mon, 3 Jun 2024 12:32:02 +0200
|
|
||||||
Subject: Adding support for the fine3399 board
|
|
||||||
|
|
||||||
> X-Git-Archeology: - Revision 8f64f0508237888dd326018fa9a392346b8ec5ab: https://github.com/armbian/build/commit/8f64f0508237888dd326018fa9a392346b8ec5ab
|
|
||||||
> X-Git-Archeology: Date: Mon, 03 Jun 2024 12:32:02 +0200
|
|
||||||
> X-Git-Archeology: From: Lemon1151 <smile1151@foxmail.com>
|
|
||||||
> X-Git-Archeology: Subject: Adding support for the fine3399 board
|
|
||||||
---
|
|
||||||
arch/arm64/boot/dts/rockchip/rk3399-fine3399.dts | 870 ++++++++++
|
|
||||||
1 file changed, 870 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-fine3399.dts b/arch/arm64/boot/dts/rockchip/rk3399-fine3399.dts
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000000..111111111111
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/arch/arm64/boot/dts/rockchip/rk3399-fine3399.dts
|
|
||||||
@@ -0,0 +1,870 @@
|
|
||||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
||||||
+
|
|
||||||
+/dts-v1/;
|
|
||||||
+#include <dt-bindings/input/linux-event-codes.h>
|
|
||||||
+#include <dt-bindings/pwm/pwm.h>
|
|
||||||
+#include <dt-bindings/input/input.h>
|
|
||||||
+#include "rk3399.dtsi"
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+/ {
|
|
||||||
+ model = "Rockchip Fine3399";
|
|
||||||
+ compatible = "rockchip,fine3399", "rockchip,rk3399";
|
|
||||||
+
|
|
||||||
+ aliases {
|
|
||||||
+ mmc0 = &sdio0;
|
|
||||||
+ mmc1 = &sdmmc;
|
|
||||||
+ mmc2 = &sdhci;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ chosen {
|
|
||||||
+ stdout-path = "serial2:1500000n8";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ clkin_gmac: external-gmac-clock {
|
|
||||||
+ compatible = "fixed-clock";
|
|
||||||
+ clock-frequency = <125000000>;
|
|
||||||
+ clock-output-names = "clkin_gmac";
|
|
||||||
+ #clock-cells = <0>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ dc_12v: dc-12v {
|
|
||||||
+ compatible = "regulator-fixed";
|
|
||||||
+ regulator-name = "dc_12v";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <12000000>;
|
|
||||||
+ regulator-max-microvolt = <12000000>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ sdio_pwrseq: sdio-pwrseq {
|
|
||||||
+ compatible = "mmc-pwrseq-simple";
|
|
||||||
+ clocks = <&rk808 1>;
|
|
||||||
+ clock-names = "ext_clock";
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&wifi_reg_on_h>;
|
|
||||||
+ reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; // bsp
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ /* switched by pmic_sleep */
|
|
||||||
+ vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 {
|
|
||||||
+ compatible = "regulator-fixed";
|
|
||||||
+ regulator-name = "vcc1v8_s3";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <1800000>;
|
|
||||||
+ vin-supply = <&vcc_1v8>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc3v3_sys: vcc3v3_pcie: vcc3v3_bl: vcc3v3-sys { // sch
|
|
||||||
+ compatible = "regulator-fixed";
|
|
||||||
+ regulator-name = "vcc3v3_sys";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <3300000>;
|
|
||||||
+ regulator-max-microvolt = <3300000>;
|
|
||||||
+ vin-supply = <&dc_12v>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_sys: vcc-sys { // sch
|
|
||||||
+ compatible = "regulator-fixed";
|
|
||||||
+ regulator-name = "vcc_sys";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <5000000>;
|
|
||||||
+ regulator-max-microvolt = <5000000>;
|
|
||||||
+ vin-supply = <&dc_12v>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_phy: vcc-phy-regulator {
|
|
||||||
+ compatible = "regulator-fixed";
|
|
||||||
+ enable-active-high;
|
|
||||||
+ gpio = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&vcc_phy_h>;
|
|
||||||
+ regulator-name = "vcc_phy";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vdd_log: vdd-log {
|
|
||||||
+ compatible = "pwm-regulator";
|
|
||||||
+ pwms = <&pwm2 0 25000 1>;
|
|
||||||
+ regulator-name = "vdd_log";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <800000>;
|
|
||||||
+ regulator-max-microvolt = <1400000>;
|
|
||||||
+ vin-supply = <&vcc_sys>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ leds: gpio-leds {
|
|
||||||
+ compatible = "gpio-leds";
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&user_led2>;
|
|
||||||
+
|
|
||||||
+ user_led2 {
|
|
||||||
+ label = "blue:work_led";
|
|
||||||
+ gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_LOW>; // sch
|
|
||||||
+ linux,default-trigger = "heartbeat";
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ gpio-keys {
|
|
||||||
+ compatible = "gpio-keys";
|
|
||||||
+ autorepeat;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&power_key>;
|
|
||||||
+
|
|
||||||
+ power {
|
|
||||||
+ debounce-interval = <100>;
|
|
||||||
+ gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; // bsp
|
|
||||||
+ label = "GPIO Key Power";
|
|
||||||
+ linux,code = <KEY_POWER>;
|
|
||||||
+ wakeup-source;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ fan0: pwm-fan {
|
|
||||||
+ compatible = "pwm-fan";
|
|
||||||
+ cooling-levels = <0 30 60 90 120 160>;
|
|
||||||
+ #cooling-cells = <2>;
|
|
||||||
+ fan-supply = <&vcc_sys>;
|
|
||||||
+ pwms = <&pwm1 0 40000 0>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ // pwm3
|
|
||||||
+ ir-receiver {
|
|
||||||
+ compatible = "gpio-ir-receiver";
|
|
||||||
+ gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&ir_int>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ adc-keys {
|
|
||||||
+ compatible = "adc-keys";
|
|
||||||
+ io-channels = <&saradc 1>;
|
|
||||||
+ io-channel-names = "buttons";
|
|
||||||
+ keyup-threshold-microvolt = <1750000>;
|
|
||||||
+ poll-interval = <100>;
|
|
||||||
+
|
|
||||||
+ recovery {
|
|
||||||
+ label = "Recovery";
|
|
||||||
+ linux,code = <KEY_VENDOR>; // ??
|
|
||||||
+ press-threshold-microvolt = <0>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ backlight: backlight {
|
|
||||||
+ compatible = "pwm-backlight";
|
|
||||||
+ brightness-levels = <0 4 8 16 32 64 128 255>;
|
|
||||||
+ default-brightness-level = <5>;
|
|
||||||
+ pwms = <&pwm0 0 1000000 0>;
|
|
||||||
+ status = "okay";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_l0 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_l>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_l1 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_l>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_l2 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_l>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_l3 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_l>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_b0 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_b>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_b1 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_b>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&gpu {
|
|
||||||
+ mali-supply = <&vdd_gpu>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_thermal {
|
|
||||||
+ trips {
|
|
||||||
+ cpu_warm: cpu_warm {
|
|
||||||
+ temperature = <50000>;
|
|
||||||
+ hysteresis = <2000>;
|
|
||||||
+ type = "active";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ cpu_hot: cpu_hot {
|
|
||||||
+ temperature = <65000>;
|
|
||||||
+ hysteresis = <2000>;
|
|
||||||
+ type = "active";
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ cooling-maps {
|
|
||||||
+ map2 {
|
|
||||||
+ trip = <&cpu_warm>;
|
|
||||||
+ cooling-device = <&fan0 THERMAL_NO_LIMIT 1>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ map3 {
|
|
||||||
+ trip = <&cpu_hot>;
|
|
||||||
+ cooling-device = <&fan0 4 THERMAL_NO_LIMIT>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&emmc_phy {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&gmac {
|
|
||||||
+ assigned-clocks = <&cru SCLK_RMII_SRC>;
|
|
||||||
+ assigned-clock-parents = <&clkin_gmac>;
|
|
||||||
+ clock_in_out = "input";
|
|
||||||
+ phy-supply = <&vcc_phy>;
|
|
||||||
+ phy-mode = "rgmii";
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&rgmii_pins>;
|
|
||||||
+ snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; // bsp
|
|
||||||
+ snps,reset-active-low;
|
|
||||||
+ snps,reset-delays-us = <0 10000 50000>;
|
|
||||||
+ tx_delay = <0x28>;
|
|
||||||
+ rx_delay = <0x11>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&gpu {
|
|
||||||
+ mali-supply = <&vdd_gpu>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&gpu_thermal {
|
|
||||||
+ trips {
|
|
||||||
+ gpu_warm: gpu_warm {
|
|
||||||
+ temperature = <50000>;
|
|
||||||
+ hysteresis = <2000>;
|
|
||||||
+ type = "active";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ gpu_hot: gpu_hot {
|
|
||||||
+ temperature = <65000>;
|
|
||||||
+ hysteresis = <2000>;
|
|
||||||
+ type = "active";
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ cooling-maps {
|
|
||||||
+ map1 {
|
|
||||||
+ trip = <&gpu_warm>;
|
|
||||||
+ cooling-device = <&fan0 THERMAL_NO_LIMIT 1>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ map2 {
|
|
||||||
+ trip = <&gpu_hot>;
|
|
||||||
+ cooling-device = <&fan0 4 THERMAL_NO_LIMIT>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&hdmi {
|
|
||||||
+ ddc-i2c-bus = <&i2c3>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&hdmi_cec>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&hdmi_sound {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&i2c0 {
|
|
||||||
+ clock-frequency = <400000>;
|
|
||||||
+ i2c-scl-rising-time-ns = <168>;
|
|
||||||
+ i2c-scl-falling-time-ns = <4>;
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ rk808: pmic@1b {
|
|
||||||
+ compatible = "rockchip,rk808";
|
|
||||||
+ reg = <0x1b>;
|
|
||||||
+ interrupt-parent = <&gpio1>;
|
|
||||||
+ interrupts = <RK_PC5 IRQ_TYPE_LEVEL_LOW>;
|
|
||||||
+ #clock-cells = <1>;
|
|
||||||
+ clock-output-names = "xin32k", "rk808-clkout2";
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
|
|
||||||
+ rockchip,system-power-controller;
|
|
||||||
+ wakeup-source;
|
|
||||||
+
|
|
||||||
+ vcc1-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc2-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc3-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc4-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc6-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc7-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc8-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc9-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc10-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc11-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc12-supply = <&vcc3v3_sys>;
|
|
||||||
+ vddio-supply = <&vcc1v8_pmu>;
|
|
||||||
+
|
|
||||||
+ regulators {
|
|
||||||
+ vdd_center: DCDC_REG1 {
|
|
||||||
+ regulator-name = "vdd_center";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <750000>;
|
|
||||||
+ regulator-max-microvolt = <1350000>;
|
|
||||||
+ regulator-ramp-delay = <6001>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vdd_cpu_l: DCDC_REG2 {
|
|
||||||
+ regulator-name = "vdd_cpu_l";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <750000>;
|
|
||||||
+ regulator-max-microvolt = <1350000>;
|
|
||||||
+ regulator-ramp-delay = <6001>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_ddr: DCDC_REG3 {
|
|
||||||
+ regulator-name = "vcc_ddr";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_1v8: DCDC_REG4 {
|
|
||||||
+ regulator-name = "vcc_1v8";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <1800000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ regulator-suspend-microvolt = <1800000>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc1v8_dvp: LDO_REG1 {
|
|
||||||
+ regulator-name = "vcc1v8_dvp";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <1800000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc3v0_tp: LDO_REG2 {
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <3000000>;
|
|
||||||
+ regulator-max-microvolt = <3000000>;
|
|
||||||
+ regulator-name = "vcc3v0_tp";
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc1v8_pmu: LDO_REG3 {
|
|
||||||
+ regulator-name = "vcc1v8_pmu";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <1800000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ regulator-suspend-microvolt = <1800000>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_sd: LDO_REG4 {
|
|
||||||
+ regulator-name = "vcc_sd";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <3300000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ regulator-suspend-microvolt = <3300000>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcca3v0_codec: LDO_REG5 {
|
|
||||||
+ regulator-name = "vcca3v0_codec";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <3000000>;
|
|
||||||
+ regulator-max-microvolt = <3000000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_1v5: LDO_REG6 {
|
|
||||||
+ regulator-name = "vcc_1v5";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1500000>;
|
|
||||||
+ regulator-max-microvolt = <1500000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ regulator-suspend-microvolt = <1500000>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcca1v8_codec: LDO_REG7 {
|
|
||||||
+ regulator-name = "vcca1v8_codec";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <1800000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_3v0: LDO_REG8 {
|
|
||||||
+ regulator-name = "vcc_3v0";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <3000000>;
|
|
||||||
+ regulator-max-microvolt = <3000000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ regulator-suspend-microvolt = <3000000>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc3v3_s3: SWITCH_REG1 {
|
|
||||||
+ regulator-name = "vcc3v3_s3";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc3v3_s0: SWITCH_REG2 {
|
|
||||||
+ regulator-name = "vcc3v3_s0";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vdd_cpu_b: regulator@40 {
|
|
||||||
+ compatible = "silergy,syr827";
|
|
||||||
+ reg = <0x40>;
|
|
||||||
+ fcs,suspend-voltage-selector = <1>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&cpu_b_sleep>;
|
|
||||||
+ regulator-name = "vdd_cpu_b";
|
|
||||||
+ regulator-min-microvolt = <712500>;
|
|
||||||
+ regulator-max-microvolt = <1500000>;
|
|
||||||
+ regulator-ramp-delay = <1000>;
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ vin-supply = <&vcc_sys>;
|
|
||||||
+
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vdd_gpu: regulator@41 {
|
|
||||||
+ compatible = "silergy,syr828";
|
|
||||||
+ reg = <0x41>;
|
|
||||||
+ fcs,suspend-voltage-selector = <1>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&gpu_sleep>;
|
|
||||||
+ regulator-name = "vdd_gpu";
|
|
||||||
+ regulator-min-microvolt = <712500>;
|
|
||||||
+ regulator-max-microvolt = <1500000>;
|
|
||||||
+ regulator-ramp-delay = <1000>;
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ vin-supply = <&vcc_sys>;
|
|
||||||
+
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+// Used for HDMI
|
|
||||||
+&i2c3 {
|
|
||||||
+ i2c-scl-rising-time-ns = <450>;
|
|
||||||
+ i2c-scl-falling-time-ns = <15>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+// HDMI sound
|
|
||||||
+&i2s2 {
|
|
||||||
+ #sound-dai-cells = <0>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&io_domains {
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ bt656-supply = <&vcc_3v0>;
|
|
||||||
+ audio-supply = <&vcca1v8_codec>;
|
|
||||||
+ sdmmc-supply = <&vcc_sd>;
|
|
||||||
+ gpio1830-supply = <&vcc_3v0>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&pmu_io_domains {
|
|
||||||
+ status = "okay";
|
|
||||||
+ pmu1830-supply = <&vcc_1v8>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&pcie_phy {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&pcie0 {
|
|
||||||
+ ep-gpios = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>; // sch
|
|
||||||
+ max-link-speed = <2>;
|
|
||||||
+ num-lanes = <2>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&pcie_clkreqn_cpm>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&pinctrl {
|
|
||||||
+ pmic {
|
|
||||||
+ cpu_b_sleep: cpu-b-sleep {
|
|
||||||
+ rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ gpu_sleep: gpu-sleep {
|
|
||||||
+ rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ pmic_int_l: pmic-int-l {
|
|
||||||
+ rockchip,pins = <1 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ pmic_dvs2: pmic-dvs2 {
|
|
||||||
+ rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>; // bsp
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ sdio-pwrseq {
|
|
||||||
+ wifi_reg_on_h: wifi-reg-on-h {
|
|
||||||
+ rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ wifi {
|
|
||||||
+ wifi_host_wake_l: wifi-host-wake-l {
|
|
||||||
+ rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ spi2 {
|
|
||||||
+ spi2_cs0: spi2-cs0 {
|
|
||||||
+ rockchip,pins =
|
|
||||||
+ <2 RK_PB4 2 &pcfg_pull_up>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ display_pin:display-pin {
|
|
||||||
+ DC_pin: dc-pin {
|
|
||||||
+ rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ reset_pin: reset-pin {
|
|
||||||
+ rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ bt {
|
|
||||||
+ bt_enable_h: bt-enable-h {
|
|
||||||
+ rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ bt_host_wake_l: bt-host-wake-l {
|
|
||||||
+ rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ bt_wake_l: bt-wake-l {
|
|
||||||
+ rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ gmac {
|
|
||||||
+ vcc_phy_h: vcc-phy-h {
|
|
||||||
+ rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ leds {
|
|
||||||
+ user_led2: user_led2 {
|
|
||||||
+ rockchip,pins =
|
|
||||||
+ <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ ir {
|
|
||||||
+ ir_int: ir-int {
|
|
||||||
+ rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ buttons {
|
|
||||||
+ power_key: power_key {
|
|
||||||
+ rockchip,pins =
|
|
||||||
+ <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+// TFT
|
|
||||||
+&pwm0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+// FAN
|
|
||||||
+&pwm1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&pwm2 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&saradc {
|
|
||||||
+ vref-supply = <&vcca1v8_s3>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&sdio0 {
|
|
||||||
+ bus-width = <4>;
|
|
||||||
+ cap-sd-highspeed;
|
|
||||||
+ cap-sdio-irq;
|
|
||||||
+ clock-frequency = <50000000>;
|
|
||||||
+ disable-wp;
|
|
||||||
+ keep-power-in-suspend;
|
|
||||||
+ max-frequency = <50000000>;
|
|
||||||
+ mmc-pwrseq = <&sdio_pwrseq>;
|
|
||||||
+ non-removable;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
|
|
||||||
+ sd-uhs-sdr104;
|
|
||||||
+ #address-cells = <1>;
|
|
||||||
+ #size-cells = <0>;
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ brcmf: wifi@1 {
|
|
||||||
+ reg = <1>;
|
|
||||||
+ compatible = "brcm,bcm4329-fmac";
|
|
||||||
+ interrupt-parent = <&gpio0>;
|
|
||||||
+ interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ interrupt-names = "host-wake";
|
|
||||||
+ brcm,drive-strength = <5>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&wifi_host_wake_l>;
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&sdmmc {
|
|
||||||
+ bus-width = <4>;
|
|
||||||
+ cap-sd-highspeed;
|
|
||||||
+ cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>; // bsp
|
|
||||||
+ clock-frequency = <150000000>;
|
|
||||||
+ disable-wp;
|
|
||||||
+ sd-uhs-sdr104;
|
|
||||||
+ max-frequency = <150000000>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
|
|
||||||
+ vqmmc-supply = <&vcc_sd>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&sdhci {
|
|
||||||
+ bus-width = <8>;
|
|
||||||
+ mmc-hs400-1_8v;
|
|
||||||
+ mmc-hs400-enhanced-strobe;
|
|
||||||
+ keep-power-in-suspend;
|
|
||||||
+ non-removable;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+/*
|
|
||||||
+&spi1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ norflash: flash@0 {
|
|
||||||
+ compatible = "jedec,spi-nor";
|
|
||||||
+ reg = <0>;
|
|
||||||
+ spi-max-frequency = <50000000>;
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+*/
|
|
||||||
+
|
|
||||||
+&spi2 {
|
|
||||||
+ status = "okay";
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&spi2_clk &spi2_tx &spi2_cs0>;
|
|
||||||
+
|
|
||||||
+ st7735r@0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+ compatible = "sitronix,st7735r";
|
|
||||||
+ reg = <0>;
|
|
||||||
+ rgb;
|
|
||||||
+ rotate = <270>;
|
|
||||||
+ width = <80>;
|
|
||||||
+ height = <160>;
|
|
||||||
+ fps = <30>;
|
|
||||||
+ buswidth = <8>;
|
|
||||||
+ backlight = <&backlight>;
|
|
||||||
+ dc-gpios = <&gpio4 RK_PD5 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ reset-gpios = <&gpio4 RK_PD1 GPIO_ACTIVE_LOW>;
|
|
||||||
+ led-gpios = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ spi-max-frequency = <32000000>;
|
|
||||||
+ spi-cpol;
|
|
||||||
+ spi-cpha;
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&tcphy0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&tcphy1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&tsadc {
|
|
||||||
+ /* tshut mode 0:CRU 1:GPIO */
|
|
||||||
+ rockchip,hw-tshut-mode = <1>;
|
|
||||||
+ /* tshut polarity 0:LOW 1:HIGH */
|
|
||||||
+ rockchip,hw-tshut-polarity = <1>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&u2phy0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ u2phy0_otg: otg-port {
|
|
||||||
+ status = "okay";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ u2phy0_host: host-port {
|
|
||||||
+ status = "okay";
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&u2phy1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ u2phy1_otg: otg-port {
|
|
||||||
+ status = "okay";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ u2phy1_host: host-port {
|
|
||||||
+ status = "okay";
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&uart0 {
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ bluetooth {
|
|
||||||
+ compatible = "brcm,bcm43438-bt";
|
|
||||||
+ clocks = <&rk808 1>;
|
|
||||||
+ clock-names = "lpo";
|
|
||||||
+ device-wakeup-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ max-speed = <4000000>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
|
|
||||||
+ vbat-supply = <&vcc3v3_sys>;
|
|
||||||
+ vddio-supply = <&vcc_1v8>;
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+// Debug TTL
|
|
||||||
+&uart2 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usb_host0_ehci {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usb_host0_ohci {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usb_host1_ehci {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usb_host1_ohci {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usbdrd3_0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usbdrd_dwc3_0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+ dr_mode = "host";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usbdrd3_1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usbdrd_dwc3_1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+ dr_mode = "host";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&vopb {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&vopb_mmu {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&vopl {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&vopl_mmu {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&iep_mmu {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
--
|
|
||||||
Armbian
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,870 @@
|
||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
#include <dt-bindings/input/linux-event-codes.h>
|
||||||
|
#include <dt-bindings/pwm/pwm.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
#include "rk3399.dtsi"
|
||||||
|
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Rockchip Fine3399";
|
||||||
|
compatible = "rockchip,fine3399", "rockchip,rk3399";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
mmc0 = &sdio0;
|
||||||
|
mmc1 = &sdmmc;
|
||||||
|
mmc2 = &sdhci;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial2:1500000n8";
|
||||||
|
};
|
||||||
|
|
||||||
|
clkin_gmac: external-gmac-clock {
|
||||||
|
compatible = "fixed-clock";
|
||||||
|
clock-frequency = <125000000>;
|
||||||
|
clock-output-names = "clkin_gmac";
|
||||||
|
#clock-cells = <0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
dc_12v: dc-12v {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "dc_12v";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <12000000>;
|
||||||
|
regulator-max-microvolt = <12000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdio_pwrseq: sdio-pwrseq {
|
||||||
|
compatible = "mmc-pwrseq-simple";
|
||||||
|
clocks = <&rk808 1>;
|
||||||
|
clock-names = "ext_clock";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&wifi_reg_on_h>;
|
||||||
|
reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; // bsp
|
||||||
|
};
|
||||||
|
|
||||||
|
/* switched by pmic_sleep */
|
||||||
|
vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc1v8_s3";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
vin-supply = <&vcc_1v8>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc3v3_sys: vcc3v3_pcie: vcc3v3_bl: vcc3v3-sys { // sch
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc3v3_sys";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <3300000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
vin-supply = <&dc_12v>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_sys: vcc-sys { // sch
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc_sys";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <5000000>;
|
||||||
|
regulator-max-microvolt = <5000000>;
|
||||||
|
vin-supply = <&dc_12v>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_phy: vcc-phy-regulator {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
enable-active-high;
|
||||||
|
gpio = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&vcc_phy_h>;
|
||||||
|
regulator-name = "vcc_phy";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
};
|
||||||
|
|
||||||
|
vdd_log: vdd-log {
|
||||||
|
compatible = "pwm-regulator";
|
||||||
|
pwms = <&pwm2 0 25000 1>;
|
||||||
|
regulator-name = "vdd_log";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <800000>;
|
||||||
|
regulator-max-microvolt = <1400000>;
|
||||||
|
vin-supply = <&vcc_sys>;
|
||||||
|
};
|
||||||
|
|
||||||
|
leds: gpio-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&user_led2>;
|
||||||
|
|
||||||
|
user_led2 {
|
||||||
|
label = "blue:work_led";
|
||||||
|
gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_LOW>; // sch
|
||||||
|
linux,default-trigger = "heartbeat";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
autorepeat;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&power_key>;
|
||||||
|
|
||||||
|
power {
|
||||||
|
debounce-interval = <100>;
|
||||||
|
gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; // bsp
|
||||||
|
label = "GPIO Key Power";
|
||||||
|
linux,code = <KEY_POWER>;
|
||||||
|
wakeup-source;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
fan0: pwm-fan {
|
||||||
|
compatible = "pwm-fan";
|
||||||
|
cooling-levels = <0 30 60 90 120 160>;
|
||||||
|
#cooling-cells = <2>;
|
||||||
|
fan-supply = <&vcc_sys>;
|
||||||
|
pwms = <&pwm1 0 40000 0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
// pwm3
|
||||||
|
ir-receiver {
|
||||||
|
compatible = "gpio-ir-receiver";
|
||||||
|
gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&ir_int>;
|
||||||
|
};
|
||||||
|
|
||||||
|
adc-keys {
|
||||||
|
compatible = "adc-keys";
|
||||||
|
io-channels = <&saradc 1>;
|
||||||
|
io-channel-names = "buttons";
|
||||||
|
keyup-threshold-microvolt = <1750000>;
|
||||||
|
poll-interval = <100>;
|
||||||
|
|
||||||
|
recovery {
|
||||||
|
label = "Recovery";
|
||||||
|
linux,code = <KEY_VENDOR>; // ??
|
||||||
|
press-threshold-microvolt = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
backlight: backlight {
|
||||||
|
compatible = "pwm-backlight";
|
||||||
|
brightness-levels = <0 4 8 16 32 64 128 255>;
|
||||||
|
default-brightness-level = <5>;
|
||||||
|
pwms = <&pwm0 0 1000000 0>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_l0 {
|
||||||
|
cpu-supply = <&vdd_cpu_l>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_l1 {
|
||||||
|
cpu-supply = <&vdd_cpu_l>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_l2 {
|
||||||
|
cpu-supply = <&vdd_cpu_l>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_l3 {
|
||||||
|
cpu-supply = <&vdd_cpu_l>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_b0 {
|
||||||
|
cpu-supply = <&vdd_cpu_b>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_b1 {
|
||||||
|
cpu-supply = <&vdd_cpu_b>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpu {
|
||||||
|
mali-supply = <&vdd_gpu>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_thermal {
|
||||||
|
trips {
|
||||||
|
cpu_warm: cpu_warm {
|
||||||
|
temperature = <50000>;
|
||||||
|
hysteresis = <2000>;
|
||||||
|
type = "active";
|
||||||
|
};
|
||||||
|
|
||||||
|
cpu_hot: cpu_hot {
|
||||||
|
temperature = <65000>;
|
||||||
|
hysteresis = <2000>;
|
||||||
|
type = "active";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
cooling-maps {
|
||||||
|
map2 {
|
||||||
|
trip = <&cpu_warm>;
|
||||||
|
cooling-device = <&fan0 THERMAL_NO_LIMIT 1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
map3 {
|
||||||
|
trip = <&cpu_hot>;
|
||||||
|
cooling-device = <&fan0 4 THERMAL_NO_LIMIT>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&emmc_phy {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gmac {
|
||||||
|
assigned-clocks = <&cru SCLK_RMII_SRC>;
|
||||||
|
assigned-clock-parents = <&clkin_gmac>;
|
||||||
|
clock_in_out = "input";
|
||||||
|
phy-supply = <&vcc_phy>;
|
||||||
|
phy-mode = "rgmii";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&rgmii_pins>;
|
||||||
|
snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; // bsp
|
||||||
|
snps,reset-active-low;
|
||||||
|
snps,reset-delays-us = <0 10000 50000>;
|
||||||
|
tx_delay = <0x28>;
|
||||||
|
rx_delay = <0x11>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpu {
|
||||||
|
mali-supply = <&vdd_gpu>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpu_thermal {
|
||||||
|
trips {
|
||||||
|
gpu_warm: gpu_warm {
|
||||||
|
temperature = <50000>;
|
||||||
|
hysteresis = <2000>;
|
||||||
|
type = "active";
|
||||||
|
};
|
||||||
|
|
||||||
|
gpu_hot: gpu_hot {
|
||||||
|
temperature = <65000>;
|
||||||
|
hysteresis = <2000>;
|
||||||
|
type = "active";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
cooling-maps {
|
||||||
|
map1 {
|
||||||
|
trip = <&gpu_warm>;
|
||||||
|
cooling-device = <&fan0 THERMAL_NO_LIMIT 1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
map2 {
|
||||||
|
trip = <&gpu_hot>;
|
||||||
|
cooling-device = <&fan0 4 THERMAL_NO_LIMIT>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&hdmi {
|
||||||
|
ddc-i2c-bus = <&i2c3>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&hdmi_cec>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&hdmi_sound {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c0 {
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
i2c-scl-rising-time-ns = <168>;
|
||||||
|
i2c-scl-falling-time-ns = <4>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
rk808: pmic@1b {
|
||||||
|
compatible = "rockchip,rk808";
|
||||||
|
reg = <0x1b>;
|
||||||
|
interrupt-parent = <&gpio1>;
|
||||||
|
interrupts = <RK_PC5 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
#clock-cells = <1>;
|
||||||
|
clock-output-names = "xin32k", "rk808-clkout2";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
|
||||||
|
rockchip,system-power-controller;
|
||||||
|
wakeup-source;
|
||||||
|
|
||||||
|
vcc1-supply = <&vcc3v3_sys>;
|
||||||
|
vcc2-supply = <&vcc3v3_sys>;
|
||||||
|
vcc3-supply = <&vcc3v3_sys>;
|
||||||
|
vcc4-supply = <&vcc3v3_sys>;
|
||||||
|
vcc6-supply = <&vcc3v3_sys>;
|
||||||
|
vcc7-supply = <&vcc3v3_sys>;
|
||||||
|
vcc8-supply = <&vcc3v3_sys>;
|
||||||
|
vcc9-supply = <&vcc3v3_sys>;
|
||||||
|
vcc10-supply = <&vcc3v3_sys>;
|
||||||
|
vcc11-supply = <&vcc3v3_sys>;
|
||||||
|
vcc12-supply = <&vcc3v3_sys>;
|
||||||
|
vddio-supply = <&vcc1v8_pmu>;
|
||||||
|
|
||||||
|
regulators {
|
||||||
|
vdd_center: DCDC_REG1 {
|
||||||
|
regulator-name = "vdd_center";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <750000>;
|
||||||
|
regulator-max-microvolt = <1350000>;
|
||||||
|
regulator-ramp-delay = <6001>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vdd_cpu_l: DCDC_REG2 {
|
||||||
|
regulator-name = "vdd_cpu_l";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <750000>;
|
||||||
|
regulator-max-microvolt = <1350000>;
|
||||||
|
regulator-ramp-delay = <6001>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_ddr: DCDC_REG3 {
|
||||||
|
regulator-name = "vcc_ddr";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_1v8: DCDC_REG4 {
|
||||||
|
regulator-name = "vcc_1v8";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
regulator-suspend-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc1v8_dvp: LDO_REG1 {
|
||||||
|
regulator-name = "vcc1v8_dvp";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc3v0_tp: LDO_REG2 {
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <3000000>;
|
||||||
|
regulator-max-microvolt = <3000000>;
|
||||||
|
regulator-name = "vcc3v0_tp";
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc1v8_pmu: LDO_REG3 {
|
||||||
|
regulator-name = "vcc1v8_pmu";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
regulator-suspend-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_sd: LDO_REG4 {
|
||||||
|
regulator-name = "vcc_sd";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
regulator-suspend-microvolt = <3300000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcca3v0_codec: LDO_REG5 {
|
||||||
|
regulator-name = "vcca3v0_codec";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <3000000>;
|
||||||
|
regulator-max-microvolt = <3000000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_1v5: LDO_REG6 {
|
||||||
|
regulator-name = "vcc_1v5";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1500000>;
|
||||||
|
regulator-max-microvolt = <1500000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
regulator-suspend-microvolt = <1500000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcca1v8_codec: LDO_REG7 {
|
||||||
|
regulator-name = "vcca1v8_codec";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_3v0: LDO_REG8 {
|
||||||
|
regulator-name = "vcc_3v0";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <3000000>;
|
||||||
|
regulator-max-microvolt = <3000000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
regulator-suspend-microvolt = <3000000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc3v3_s3: SWITCH_REG1 {
|
||||||
|
regulator-name = "vcc3v3_s3";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc3v3_s0: SWITCH_REG2 {
|
||||||
|
regulator-name = "vcc3v3_s0";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vdd_cpu_b: regulator@40 {
|
||||||
|
compatible = "silergy,syr827";
|
||||||
|
reg = <0x40>;
|
||||||
|
fcs,suspend-voltage-selector = <1>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&cpu_b_sleep>;
|
||||||
|
regulator-name = "vdd_cpu_b";
|
||||||
|
regulator-min-microvolt = <712500>;
|
||||||
|
regulator-max-microvolt = <1500000>;
|
||||||
|
regulator-ramp-delay = <1000>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
vin-supply = <&vcc_sys>;
|
||||||
|
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vdd_gpu: regulator@41 {
|
||||||
|
compatible = "silergy,syr828";
|
||||||
|
reg = <0x41>;
|
||||||
|
fcs,suspend-voltage-selector = <1>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&gpu_sleep>;
|
||||||
|
regulator-name = "vdd_gpu";
|
||||||
|
regulator-min-microvolt = <712500>;
|
||||||
|
regulator-max-microvolt = <1500000>;
|
||||||
|
regulator-ramp-delay = <1000>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
vin-supply = <&vcc_sys>;
|
||||||
|
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
// Used for HDMI
|
||||||
|
&i2c3 {
|
||||||
|
i2c-scl-rising-time-ns = <450>;
|
||||||
|
i2c-scl-falling-time-ns = <15>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
// HDMI sound
|
||||||
|
&i2s2 {
|
||||||
|
#sound-dai-cells = <0>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&io_domains {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
bt656-supply = <&vcc_3v0>;
|
||||||
|
audio-supply = <&vcca1v8_codec>;
|
||||||
|
sdmmc-supply = <&vcc_sd>;
|
||||||
|
gpio1830-supply = <&vcc_3v0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&pmu_io_domains {
|
||||||
|
status = "okay";
|
||||||
|
pmu1830-supply = <&vcc_1v8>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie_phy {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie0 {
|
||||||
|
ep-gpios = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>; // sch
|
||||||
|
max-link-speed = <2>;
|
||||||
|
num-lanes = <2>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pcie_clkreqn_cpm>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pinctrl {
|
||||||
|
pmic {
|
||||||
|
cpu_b_sleep: cpu-b-sleep {
|
||||||
|
rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gpu_sleep: gpu-sleep {
|
||||||
|
rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pmic_int_l: pmic-int-l {
|
||||||
|
rockchip,pins = <1 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pmic_dvs2: pmic-dvs2 {
|
||||||
|
rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>; // bsp
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sdio-pwrseq {
|
||||||
|
wifi_reg_on_h: wifi-reg-on-h {
|
||||||
|
rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
wifi {
|
||||||
|
wifi_host_wake_l: wifi-host-wake-l {
|
||||||
|
rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
spi2 {
|
||||||
|
spi2_cs0: spi2-cs0 {
|
||||||
|
rockchip,pins =
|
||||||
|
<2 RK_PB4 2 &pcfg_pull_up>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
display_pin:display-pin {
|
||||||
|
DC_pin: dc-pin {
|
||||||
|
rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
reset_pin: reset-pin {
|
||||||
|
rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
bt {
|
||||||
|
bt_enable_h: bt-enable-h {
|
||||||
|
rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
|
||||||
|
bt_host_wake_l: bt-host-wake-l {
|
||||||
|
rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||||
|
};
|
||||||
|
|
||||||
|
bt_wake_l: bt-wake-l {
|
||||||
|
rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gmac {
|
||||||
|
vcc_phy_h: vcc-phy-h {
|
||||||
|
rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
user_led2: user_led2 {
|
||||||
|
rockchip,pins =
|
||||||
|
<2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ir {
|
||||||
|
ir_int: ir-int {
|
||||||
|
rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
buttons {
|
||||||
|
power_key: power_key {
|
||||||
|
rockchip,pins =
|
||||||
|
<0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
// TFT
|
||||||
|
&pwm0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
// FAN
|
||||||
|
&pwm1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pwm2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&saradc {
|
||||||
|
vref-supply = <&vcca1v8_s3>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdio0 {
|
||||||
|
bus-width = <4>;
|
||||||
|
cap-sd-highspeed;
|
||||||
|
cap-sdio-irq;
|
||||||
|
clock-frequency = <50000000>;
|
||||||
|
disable-wp;
|
||||||
|
keep-power-in-suspend;
|
||||||
|
max-frequency = <50000000>;
|
||||||
|
mmc-pwrseq = <&sdio_pwrseq>;
|
||||||
|
non-removable;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
|
||||||
|
sd-uhs-sdr104;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
brcmf: wifi@1 {
|
||||||
|
reg = <1>;
|
||||||
|
compatible = "brcm,bcm4329-fmac";
|
||||||
|
interrupt-parent = <&gpio0>;
|
||||||
|
interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
|
||||||
|
interrupt-names = "host-wake";
|
||||||
|
brcm,drive-strength = <5>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&wifi_host_wake_l>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdmmc {
|
||||||
|
bus-width = <4>;
|
||||||
|
cap-sd-highspeed;
|
||||||
|
cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>; // bsp
|
||||||
|
clock-frequency = <150000000>;
|
||||||
|
disable-wp;
|
||||||
|
sd-uhs-sdr104;
|
||||||
|
max-frequency = <150000000>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
|
||||||
|
vqmmc-supply = <&vcc_sd>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhci {
|
||||||
|
bus-width = <8>;
|
||||||
|
mmc-hs400-1_8v;
|
||||||
|
mmc-hs400-enhanced-strobe;
|
||||||
|
keep-power-in-suspend;
|
||||||
|
non-removable;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
/*
|
||||||
|
&spi1 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
norflash: flash@0 {
|
||||||
|
compatible = "jedec,spi-nor";
|
||||||
|
reg = <0>;
|
||||||
|
spi-max-frequency = <50000000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
|
||||||
|
&spi2 {
|
||||||
|
status = "okay";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&spi2_clk &spi2_tx &spi2_cs0>;
|
||||||
|
|
||||||
|
st7735r@0 {
|
||||||
|
status = "okay";
|
||||||
|
compatible = "sitronix,st7735r";
|
||||||
|
reg = <0>;
|
||||||
|
rgb;
|
||||||
|
rotate = <270>;
|
||||||
|
width = <80>;
|
||||||
|
height = <160>;
|
||||||
|
fps = <30>;
|
||||||
|
buswidth = <8>;
|
||||||
|
backlight = <&backlight>;
|
||||||
|
dc-gpios = <&gpio4 RK_PD5 GPIO_ACTIVE_HIGH>;
|
||||||
|
reset-gpios = <&gpio4 RK_PD1 GPIO_ACTIVE_LOW>;
|
||||||
|
led-gpios = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>;
|
||||||
|
spi-max-frequency = <32000000>;
|
||||||
|
spi-cpol;
|
||||||
|
spi-cpha;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&tcphy0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&tcphy1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&tsadc {
|
||||||
|
/* tshut mode 0:CRU 1:GPIO */
|
||||||
|
rockchip,hw-tshut-mode = <1>;
|
||||||
|
/* tshut polarity 0:LOW 1:HIGH */
|
||||||
|
rockchip,hw-tshut-polarity = <1>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&u2phy0 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
u2phy0_otg: otg-port {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
u2phy0_host: host-port {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&u2phy1 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
u2phy1_otg: otg-port {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
u2phy1_host: host-port {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
bluetooth {
|
||||||
|
compatible = "brcm,bcm43438-bt";
|
||||||
|
clocks = <&rk808 1>;
|
||||||
|
clock-names = "lpo";
|
||||||
|
device-wakeup-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
|
||||||
|
host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
|
||||||
|
shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
|
||||||
|
max-speed = <4000000>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
|
||||||
|
vbat-supply = <&vcc3v3_sys>;
|
||||||
|
vddio-supply = <&vcc_1v8>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
// Debug TTL
|
||||||
|
&uart2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb_host0_ehci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb_host0_ohci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb_host1_ehci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb_host1_ohci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbdrd3_0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbdrd_dwc3_0 {
|
||||||
|
status = "okay";
|
||||||
|
dr_mode = "host";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbdrd3_1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbdrd_dwc3_1 {
|
||||||
|
status = "okay";
|
||||||
|
dr_mode = "host";
|
||||||
|
};
|
||||||
|
|
||||||
|
&vopb {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&vopb_mmu {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&vopl {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&vopl_mmu {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&iep_mmu {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
@ -1,892 +0,0 @@
|
||||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Lemon1151 <smile1151@foxmail.com>
|
|
||||||
Date: Mon, 3 Jun 2024 12:32:02 +0200
|
|
||||||
Subject: Adding support for the fine3399 board
|
|
||||||
|
|
||||||
> X-Git-Archeology: - Revision 8f64f0508237888dd326018fa9a392346b8ec5ab: https://github.com/armbian/build/commit/8f64f0508237888dd326018fa9a392346b8ec5ab
|
|
||||||
> X-Git-Archeology: Date: Mon, 03 Jun 2024 12:32:02 +0200
|
|
||||||
> X-Git-Archeology: From: Lemon1151 <smile1151@foxmail.com>
|
|
||||||
> X-Git-Archeology: Subject: Adding support for the fine3399 board
|
|
||||||
---
|
|
||||||
arch/arm64/boot/dts/rockchip/rk3399-fine3399.dts | 870 ++++++++++
|
|
||||||
1 file changed, 870 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-fine3399.dts b/arch/arm64/boot/dts/rockchip/rk3399-fine3399.dts
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000000..111111111111
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/arch/arm64/boot/dts/rockchip/rk3399-fine3399.dts
|
|
||||||
@@ -0,0 +1,870 @@
|
|
||||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
||||||
+
|
|
||||||
+/dts-v1/;
|
|
||||||
+#include <dt-bindings/input/linux-event-codes.h>
|
|
||||||
+#include <dt-bindings/pwm/pwm.h>
|
|
||||||
+#include <dt-bindings/input/input.h>
|
|
||||||
+#include "rk3399.dtsi"
|
|
||||||
+
|
|
||||||
+
|
|
||||||
+/ {
|
|
||||||
+ model = "Rockchip Fine3399";
|
|
||||||
+ compatible = "rockchip,fine3399", "rockchip,rk3399";
|
|
||||||
+
|
|
||||||
+ aliases {
|
|
||||||
+ mmc0 = &sdio0;
|
|
||||||
+ mmc1 = &sdmmc;
|
|
||||||
+ mmc2 = &sdhci;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ chosen {
|
|
||||||
+ stdout-path = "serial2:1500000n8";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ clkin_gmac: external-gmac-clock {
|
|
||||||
+ compatible = "fixed-clock";
|
|
||||||
+ clock-frequency = <125000000>;
|
|
||||||
+ clock-output-names = "clkin_gmac";
|
|
||||||
+ #clock-cells = <0>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ dc_12v: dc-12v {
|
|
||||||
+ compatible = "regulator-fixed";
|
|
||||||
+ regulator-name = "dc_12v";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <12000000>;
|
|
||||||
+ regulator-max-microvolt = <12000000>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ sdio_pwrseq: sdio-pwrseq {
|
|
||||||
+ compatible = "mmc-pwrseq-simple";
|
|
||||||
+ clocks = <&rk808 1>;
|
|
||||||
+ clock-names = "ext_clock";
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&wifi_reg_on_h>;
|
|
||||||
+ reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; // bsp
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ /* switched by pmic_sleep */
|
|
||||||
+ vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 {
|
|
||||||
+ compatible = "regulator-fixed";
|
|
||||||
+ regulator-name = "vcc1v8_s3";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <1800000>;
|
|
||||||
+ vin-supply = <&vcc_1v8>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc3v3_sys: vcc3v3_pcie: vcc3v3_bl: vcc3v3-sys { // sch
|
|
||||||
+ compatible = "regulator-fixed";
|
|
||||||
+ regulator-name = "vcc3v3_sys";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <3300000>;
|
|
||||||
+ regulator-max-microvolt = <3300000>;
|
|
||||||
+ vin-supply = <&dc_12v>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_sys: vcc-sys { // sch
|
|
||||||
+ compatible = "regulator-fixed";
|
|
||||||
+ regulator-name = "vcc_sys";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <5000000>;
|
|
||||||
+ regulator-max-microvolt = <5000000>;
|
|
||||||
+ vin-supply = <&dc_12v>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_phy: vcc-phy-regulator {
|
|
||||||
+ compatible = "regulator-fixed";
|
|
||||||
+ enable-active-high;
|
|
||||||
+ gpio = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&vcc_phy_h>;
|
|
||||||
+ regulator-name = "vcc_phy";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vdd_log: vdd-log {
|
|
||||||
+ compatible = "pwm-regulator";
|
|
||||||
+ pwms = <&pwm2 0 25000 1>;
|
|
||||||
+ regulator-name = "vdd_log";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <800000>;
|
|
||||||
+ regulator-max-microvolt = <1400000>;
|
|
||||||
+ vin-supply = <&vcc_sys>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ leds: gpio-leds {
|
|
||||||
+ compatible = "gpio-leds";
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&user_led2>;
|
|
||||||
+
|
|
||||||
+ user_led2 {
|
|
||||||
+ label = "blue:work_led";
|
|
||||||
+ gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_LOW>; // sch
|
|
||||||
+ linux,default-trigger = "heartbeat";
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ gpio-keys {
|
|
||||||
+ compatible = "gpio-keys";
|
|
||||||
+ autorepeat;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&power_key>;
|
|
||||||
+
|
|
||||||
+ power {
|
|
||||||
+ debounce-interval = <100>;
|
|
||||||
+ gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; // bsp
|
|
||||||
+ label = "GPIO Key Power";
|
|
||||||
+ linux,code = <KEY_POWER>;
|
|
||||||
+ wakeup-source;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ fan0: pwm-fan {
|
|
||||||
+ compatible = "pwm-fan";
|
|
||||||
+ cooling-levels = <0 30 60 90 120 160>;
|
|
||||||
+ #cooling-cells = <2>;
|
|
||||||
+ fan-supply = <&vcc_sys>;
|
|
||||||
+ pwms = <&pwm1 0 40000 0>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ // pwm3
|
|
||||||
+ ir-receiver {
|
|
||||||
+ compatible = "gpio-ir-receiver";
|
|
||||||
+ gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&ir_int>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ adc-keys {
|
|
||||||
+ compatible = "adc-keys";
|
|
||||||
+ io-channels = <&saradc 1>;
|
|
||||||
+ io-channel-names = "buttons";
|
|
||||||
+ keyup-threshold-microvolt = <1750000>;
|
|
||||||
+ poll-interval = <100>;
|
|
||||||
+
|
|
||||||
+ recovery {
|
|
||||||
+ label = "Recovery";
|
|
||||||
+ linux,code = <KEY_VENDOR>; // ??
|
|
||||||
+ press-threshold-microvolt = <0>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ backlight: backlight {
|
|
||||||
+ compatible = "pwm-backlight";
|
|
||||||
+ brightness-levels = <0 4 8 16 32 64 128 255>;
|
|
||||||
+ default-brightness-level = <5>;
|
|
||||||
+ pwms = <&pwm0 0 1000000 0>;
|
|
||||||
+ status = "okay";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_l0 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_l>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_l1 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_l>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_l2 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_l>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_l3 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_l>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_b0 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_b>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_b1 {
|
|
||||||
+ cpu-supply = <&vdd_cpu_b>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&gpu {
|
|
||||||
+ mali-supply = <&vdd_gpu>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&cpu_thermal {
|
|
||||||
+ trips {
|
|
||||||
+ cpu_warm: cpu_warm {
|
|
||||||
+ temperature = <50000>;
|
|
||||||
+ hysteresis = <2000>;
|
|
||||||
+ type = "active";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ cpu_hot: cpu_hot {
|
|
||||||
+ temperature = <65000>;
|
|
||||||
+ hysteresis = <2000>;
|
|
||||||
+ type = "active";
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ cooling-maps {
|
|
||||||
+ map2 {
|
|
||||||
+ trip = <&cpu_warm>;
|
|
||||||
+ cooling-device = <&fan0 THERMAL_NO_LIMIT 1>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ map3 {
|
|
||||||
+ trip = <&cpu_hot>;
|
|
||||||
+ cooling-device = <&fan0 4 THERMAL_NO_LIMIT>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&emmc_phy {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&gmac {
|
|
||||||
+ assigned-clocks = <&cru SCLK_RMII_SRC>;
|
|
||||||
+ assigned-clock-parents = <&clkin_gmac>;
|
|
||||||
+ clock_in_out = "input";
|
|
||||||
+ phy-supply = <&vcc_phy>;
|
|
||||||
+ phy-mode = "rgmii";
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&rgmii_pins>;
|
|
||||||
+ snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; // bsp
|
|
||||||
+ snps,reset-active-low;
|
|
||||||
+ snps,reset-delays-us = <0 10000 50000>;
|
|
||||||
+ tx_delay = <0x28>;
|
|
||||||
+ rx_delay = <0x11>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&gpu {
|
|
||||||
+ mali-supply = <&vdd_gpu>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&gpu_thermal {
|
|
||||||
+ trips {
|
|
||||||
+ gpu_warm: gpu_warm {
|
|
||||||
+ temperature = <50000>;
|
|
||||||
+ hysteresis = <2000>;
|
|
||||||
+ type = "active";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ gpu_hot: gpu_hot {
|
|
||||||
+ temperature = <65000>;
|
|
||||||
+ hysteresis = <2000>;
|
|
||||||
+ type = "active";
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ cooling-maps {
|
|
||||||
+ map1 {
|
|
||||||
+ trip = <&gpu_warm>;
|
|
||||||
+ cooling-device = <&fan0 THERMAL_NO_LIMIT 1>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ map2 {
|
|
||||||
+ trip = <&gpu_hot>;
|
|
||||||
+ cooling-device = <&fan0 4 THERMAL_NO_LIMIT>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&hdmi {
|
|
||||||
+ ddc-i2c-bus = <&i2c3>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&hdmi_cec>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&hdmi_sound {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&i2c0 {
|
|
||||||
+ clock-frequency = <400000>;
|
|
||||||
+ i2c-scl-rising-time-ns = <168>;
|
|
||||||
+ i2c-scl-falling-time-ns = <4>;
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ rk808: pmic@1b {
|
|
||||||
+ compatible = "rockchip,rk808";
|
|
||||||
+ reg = <0x1b>;
|
|
||||||
+ interrupt-parent = <&gpio1>;
|
|
||||||
+ interrupts = <RK_PC5 IRQ_TYPE_LEVEL_LOW>;
|
|
||||||
+ #clock-cells = <1>;
|
|
||||||
+ clock-output-names = "xin32k", "rk808-clkout2";
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
|
|
||||||
+ system-power-controller;
|
|
||||||
+ wakeup-source;
|
|
||||||
+
|
|
||||||
+ vcc1-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc2-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc3-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc4-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc6-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc7-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc8-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc9-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc10-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc11-supply = <&vcc3v3_sys>;
|
|
||||||
+ vcc12-supply = <&vcc3v3_sys>;
|
|
||||||
+ vddio-supply = <&vcc1v8_pmu>;
|
|
||||||
+
|
|
||||||
+ regulators {
|
|
||||||
+ vdd_center: DCDC_REG1 {
|
|
||||||
+ regulator-name = "vdd_center";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <750000>;
|
|
||||||
+ regulator-max-microvolt = <1350000>;
|
|
||||||
+ regulator-ramp-delay = <6001>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vdd_cpu_l: DCDC_REG2 {
|
|
||||||
+ regulator-name = "vdd_cpu_l";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <750000>;
|
|
||||||
+ regulator-max-microvolt = <1350000>;
|
|
||||||
+ regulator-ramp-delay = <6001>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_ddr: DCDC_REG3 {
|
|
||||||
+ regulator-name = "vcc_ddr";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_1v8: DCDC_REG4 {
|
|
||||||
+ regulator-name = "vcc_1v8";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <1800000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ regulator-suspend-microvolt = <1800000>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc1v8_dvp: LDO_REG1 {
|
|
||||||
+ regulator-name = "vcc1v8_dvp";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <1800000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc3v0_tp: LDO_REG2 {
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <3000000>;
|
|
||||||
+ regulator-max-microvolt = <3000000>;
|
|
||||||
+ regulator-name = "vcc3v0_tp";
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc1v8_pmu: LDO_REG3 {
|
|
||||||
+ regulator-name = "vcc1v8_pmu";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <1800000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ regulator-suspend-microvolt = <1800000>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_sd: LDO_REG4 {
|
|
||||||
+ regulator-name = "vcc_sd";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <3300000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ regulator-suspend-microvolt = <3300000>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcca3v0_codec: LDO_REG5 {
|
|
||||||
+ regulator-name = "vcca3v0_codec";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <3000000>;
|
|
||||||
+ regulator-max-microvolt = <3000000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_1v5: LDO_REG6 {
|
|
||||||
+ regulator-name = "vcc_1v5";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1500000>;
|
|
||||||
+ regulator-max-microvolt = <1500000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ regulator-suspend-microvolt = <1500000>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcca1v8_codec: LDO_REG7 {
|
|
||||||
+ regulator-name = "vcca1v8_codec";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <1800000>;
|
|
||||||
+ regulator-max-microvolt = <1800000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc_3v0: LDO_REG8 {
|
|
||||||
+ regulator-name = "vcc_3v0";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-min-microvolt = <3000000>;
|
|
||||||
+ regulator-max-microvolt = <3000000>;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-on-in-suspend;
|
|
||||||
+ regulator-suspend-microvolt = <3000000>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc3v3_s3: SWITCH_REG1 {
|
|
||||||
+ regulator-name = "vcc3v3_s3";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vcc3v3_s0: SWITCH_REG2 {
|
|
||||||
+ regulator-name = "vcc3v3_s0";
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vdd_cpu_b: regulator@40 {
|
|
||||||
+ compatible = "silergy,syr827";
|
|
||||||
+ reg = <0x40>;
|
|
||||||
+ fcs,suspend-voltage-selector = <1>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&cpu_b_sleep>;
|
|
||||||
+ regulator-name = "vdd_cpu_b";
|
|
||||||
+ regulator-min-microvolt = <712500>;
|
|
||||||
+ regulator-max-microvolt = <1500000>;
|
|
||||||
+ regulator-ramp-delay = <1000>;
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ vin-supply = <&vcc_sys>;
|
|
||||||
+
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ vdd_gpu: regulator@41 {
|
|
||||||
+ compatible = "silergy,syr828";
|
|
||||||
+ reg = <0x41>;
|
|
||||||
+ fcs,suspend-voltage-selector = <1>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&gpu_sleep>;
|
|
||||||
+ regulator-name = "vdd_gpu";
|
|
||||||
+ regulator-min-microvolt = <712500>;
|
|
||||||
+ regulator-max-microvolt = <1500000>;
|
|
||||||
+ regulator-ramp-delay = <1000>;
|
|
||||||
+ regulator-always-on;
|
|
||||||
+ regulator-boot-on;
|
|
||||||
+ vin-supply = <&vcc_sys>;
|
|
||||||
+
|
|
||||||
+ regulator-state-mem {
|
|
||||||
+ regulator-off-in-suspend;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+// Used for HDMI
|
|
||||||
+&i2c3 {
|
|
||||||
+ i2c-scl-rising-time-ns = <450>;
|
|
||||||
+ i2c-scl-falling-time-ns = <15>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+// HDMI sound
|
|
||||||
+&i2s2 {
|
|
||||||
+ #sound-dai-cells = <0>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&io_domains {
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ bt656-supply = <&vcc_3v0>;
|
|
||||||
+ audio-supply = <&vcca1v8_codec>;
|
|
||||||
+ sdmmc-supply = <&vcc_sd>;
|
|
||||||
+ gpio1830-supply = <&vcc_3v0>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&pmu_io_domains {
|
|
||||||
+ status = "okay";
|
|
||||||
+ pmu1830-supply = <&vcc_1v8>;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&pcie_phy {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&pcie0 {
|
|
||||||
+ ep-gpios = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>; // sch
|
|
||||||
+ max-link-speed = <2>;
|
|
||||||
+ num-lanes = <2>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&pcie_clkreqn_cpm>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&pinctrl {
|
|
||||||
+ pmic {
|
|
||||||
+ cpu_b_sleep: cpu-b-sleep {
|
|
||||||
+ rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ gpu_sleep: gpu-sleep {
|
|
||||||
+ rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ pmic_int_l: pmic-int-l {
|
|
||||||
+ rockchip,pins = <1 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ pmic_dvs2: pmic-dvs2 {
|
|
||||||
+ rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>; // bsp
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ sdio-pwrseq {
|
|
||||||
+ wifi_reg_on_h: wifi-reg-on-h {
|
|
||||||
+ rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ wifi {
|
|
||||||
+ wifi_host_wake_l: wifi-host-wake-l {
|
|
||||||
+ rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ spi2 {
|
|
||||||
+ spi2_cs0: spi2-cs0 {
|
|
||||||
+ rockchip,pins =
|
|
||||||
+ <2 RK_PB4 2 &pcfg_pull_up>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ display_pin:display-pin {
|
|
||||||
+ DC_pin: dc-pin {
|
|
||||||
+ rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ reset_pin: reset-pin {
|
|
||||||
+ rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ bt {
|
|
||||||
+ bt_enable_h: bt-enable-h {
|
|
||||||
+ rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ bt_host_wake_l: bt-host-wake-l {
|
|
||||||
+ rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ bt_wake_l: bt-wake-l {
|
|
||||||
+ rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ gmac {
|
|
||||||
+ vcc_phy_h: vcc-phy-h {
|
|
||||||
+ rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ leds {
|
|
||||||
+ user_led2: user_led2 {
|
|
||||||
+ rockchip,pins =
|
|
||||||
+ <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ ir {
|
|
||||||
+ ir_int: ir-int {
|
|
||||||
+ rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ buttons {
|
|
||||||
+ power_key: power_key {
|
|
||||||
+ rockchip,pins =
|
|
||||||
+ <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
||||||
+ };
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+// TFT
|
|
||||||
+&pwm0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+// FAN
|
|
||||||
+&pwm1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&pwm2 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&saradc {
|
|
||||||
+ vref-supply = <&vcca1v8_s3>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&sdio0 {
|
|
||||||
+ bus-width = <4>;
|
|
||||||
+ cap-sd-highspeed;
|
|
||||||
+ cap-sdio-irq;
|
|
||||||
+ clock-frequency = <50000000>;
|
|
||||||
+ disable-wp;
|
|
||||||
+ keep-power-in-suspend;
|
|
||||||
+ max-frequency = <50000000>;
|
|
||||||
+ mmc-pwrseq = <&sdio_pwrseq>;
|
|
||||||
+ non-removable;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
|
|
||||||
+ sd-uhs-sdr104;
|
|
||||||
+ #address-cells = <1>;
|
|
||||||
+ #size-cells = <0>;
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ brcmf: wifi@1 {
|
|
||||||
+ reg = <1>;
|
|
||||||
+ compatible = "brcm,bcm4329-fmac";
|
|
||||||
+ interrupt-parent = <&gpio0>;
|
|
||||||
+ interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ interrupt-names = "host-wake";
|
|
||||||
+ brcm,drive-strength = <5>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&wifi_host_wake_l>;
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&sdmmc {
|
|
||||||
+ bus-width = <4>;
|
|
||||||
+ cap-sd-highspeed;
|
|
||||||
+ cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>; // bsp
|
|
||||||
+ clock-frequency = <150000000>;
|
|
||||||
+ disable-wp;
|
|
||||||
+ sd-uhs-sdr104;
|
|
||||||
+ max-frequency = <150000000>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
|
|
||||||
+ vqmmc-supply = <&vcc_sd>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&sdhci {
|
|
||||||
+ bus-width = <8>;
|
|
||||||
+ mmc-hs400-1_8v;
|
|
||||||
+ mmc-hs400-enhanced-strobe;
|
|
||||||
+ keep-power-in-suspend;
|
|
||||||
+ non-removable;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+/*
|
|
||||||
+&spi1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ norflash: flash@0 {
|
|
||||||
+ compatible = "jedec,spi-nor";
|
|
||||||
+ reg = <0>;
|
|
||||||
+ spi-max-frequency = <50000000>;
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+*/
|
|
||||||
+
|
|
||||||
+&spi2 {
|
|
||||||
+ status = "okay";
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&spi2_clk &spi2_tx &spi2_cs0>;
|
|
||||||
+
|
|
||||||
+ st7735r@0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+ compatible = "sitronix,st7735r";
|
|
||||||
+ reg = <0>;
|
|
||||||
+ rgb;
|
|
||||||
+ rotate = <270>;
|
|
||||||
+ width = <80>;
|
|
||||||
+ height = <160>;
|
|
||||||
+ fps = <30>;
|
|
||||||
+ buswidth = <8>;
|
|
||||||
+ backlight = <&backlight>;
|
|
||||||
+ dc-gpios = <&gpio4 RK_PD5 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ reset-gpios = <&gpio4 RK_PD1 GPIO_ACTIVE_LOW>;
|
|
||||||
+ led-gpios = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ spi-max-frequency = <32000000>;
|
|
||||||
+ spi-cpol;
|
|
||||||
+ spi-cpha;
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&tcphy0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&tcphy1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&tsadc {
|
|
||||||
+ /* tshut mode 0:CRU 1:GPIO */
|
|
||||||
+ rockchip,hw-tshut-mode = <1>;
|
|
||||||
+ /* tshut polarity 0:LOW 1:HIGH */
|
|
||||||
+ rockchip,hw-tshut-polarity = <1>;
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&u2phy0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ u2phy0_otg: otg-port {
|
|
||||||
+ status = "okay";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ u2phy0_host: host-port {
|
|
||||||
+ status = "okay";
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&u2phy1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ u2phy1_otg: otg-port {
|
|
||||||
+ status = "okay";
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+ u2phy1_host: host-port {
|
|
||||||
+ status = "okay";
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&uart0 {
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
|
|
||||||
+ status = "okay";
|
|
||||||
+
|
|
||||||
+ bluetooth {
|
|
||||||
+ compatible = "brcm,bcm43438-bt";
|
|
||||||
+ clocks = <&rk808 1>;
|
|
||||||
+ clock-names = "lpo";
|
|
||||||
+ device-wakeup-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
|
|
||||||
+ max-speed = <4000000>;
|
|
||||||
+ pinctrl-names = "default";
|
|
||||||
+ pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
|
|
||||||
+ vbat-supply = <&vcc3v3_sys>;
|
|
||||||
+ vddio-supply = <&vcc_1v8>;
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+// Debug TTL
|
|
||||||
+&uart2 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usb_host0_ehci {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usb_host0_ohci {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usb_host1_ehci {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usb_host1_ohci {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usbdrd3_0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usbdrd_dwc3_0 {
|
|
||||||
+ status = "okay";
|
|
||||||
+ dr_mode = "host";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usbdrd3_1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&usbdrd_dwc3_1 {
|
|
||||||
+ status = "okay";
|
|
||||||
+ dr_mode = "host";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&vopb {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&vopb_mmu {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&vopl {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&vopl_mmu {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
+&iep_mmu {
|
|
||||||
+ status = "okay";
|
|
||||||
+};
|
|
||||||
--
|
|
||||||
Armbian
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,870 @@
|
||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
#include <dt-bindings/input/linux-event-codes.h>
|
||||||
|
#include <dt-bindings/pwm/pwm.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
#include "rk3399.dtsi"
|
||||||
|
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Rockchip Fine3399";
|
||||||
|
compatible = "rockchip,fine3399", "rockchip,rk3399";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
mmc0 = &sdio0;
|
||||||
|
mmc1 = &sdmmc;
|
||||||
|
mmc2 = &sdhci;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial2:1500000n8";
|
||||||
|
};
|
||||||
|
|
||||||
|
clkin_gmac: external-gmac-clock {
|
||||||
|
compatible = "fixed-clock";
|
||||||
|
clock-frequency = <125000000>;
|
||||||
|
clock-output-names = "clkin_gmac";
|
||||||
|
#clock-cells = <0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
dc_12v: dc-12v {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "dc_12v";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <12000000>;
|
||||||
|
regulator-max-microvolt = <12000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdio_pwrseq: sdio-pwrseq {
|
||||||
|
compatible = "mmc-pwrseq-simple";
|
||||||
|
clocks = <&rk808 1>;
|
||||||
|
clock-names = "ext_clock";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&wifi_reg_on_h>;
|
||||||
|
reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; // bsp
|
||||||
|
};
|
||||||
|
|
||||||
|
/* switched by pmic_sleep */
|
||||||
|
vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc1v8_s3";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
vin-supply = <&vcc_1v8>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc3v3_sys: vcc3v3_pcie: vcc3v3_bl: vcc3v3-sys { // sch
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc3v3_sys";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <3300000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
vin-supply = <&dc_12v>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_sys: vcc-sys { // sch
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
regulator-name = "vcc_sys";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <5000000>;
|
||||||
|
regulator-max-microvolt = <5000000>;
|
||||||
|
vin-supply = <&dc_12v>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_phy: vcc-phy-regulator {
|
||||||
|
compatible = "regulator-fixed";
|
||||||
|
enable-active-high;
|
||||||
|
gpio = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&vcc_phy_h>;
|
||||||
|
regulator-name = "vcc_phy";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
};
|
||||||
|
|
||||||
|
vdd_log: vdd-log {
|
||||||
|
compatible = "pwm-regulator";
|
||||||
|
pwms = <&pwm2 0 25000 1>;
|
||||||
|
regulator-name = "vdd_log";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <800000>;
|
||||||
|
regulator-max-microvolt = <1400000>;
|
||||||
|
vin-supply = <&vcc_sys>;
|
||||||
|
};
|
||||||
|
|
||||||
|
leds: gpio-leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&user_led2>;
|
||||||
|
|
||||||
|
user_led2 {
|
||||||
|
label = "blue:work_led";
|
||||||
|
gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_LOW>; // sch
|
||||||
|
linux,default-trigger = "heartbeat";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio-keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
autorepeat;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&power_key>;
|
||||||
|
|
||||||
|
power {
|
||||||
|
debounce-interval = <100>;
|
||||||
|
gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; // bsp
|
||||||
|
label = "GPIO Key Power";
|
||||||
|
linux,code = <KEY_POWER>;
|
||||||
|
wakeup-source;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
fan0: pwm-fan {
|
||||||
|
compatible = "pwm-fan";
|
||||||
|
cooling-levels = <0 30 60 90 120 160>;
|
||||||
|
#cooling-cells = <2>;
|
||||||
|
fan-supply = <&vcc_sys>;
|
||||||
|
pwms = <&pwm1 0 40000 0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
// pwm3
|
||||||
|
ir-receiver {
|
||||||
|
compatible = "gpio-ir-receiver";
|
||||||
|
gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&ir_int>;
|
||||||
|
};
|
||||||
|
|
||||||
|
adc-keys {
|
||||||
|
compatible = "adc-keys";
|
||||||
|
io-channels = <&saradc 1>;
|
||||||
|
io-channel-names = "buttons";
|
||||||
|
keyup-threshold-microvolt = <1750000>;
|
||||||
|
poll-interval = <100>;
|
||||||
|
|
||||||
|
recovery {
|
||||||
|
label = "Recovery";
|
||||||
|
linux,code = <KEY_VENDOR>; // ??
|
||||||
|
press-threshold-microvolt = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
backlight: backlight {
|
||||||
|
compatible = "pwm-backlight";
|
||||||
|
brightness-levels = <0 4 8 16 32 64 128 255>;
|
||||||
|
default-brightness-level = <5>;
|
||||||
|
pwms = <&pwm0 0 1000000 0>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_l0 {
|
||||||
|
cpu-supply = <&vdd_cpu_l>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_l1 {
|
||||||
|
cpu-supply = <&vdd_cpu_l>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_l2 {
|
||||||
|
cpu-supply = <&vdd_cpu_l>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_l3 {
|
||||||
|
cpu-supply = <&vdd_cpu_l>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_b0 {
|
||||||
|
cpu-supply = <&vdd_cpu_b>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_b1 {
|
||||||
|
cpu-supply = <&vdd_cpu_b>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpu {
|
||||||
|
mali-supply = <&vdd_gpu>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&cpu_thermal {
|
||||||
|
trips {
|
||||||
|
cpu_warm: cpu_warm {
|
||||||
|
temperature = <50000>;
|
||||||
|
hysteresis = <2000>;
|
||||||
|
type = "active";
|
||||||
|
};
|
||||||
|
|
||||||
|
cpu_hot: cpu_hot {
|
||||||
|
temperature = <65000>;
|
||||||
|
hysteresis = <2000>;
|
||||||
|
type = "active";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
cooling-maps {
|
||||||
|
map2 {
|
||||||
|
trip = <&cpu_warm>;
|
||||||
|
cooling-device = <&fan0 THERMAL_NO_LIMIT 1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
map3 {
|
||||||
|
trip = <&cpu_hot>;
|
||||||
|
cooling-device = <&fan0 4 THERMAL_NO_LIMIT>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&emmc_phy {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gmac {
|
||||||
|
assigned-clocks = <&cru SCLK_RMII_SRC>;
|
||||||
|
assigned-clock-parents = <&clkin_gmac>;
|
||||||
|
clock_in_out = "input";
|
||||||
|
phy-supply = <&vcc_phy>;
|
||||||
|
phy-mode = "rgmii";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&rgmii_pins>;
|
||||||
|
snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; // bsp
|
||||||
|
snps,reset-active-low;
|
||||||
|
snps,reset-delays-us = <0 10000 50000>;
|
||||||
|
tx_delay = <0x28>;
|
||||||
|
rx_delay = <0x11>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpu {
|
||||||
|
mali-supply = <&vdd_gpu>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&gpu_thermal {
|
||||||
|
trips {
|
||||||
|
gpu_warm: gpu_warm {
|
||||||
|
temperature = <50000>;
|
||||||
|
hysteresis = <2000>;
|
||||||
|
type = "active";
|
||||||
|
};
|
||||||
|
|
||||||
|
gpu_hot: gpu_hot {
|
||||||
|
temperature = <65000>;
|
||||||
|
hysteresis = <2000>;
|
||||||
|
type = "active";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
cooling-maps {
|
||||||
|
map1 {
|
||||||
|
trip = <&gpu_warm>;
|
||||||
|
cooling-device = <&fan0 THERMAL_NO_LIMIT 1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
map2 {
|
||||||
|
trip = <&gpu_hot>;
|
||||||
|
cooling-device = <&fan0 4 THERMAL_NO_LIMIT>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&hdmi {
|
||||||
|
ddc-i2c-bus = <&i2c3>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&hdmi_cec>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&hdmi_sound {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c0 {
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
i2c-scl-rising-time-ns = <168>;
|
||||||
|
i2c-scl-falling-time-ns = <4>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
rk808: pmic@1b {
|
||||||
|
compatible = "rockchip,rk808";
|
||||||
|
reg = <0x1b>;
|
||||||
|
interrupt-parent = <&gpio1>;
|
||||||
|
interrupts = <RK_PC5 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
#clock-cells = <1>;
|
||||||
|
clock-output-names = "xin32k", "rk808-clkout2";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
|
||||||
|
rockchip,system-power-controller;
|
||||||
|
wakeup-source;
|
||||||
|
|
||||||
|
vcc1-supply = <&vcc3v3_sys>;
|
||||||
|
vcc2-supply = <&vcc3v3_sys>;
|
||||||
|
vcc3-supply = <&vcc3v3_sys>;
|
||||||
|
vcc4-supply = <&vcc3v3_sys>;
|
||||||
|
vcc6-supply = <&vcc3v3_sys>;
|
||||||
|
vcc7-supply = <&vcc3v3_sys>;
|
||||||
|
vcc8-supply = <&vcc3v3_sys>;
|
||||||
|
vcc9-supply = <&vcc3v3_sys>;
|
||||||
|
vcc10-supply = <&vcc3v3_sys>;
|
||||||
|
vcc11-supply = <&vcc3v3_sys>;
|
||||||
|
vcc12-supply = <&vcc3v3_sys>;
|
||||||
|
vddio-supply = <&vcc1v8_pmu>;
|
||||||
|
|
||||||
|
regulators {
|
||||||
|
vdd_center: DCDC_REG1 {
|
||||||
|
regulator-name = "vdd_center";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <750000>;
|
||||||
|
regulator-max-microvolt = <1350000>;
|
||||||
|
regulator-ramp-delay = <6001>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vdd_cpu_l: DCDC_REG2 {
|
||||||
|
regulator-name = "vdd_cpu_l";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <750000>;
|
||||||
|
regulator-max-microvolt = <1350000>;
|
||||||
|
regulator-ramp-delay = <6001>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_ddr: DCDC_REG3 {
|
||||||
|
regulator-name = "vcc_ddr";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_1v8: DCDC_REG4 {
|
||||||
|
regulator-name = "vcc_1v8";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
regulator-suspend-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc1v8_dvp: LDO_REG1 {
|
||||||
|
regulator-name = "vcc1v8_dvp";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc3v0_tp: LDO_REG2 {
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <3000000>;
|
||||||
|
regulator-max-microvolt = <3000000>;
|
||||||
|
regulator-name = "vcc3v0_tp";
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc1v8_pmu: LDO_REG3 {
|
||||||
|
regulator-name = "vcc1v8_pmu";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
regulator-suspend-microvolt = <1800000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_sd: LDO_REG4 {
|
||||||
|
regulator-name = "vcc_sd";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
regulator-suspend-microvolt = <3300000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcca3v0_codec: LDO_REG5 {
|
||||||
|
regulator-name = "vcca3v0_codec";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <3000000>;
|
||||||
|
regulator-max-microvolt = <3000000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_1v5: LDO_REG6 {
|
||||||
|
regulator-name = "vcc_1v5";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1500000>;
|
||||||
|
regulator-max-microvolt = <1500000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
regulator-suspend-microvolt = <1500000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcca1v8_codec: LDO_REG7 {
|
||||||
|
regulator-name = "vcca1v8_codec";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <1800000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_3v0: LDO_REG8 {
|
||||||
|
regulator-name = "vcc_3v0";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-min-microvolt = <3000000>;
|
||||||
|
regulator-max-microvolt = <3000000>;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-on-in-suspend;
|
||||||
|
regulator-suspend-microvolt = <3000000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc3v3_s3: SWITCH_REG1 {
|
||||||
|
regulator-name = "vcc3v3_s3";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc3v3_s0: SWITCH_REG2 {
|
||||||
|
regulator-name = "vcc3v3_s0";
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vdd_cpu_b: regulator@40 {
|
||||||
|
compatible = "silergy,syr827";
|
||||||
|
reg = <0x40>;
|
||||||
|
fcs,suspend-voltage-selector = <1>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&cpu_b_sleep>;
|
||||||
|
regulator-name = "vdd_cpu_b";
|
||||||
|
regulator-min-microvolt = <712500>;
|
||||||
|
regulator-max-microvolt = <1500000>;
|
||||||
|
regulator-ramp-delay = <1000>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
vin-supply = <&vcc_sys>;
|
||||||
|
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vdd_gpu: regulator@41 {
|
||||||
|
compatible = "silergy,syr828";
|
||||||
|
reg = <0x41>;
|
||||||
|
fcs,suspend-voltage-selector = <1>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&gpu_sleep>;
|
||||||
|
regulator-name = "vdd_gpu";
|
||||||
|
regulator-min-microvolt = <712500>;
|
||||||
|
regulator-max-microvolt = <1500000>;
|
||||||
|
regulator-ramp-delay = <1000>;
|
||||||
|
regulator-always-on;
|
||||||
|
regulator-boot-on;
|
||||||
|
vin-supply = <&vcc_sys>;
|
||||||
|
|
||||||
|
regulator-state-mem {
|
||||||
|
regulator-off-in-suspend;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
// Used for HDMI
|
||||||
|
&i2c3 {
|
||||||
|
i2c-scl-rising-time-ns = <450>;
|
||||||
|
i2c-scl-falling-time-ns = <15>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
// HDMI sound
|
||||||
|
&i2s2 {
|
||||||
|
#sound-dai-cells = <0>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&io_domains {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
bt656-supply = <&vcc_3v0>;
|
||||||
|
audio-supply = <&vcca1v8_codec>;
|
||||||
|
sdmmc-supply = <&vcc_sd>;
|
||||||
|
gpio1830-supply = <&vcc_3v0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&pmu_io_domains {
|
||||||
|
status = "okay";
|
||||||
|
pmu1830-supply = <&vcc_1v8>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie_phy {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie0 {
|
||||||
|
ep-gpios = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>; // sch
|
||||||
|
max-link-speed = <2>;
|
||||||
|
num-lanes = <2>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pcie_clkreqn_cpm>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pinctrl {
|
||||||
|
pmic {
|
||||||
|
cpu_b_sleep: cpu-b-sleep {
|
||||||
|
rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gpu_sleep: gpu-sleep {
|
||||||
|
rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pmic_int_l: pmic-int-l {
|
||||||
|
rockchip,pins = <1 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pmic_dvs2: pmic-dvs2 {
|
||||||
|
rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>; // bsp
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sdio-pwrseq {
|
||||||
|
wifi_reg_on_h: wifi-reg-on-h {
|
||||||
|
rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
wifi {
|
||||||
|
wifi_host_wake_l: wifi-host-wake-l {
|
||||||
|
rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
spi2 {
|
||||||
|
spi2_cs0: spi2-cs0 {
|
||||||
|
rockchip,pins =
|
||||||
|
<2 RK_PB4 2 &pcfg_pull_up>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
display_pin:display-pin {
|
||||||
|
DC_pin: dc-pin {
|
||||||
|
rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
reset_pin: reset-pin {
|
||||||
|
rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
bt {
|
||||||
|
bt_enable_h: bt-enable-h {
|
||||||
|
rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
|
||||||
|
bt_host_wake_l: bt-host-wake-l {
|
||||||
|
rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||||
|
};
|
||||||
|
|
||||||
|
bt_wake_l: bt-wake-l {
|
||||||
|
rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gmac {
|
||||||
|
vcc_phy_h: vcc-phy-h {
|
||||||
|
rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
user_led2: user_led2 {
|
||||||
|
rockchip,pins =
|
||||||
|
<2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ir {
|
||||||
|
ir_int: ir-int {
|
||||||
|
rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
buttons {
|
||||||
|
power_key: power_key {
|
||||||
|
rockchip,pins =
|
||||||
|
<0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
// TFT
|
||||||
|
&pwm0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
// FAN
|
||||||
|
&pwm1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pwm2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&saradc {
|
||||||
|
vref-supply = <&vcca1v8_s3>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdio0 {
|
||||||
|
bus-width = <4>;
|
||||||
|
cap-sd-highspeed;
|
||||||
|
cap-sdio-irq;
|
||||||
|
clock-frequency = <50000000>;
|
||||||
|
disable-wp;
|
||||||
|
keep-power-in-suspend;
|
||||||
|
max-frequency = <50000000>;
|
||||||
|
mmc-pwrseq = <&sdio_pwrseq>;
|
||||||
|
non-removable;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
|
||||||
|
sd-uhs-sdr104;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
brcmf: wifi@1 {
|
||||||
|
reg = <1>;
|
||||||
|
compatible = "brcm,bcm4329-fmac";
|
||||||
|
interrupt-parent = <&gpio0>;
|
||||||
|
interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
|
||||||
|
interrupt-names = "host-wake";
|
||||||
|
brcm,drive-strength = <5>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&wifi_host_wake_l>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdmmc {
|
||||||
|
bus-width = <4>;
|
||||||
|
cap-sd-highspeed;
|
||||||
|
cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>; // bsp
|
||||||
|
clock-frequency = <150000000>;
|
||||||
|
disable-wp;
|
||||||
|
sd-uhs-sdr104;
|
||||||
|
max-frequency = <150000000>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
|
||||||
|
vqmmc-supply = <&vcc_sd>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhci {
|
||||||
|
bus-width = <8>;
|
||||||
|
mmc-hs400-1_8v;
|
||||||
|
mmc-hs400-enhanced-strobe;
|
||||||
|
keep-power-in-suspend;
|
||||||
|
non-removable;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
/*
|
||||||
|
&spi1 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
norflash: flash@0 {
|
||||||
|
compatible = "jedec,spi-nor";
|
||||||
|
reg = <0>;
|
||||||
|
spi-max-frequency = <50000000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
|
||||||
|
&spi2 {
|
||||||
|
status = "okay";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&spi2_clk &spi2_tx &spi2_cs0>;
|
||||||
|
|
||||||
|
st7735r@0 {
|
||||||
|
status = "okay";
|
||||||
|
compatible = "sitronix,st7735r";
|
||||||
|
reg = <0>;
|
||||||
|
rgb;
|
||||||
|
rotate = <270>;
|
||||||
|
width = <80>;
|
||||||
|
height = <160>;
|
||||||
|
fps = <30>;
|
||||||
|
buswidth = <8>;
|
||||||
|
backlight = <&backlight>;
|
||||||
|
dc-gpios = <&gpio4 RK_PD5 GPIO_ACTIVE_HIGH>;
|
||||||
|
reset-gpios = <&gpio4 RK_PD1 GPIO_ACTIVE_LOW>;
|
||||||
|
led-gpios = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>;
|
||||||
|
spi-max-frequency = <32000000>;
|
||||||
|
spi-cpol;
|
||||||
|
spi-cpha;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&tcphy0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&tcphy1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&tsadc {
|
||||||
|
/* tshut mode 0:CRU 1:GPIO */
|
||||||
|
rockchip,hw-tshut-mode = <1>;
|
||||||
|
/* tshut polarity 0:LOW 1:HIGH */
|
||||||
|
rockchip,hw-tshut-polarity = <1>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&u2phy0 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
u2phy0_otg: otg-port {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
u2phy0_host: host-port {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&u2phy1 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
u2phy1_otg: otg-port {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
u2phy1_host: host-port {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&uart0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
bluetooth {
|
||||||
|
compatible = "brcm,bcm43438-bt";
|
||||||
|
clocks = <&rk808 1>;
|
||||||
|
clock-names = "lpo";
|
||||||
|
device-wakeup-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
|
||||||
|
host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
|
||||||
|
shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
|
||||||
|
max-speed = <4000000>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
|
||||||
|
vbat-supply = <&vcc3v3_sys>;
|
||||||
|
vddio-supply = <&vcc_1v8>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
// Debug TTL
|
||||||
|
&uart2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb_host0_ehci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb_host0_ohci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb_host1_ehci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb_host1_ohci {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbdrd3_0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbdrd_dwc3_0 {
|
||||||
|
status = "okay";
|
||||||
|
dr_mode = "host";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbdrd3_1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usbdrd_dwc3_1 {
|
||||||
|
status = "okay";
|
||||||
|
dr_mode = "host";
|
||||||
|
};
|
||||||
|
|
||||||
|
&vopb {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&vopb_mmu {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&vopl {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&vopl_mmu {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&iep_mmu {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
Loading…
Reference in New Issue