#include "rk3399.dtsi"
#include "rk3399-android.dtsi"
+#include "rk3399-opp.dtsi"
#include <dt-bindings/sensor-dev.h>
#include <dt-bindings/pwm/pwm.h>
/ {
compatible = "rockchip,rk3399-mid", "rockchip,rk3399";
+ hall_sensor: hall-mh248 {
+ compatible = "hall-mh248";
+ pinctrl-names = "default";
+ pinctrl-0 = <&mh248_irq_gpio>;
+ irq-gpio = <&gpio1 2 IRQ_TYPE_EDGE_BOTH>;
+ hall-active = <1>;
+ status = "okay";
+ };
+
vcc_sys: vcc-sys {
compatible = "regulator-fixed";
regulator-name = "vcc_sys";
pinctrl-names = "default";
pinctrl-0 = <&host_vbus_drv>;
regulator-name = "vcc5v0_host";
+ regulator-always-on;
};
vdd_log: vdd-log {
compatible = "pwm-backlight";
pwms = <&vop0_pwm 0 25000 PWM_POLARITY_INVERTED>;
brightness-levels = <
- 0 255 51 51 52 53 53 54
- 54 55 56 56 57 57 58 59
- 59 60 60 61 62 62 63 63
- 64 65 65 66 66 67 68 68
- 69 69 70 71 71 72 72 73
- 74 74 75 75 76 77 77 78
- 78 79 80 80 81 81 82 83
- 83 84 85 85 86 86 87 88
- 88 89 89 90 91 91 92 92
- 93 94 94 95 95 96 97 97
- 98 98 99 100 100 101 101 102
- 103 103 104 104 105 106 106 107
- 107 108 109 109 110 110 111 112
- 112 113 113 114 114 115 116 116
- 117 118 118 119 119 120 120 121
- 122 122 123 123 124 125 125 126
- 126 127 128 128 129 129 130 131
- 131 132 132 133 133 134 135 135
- 136 137 138 138 139 140 140 141
- 141 142 143 143 144 144 145 146
- 146 147 148 148 149 149 149 150
- 150 151 151 151 152 152 152 153
- 153 153 154 154 155 156 156 157
- 157 158 159 159 160 160 161 161
- 162 163 163 164 165 165 166 166
- 167 168 168 169 169 170 171 171
- 172 172 173 174 174 175 175 176
- 176 177 178 178 179 179 180 181
- 181 182 183 183 184 185 185 186
- 186 187 188 188 189 189 190 190
- 191 191 192 193 193 194 194 195
- 196 197 197 198 199 199 200 200>;
+ 0 1 51 52 52 53 53 54
+ 54 55 55 56 56 57 57 58
+ 58 59 59 60 61 61 62 63
+ 63 64 65 65 66 67 67 68
+ 69 69 70 71 71 72 73 73
+ 74 75 75 76 77 77 78 79
+ 79 80 80 81 81 82 83 83
+ 84 85 86 86 87 88 89 89
+ 90 91 92 92 93 94 95 95
+ 96 97 98 98 99 100 101 101
+ 102 103 104 104 105 106 107 107
+ 108 109 110 110 111 112 113 113
+ 114 115 116 116 117 118 119 119
+ 120 121 122 122 123 124 125 125
+ 126 127 128 128 129 130 131 131
+ 132 133 134 134 135 136 137 137
+ 138 139 140 140 141 142 143 143
+ 144 145 146 146 147 148 149 149
+ 150 151 152 152 153 154 155 155
+ 156 157 158 158 159 160 161 161
+ 162 163 164 164 165 166 167 167
+ 168 169 170 170 171 172 173 173
+ 174 175 176 176 177 178 179 179
+ 180 181 182 182 183 184 185 185
+ 186 187 188 188 189 190 191 191
+ 216 217 218 218 219 220 221 221
+ 222 223 224 224 225 226 227 227
+ 228 229 230 230 231 232 233 233
+ 234 235 236 236 237 238 239 239
+ 240 241 242 242 243 244 245 245
+ 246 247 248 248 249 250 251 251
+ 252 253 254 254 255 255 255 255>;
default-brightness-level = <200>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
};
regulator-boot-on;
};
- io-domains {
- compatible = "rockchip,rk3399-io-voltage-domain";
- rockchip,grf = <&grf>;
-
- bt656-supply = <&vcc1v8_dvp>;
- audio-supply = <&vcca1v8_codec>;
- sdmmc-supply = <&vcc_sd>;
- gpio1830-supply = <&vcc_3v0>;
- };
-
- pmu-io-domains {
- compatible = "rockchip,rk3399-pmu-io-voltage-domain";
- rockchip,grf = <&pmugrf>;
-
- pmu1830-supply = <&vcc_1v8>;
- };
-
es8316-sound {
compatible = "simple-audio-card";
simple-audio-card,format = "i2s";
wireless-bluetooth {
compatible = "bluetooth-platdata";
+ clocks = <&rk818 1>;
+ clock-names = "ext_clock";
//wifi-bt-power-toggle;
uart_rts_gpios = <&gpio2 19 GPIO_ACTIVE_LOW>; /* GPIO2_C3 */
pinctrl-names = "default", "rts_gpio";
rockchip,uboot-charge-on = <0>;
rockchip,android-charge-on = <1>;
};
-};
-&cluster0_opp {
- opp@408000000 {
- opp-hz = /bits/ 64 <408000000>;
- opp-microvolt = <800000>;
- clock-latency-ns = <40000>;
- };
- opp@600000000 {
- opp-hz = /bits/ 64 <600000000>;
- opp-microvolt = <800000>;
- };
- opp@816000000 {
- opp-hz = /bits/ 64 <816000000>;
- opp-microvolt = <800000>;
- };
- opp@1008000000 {
- opp-hz = /bits/ 64 <1008000000>;
- opp-microvolt = <875000>;
- };
- opp@1200000000 {
- opp-hz = /bits/ 64 <1200000000>;
- opp-microvolt = <925000>;
- };
- opp@1416000000 {
- opp-hz = /bits/ 64 <1416000000>;
- opp-microvolt = <1050000>;
- };
- opp@1512000000 {
- opp-hz = /bits/ 64 <1512000000>;
- opp-microvolt = <1075000>;
- };
-};
-
-&cluster1_opp {
- opp@408000000 {
- opp-hz = /bits/ 64 <408000000>;
- opp-microvolt = <800000>;
- clock-latency-ns = <40000>;
- };
- opp@600000000 {
- opp-hz = /bits/ 64 <600000000>;
- opp-microvolt = <800000>;
- };
- opp@816000000 {
- opp-hz = /bits/ 64 <816000000>;
- opp-microvolt = <825000>;
- };
- opp@1008000000 {
- opp-hz = /bits/ 64 <1008000000>;
- opp-microvolt = <875000>;
- };
- opp@1200000000 {
- opp-hz = /bits/ 64 <1200000000>;
- opp-microvolt = <950000>;
- };
- opp@1416000000 {
- opp-hz = /bits/ 64 <1416000000>;
- opp-microvolt = <1025000>;
- };
- opp@1608000000 {
- opp-hz = /bits/ 64 <1608000000>;
- opp-microvolt = <1100000>;
- };
- opp@1800000000 {
- opp-hz = /bits/ 64 <1800000000>;
- opp-microvolt = <1175000>;
- };
- opp@1992000000 {
- opp-hz = /bits/ 64 <1992000000>;
- opp-microvolt = <1250000>;
+ vibrator {
+ compatible = "rk-vibrator-gpio";
+ vibrator-gpio = <&gpio4 30 GPIO_ACTIVE_LOW>;
+ status = "okay";
};
-};
-&gpu_opp_table {
- compatible = "operating-points-v2";
- opp-shared;
- opp@200000000 {
- opp-hz = /bits/ 64 <200000000>;
- opp-microvolt = <850000>;
- };
- opp@300000000 {
- opp-hz = /bits/ 64 <300000000>;
- opp-microvolt = <900000>;
- };
- opp@400000000 {
- opp-hz = /bits/ 64 <400000000>;
- opp-microvolt = <900000>;
- };
- opp@500000000 {
- opp-hz = /bits/ 64 <500000000>;
- opp-microvolt = <950000>;
- };
- opp@600000000 {
- opp-hz = /bits/ 64 <600000000>;
- opp-microvolt = <1000000>;
- };
- opp@800000000 {
- opp-hz = /bits/ 64 <800000000>;
- opp-microvolt = <1050000>;
+ rk_headset {
+ compatible = "rockchip_headset";
+ headset_gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&hp_det>;
+ io-channels = <&saradc 2>;
};
};
cap-sd-highspeed;
disable-wp;
num-slots = <1>;
- sd-uhs-sdr104;
+ //sd-uhs-sdr104;
vqmmc-supply = <&vcc_sd>;
pinctrl-names = "default";
pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
};
&emmc_phy {
- freq-sel = <200000000>;
- dr-sel = <50>;
- opdelay = <4>;
status = "okay";
};
mmc-hs400-1_8v;
supports-emmc;
non-removable;
+ keep-power-in-suspend;
mmc-hs400-enhanced-strobe;
status = "okay";
};
#sound-dai-cells = <0>;
};
+&io_domains {
+ status = "okay";
+
+ bt656-supply = <&vcc1v8_dvp>;
+ audio-supply = <&vcca1v8_codec>;
+ sdmmc-supply = <&vcc_sd>;
+ gpio1830-supply = <&vcc_3v0>;
+};
+
&spdif {
status = "okay";
#sound-dai-cells = <0>;
reg = <0x40>;
vin-supply = <&vcc_sys>;
regulator-compatible = "fan53555-reg";
+ pinctrl-0 = <&vsel1_gpio>;
+ vsel-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_cpu_b";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
reg = <0x41>;
vin-supply = <&vcc_sys>;
regulator-compatible = "fan53555-reg";
+ pinctrl-0 = <&vsel2_gpio>;
+ vsel-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_gpu";
regulator-min-microvolt = <735000>;
regulator-max-microvolt = <1400000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
- regulator-always-on;
regulator-boot-on;
regulator-state-mem {
regulator-off-in-suspend;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-state-mem {
- regulator-on-in-suspend;
- regulator-suspend-microvolt = <1000000>;
+ regulator-off-in-suspend;
};
};
regulator-max-microvolt = <3000000>;
regulator-name = "vcc_3v0";
regulator-state-mem {
- regulator-off-in-suspend;
+ regulator-on-in-suspend;
+ regulator-suspend-microvolt = <3000000>;
};
};
regulator-max-microvolt = <1500000>;
regulator-name = "vcc_1v5";
regulator-state-mem {
- regulator-off-in-suspend;
+ regulator-on-in-suspend;
+ regulator-suspend-microvolt = <1500000>;
};
};
regulator-max-microvolt = <3300000>;
regulator-name = "vcc3v3_s3";
regulator-state-mem {
- regulator-on-in-suspend;
- regulator-suspend-microvolt = <3300000>;
+ regulator-off-in-suspend;
};
};
#sound-dai-cells = <0>;
compatible = "everest,es8316";
reg = <0x11>;
- pinctrl-names = "default";
- pinctrl-0 = <&hp_det>;
clocks = <&cru SCLK_I2S_8CH_OUT>;
clock-names = "mclk";
spk-con-gpio = <&gpio0 11 GPIO_ACTIVE_HIGH>;
- hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
};
};
type = <SENSOR_TYPE_ACCEL>;
irq_enable = <1>;
poll_delay_ms = <30>;
+ power-off-in-suspend = <1>;
layout = <4>;
};
irq-gpio = <&gpio1 20 IRQ_TYPE_EDGE_RISING>;
type = <SENSOR_TYPE_GYROSCOPE>;
irq_enable = <0>;
+ power-off-in-suspend = <1>;
poll_delay_ms = <30>;
};
orientation-x= <1>;
orientation-y= <1>;
orientation-z= <0>;
+ support-hw-poweroff = <1>;
mpu-debug = <1>;
};
layout = <3>;
};
- sensor@20 {
+ sensor@10 {
status = "okay";
compatible = "capella,light_cm3218";
pinctrl-names = "default";
pinctrl-0 = <&cm3218_irq_gpio>;
reg = <0x10>;
type = <SENSOR_TYPE_LIGHT>;
- irq-gpio = <&gpio4 24 IRQ_TYPE_EDGE_RISING>;
+ irq-gpio = <&gpio4 24 IRQ_TYPE_EDGE_FALLING>;
irq_enable = <1>;
poll_delay_ms = <30>;
};
orientation-x= <1>;
orientation-y= <0>;
orientation-z= <1>;
+ support-hw-poweroff = <1>;
mpu-debug = <1>;
};
};
};
};
-&u2phy1 {
- status = "okay";
-
- u2phy1_otg: otg-port {
- status = "okay";
- };
-};
-
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_xfer &uart0_cts>;
status = "okay";
};
-&usb_host1_ehci {
- status = "okay";
-};
-
-&usb_host1_ohci {
- status = "okay";
-};
-
&usbdrd3_0 {
extcon = <&fusb0>;
status = "okay";
status = "okay";
};
-&usbdrd3_1 {
- status = "okay";
-};
-
-&usbdrd_dwc3_1 {
- status = "okay";
-};
-
&vop0_pwm {
assigned-clocks = <&cru SCLK_VOP0_PWM>;
assigned-clock-rates = <50000000>;
rockchip,pins =
<1 18 RK_FUNC_GPIO &pcfg_pull_down>;
};
+ vsel1_gpio: vsel1-gpio {
+ rockchip,pins =
+ <1 17 RK_FUNC_GPIO &pcfg_pull_down>;
+ };
+ vsel2_gpio: vsel2-gpio {
+ rockchip,pins =
+ <1 14 RK_FUNC_GPIO &pcfg_pull_down>;
+ };
+ };
+
+ hallsensor {
+ mh248_irq_gpio: mh248-irq-gpio {
+ rockchip,pins = <1 2 RK_FUNC_GPIO &pcfg_pull_up>;
+ };
};
headphone {
cm3218 {
cm3218_irq_gpio: cm3218-irq-gpio {
- rockchip,pins = <4 24 RK_FUNC_GPIO &pcfg_pull_none>;
+ rockchip,pins = <4 24 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
#include <dt-bindings/display/screen-timing/lcd-LP097Qx2.dtsi>
};
+&cdn_dp_sound {
+ status = "okay";
+};
+
+&cdn_dp_fb {
+ status = "okay";
+ extcon = <&fusb0>;
+ phys = <&tcphy0_dp>;
+ dp_vop_sel = <DISPLAY_SOURCE_LCDC1>;
+};
+
&vopb_rk_fb {
status = "okay";
rockchip,cabc_mode = <1>;
&edp_rk_fb {
status = "okay";
};
+
+&pvtm {
+ status = "okay";
+};
+
+&pmu_pvtm {
+ status = "okay";
+};
+
+&pmu_io_domains {
+ status = "okay";
+ pmu1830-supply = <&vcc_1v8>;
+};
+