409 lines
8.2 KiB
Plaintext
409 lines
8.2 KiB
Plaintext
/*
|
|
* (C) Copyright 2018 Rockchip Electronics Co., Ltd
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0+
|
|
*/
|
|
|
|
/dts-v1/;
|
|
#include "rk3308.dtsi"
|
|
#include "rk3308-u-boot.dtsi"
|
|
#include <dt-bindings/input/input.h>
|
|
#include <linux/media-bus-format.h>
|
|
|
|
/ {
|
|
model = "Rockchip RK3308 EVB";
|
|
compatible = "rockchip,rk3308-evb", "rockchip,rk3308";
|
|
|
|
adc-keys0 {
|
|
u-boot,dm-pre-reloc;
|
|
compatible = "adc-keys";
|
|
io-channels = <&saradc 0>;
|
|
io-channel-names = "buttons";
|
|
poll-interval = <100>;
|
|
keyup-threshold-microvolt = <1800000>;
|
|
|
|
vol-up-key {
|
|
u-boot,dm-pre-reloc;
|
|
linux,code = <KEY_VOLUMEUP>;
|
|
label = "volume up";
|
|
press-threshold-microvolt = <18000>;
|
|
};
|
|
};
|
|
|
|
adc-keys1 {
|
|
u-boot,dm-pre-reloc;
|
|
compatible = "adc-keys";
|
|
io-channels = <&saradc 1>;
|
|
io-channel-names = "buttons";
|
|
poll-interval = <100>;
|
|
keyup-threshold-microvolt = <1800000>;
|
|
|
|
esc-key {
|
|
linux,code = <KEY_MUTE>;
|
|
label = "mute";
|
|
press-threshold-microvolt = <1130000>;
|
|
};
|
|
|
|
home-key {
|
|
linux,code = <KEY_MODE>;
|
|
label = "mode";
|
|
press-threshold-microvolt = <901000>;
|
|
};
|
|
|
|
menu-key {
|
|
linux,code = <KEY_PLAY>;
|
|
label = "play";
|
|
press-threshold-microvolt = <624000>;
|
|
};
|
|
|
|
vol-down-key {
|
|
linux,code = <KEY_VOLUMEDOWN>;
|
|
label = "volume down";
|
|
press-threshold-microvolt = <300000>;
|
|
};
|
|
|
|
vol-up-key {
|
|
u-boot,dm-pre-reloc;
|
|
linux,code = <KEY_VOLUMEUP>;
|
|
label = "volume up";
|
|
press-threshold-microvolt = <18000>;
|
|
};
|
|
};
|
|
|
|
backlight: backlight {
|
|
status = "disabled";
|
|
compatible = "pwm-backlight";
|
|
pwms = <&pwm1 0 25000 0>;
|
|
brightness-levels = <
|
|
0 1 2 3 4 5 6 7
|
|
8 9 10 11 12 13 14 15
|
|
16 17 18 19 20 21 22 23
|
|
24 25 26 27 28 29 30 31
|
|
32 33 34 35 36 37 38 39
|
|
40 41 42 43 44 45 46 47
|
|
48 49 50 51 52 53 54 55
|
|
56 57 58 59 60 61 62 63
|
|
64 65 66 67 68 69 70 71
|
|
72 73 74 75 76 77 78 79
|
|
80 81 82 83 84 85 86 87
|
|
88 89 90 91 92 93 94 95
|
|
96 97 98 99 100 101 102 103
|
|
104 105 106 107 108 109 110 111
|
|
112 113 114 115 116 117 118 119
|
|
120 121 122 123 124 125 126 127
|
|
128 129 130 131 132 133 134 135
|
|
136 137 138 139 140 141 142 143
|
|
144 145 146 147 148 149 150 151
|
|
152 153 154 155 156 157 158 159
|
|
160 161 162 163 164 165 166 167
|
|
168 169 170 171 172 173 174 175
|
|
176 177 178 179 180 181 182 183
|
|
184 185 186 187 188 189 190 191
|
|
192 193 194 195 196 197 198 199
|
|
200 201 202 203 204 205 206 207
|
|
208 209 210 211 212 213 214 215
|
|
216 217 218 219 220 221 222 223
|
|
224 225 226 227 228 229 230 231
|
|
232 233 234 235 236 237 238 239
|
|
240 241 242 243 244 245 246 247
|
|
248 249 250 251 252 253 254 255>;
|
|
default-brightness-level = <200>;
|
|
};
|
|
|
|
panel: panel {
|
|
compatible = "simple-panel";
|
|
bus-format = <MEDIA_BUS_FMT_RGB666_1X18>;
|
|
backlight = <&backlight>;
|
|
/* enable-gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_LOW>; */
|
|
enable-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
|
|
enable-delay-ms = <20>;
|
|
reset-gpios = <&gpio0 RK_PC4 GPIO_ACTIVE_LOW>;
|
|
reset-value = <0>;
|
|
reset-delay-ms = <10>;
|
|
prepare-delay-ms = <20>;
|
|
unprepare-delay-ms = <20>;
|
|
disable-delay-ms = <20>;
|
|
/* spi-sdo-gpios = <&gpio3 RK_PD2 GPIO_ACTIVE_HIGH>; */
|
|
spi-sdi-gpios = <&gpio1 RK_PC7 GPIO_ACTIVE_HIGH>;
|
|
spi-scl-gpios = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>;
|
|
spi-cs-gpios = <&gpio1 RK_PD1 GPIO_ACTIVE_HIGH>;
|
|
width-mm = <217>;
|
|
height-mm = <136>;
|
|
rockchip,data-mapping = "vesa";
|
|
rockchip,data-width = <18>;
|
|
rockchip,output = "rgb";
|
|
rgb-mode = "p666";
|
|
status = "disabled";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&spi_init_cmd>;
|
|
rockchip,cmd-type = "spi";
|
|
|
|
/* type:0 is cmd, 1 is data */
|
|
panel-init-sequence = [
|
|
/* type delay num val1 val2 val3 */
|
|
00 00 01 e0
|
|
01 00 01 00
|
|
01 00 01 07
|
|
01 00 01 0f
|
|
01 00 01 0d
|
|
01 00 01 1b
|
|
01 00 01 0a
|
|
01 00 01 3c
|
|
01 00 01 78
|
|
01 00 01 4a
|
|
01 00 01 07
|
|
01 00 01 0e
|
|
01 00 01 09
|
|
01 00 01 1b
|
|
01 00 01 1e
|
|
01 00 01 0f
|
|
00 00 01 e1
|
|
01 00 01 00
|
|
01 00 01 22
|
|
01 00 01 24
|
|
01 00 01 06
|
|
01 00 01 12
|
|
01 00 01 07
|
|
01 00 01 36
|
|
01 00 01 47
|
|
01 00 01 47
|
|
01 00 01 06
|
|
01 00 01 0a
|
|
01 00 01 07
|
|
01 00 01 30
|
|
01 00 01 37
|
|
01 00 01 0f
|
|
|
|
00 00 01 c0
|
|
01 00 01 10
|
|
01 00 01 10
|
|
|
|
00 00 01 c1
|
|
01 00 01 41
|
|
|
|
00 00 01 c5
|
|
01 00 01 00
|
|
01 00 01 22
|
|
01 00 01 80
|
|
|
|
00 00 01 36
|
|
01 00 01 48
|
|
|
|
00 00 01 3a /* interface mode control */
|
|
01 00 01 66
|
|
|
|
00 00 01 b0 /* interface mode control */
|
|
01 00 01 00
|
|
|
|
00 00 01 b1 /* frame rate 70hz */
|
|
01 00 01 b0
|
|
01 00 01 11
|
|
00 00 01 b4
|
|
01 00 01 02
|
|
00 00 01 B6 /* RGB/MCU Interface Control */
|
|
01 00 01 32 /* 02 mcu, 32 rgb */
|
|
01 00 01 02
|
|
|
|
00 00 01 b7
|
|
01 00 01 c6
|
|
|
|
00 00 01 be
|
|
01 00 01 00
|
|
01 00 01 04
|
|
|
|
00 00 01 e9
|
|
01 00 01 00
|
|
|
|
00 00 01 f7
|
|
01 00 01 a9
|
|
01 00 01 51
|
|
01 00 01 2c
|
|
01 00 01 82
|
|
|
|
00 78 01 11
|
|
00 00 01 29
|
|
];
|
|
|
|
panel-exit-sequence = [
|
|
/* type delay num val1 val2 val3 */
|
|
00 0a 01 28
|
|
00 78 01 10
|
|
];
|
|
|
|
display-timings {
|
|
native-mode = <&kd050fwfba002_timing>;
|
|
|
|
kd050fwfba002_timing: timing0 {
|
|
clock-frequency = <11000000>;
|
|
hactive = <320>;
|
|
vactive = <480>;
|
|
hback-porch = <10>;
|
|
hfront-porch = <4>;
|
|
vback-porch = <10>;
|
|
vfront-porch = <4>;
|
|
hsync-len = <20>;
|
|
vsync-len = <20>;
|
|
hsync-active = <0>;
|
|
vsync-active = <0>;
|
|
de-active = <0>;
|
|
pixelclk-active = <0>;
|
|
};
|
|
};
|
|
|
|
port {
|
|
panel_in_rgb: endpoint {
|
|
remote-endpoint = <&rgb_out_panel>;
|
|
};
|
|
};
|
|
};
|
|
|
|
vbus_host: vbus-host-regulator {
|
|
compatible = "regulator-fixed";
|
|
enable-active-high;
|
|
gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&usb_drv>;
|
|
regulator-name = "vbus_host";
|
|
};
|
|
|
|
vdd_log: vdd_core: vdd-core {
|
|
compatible = "pwm-regulator";
|
|
pwms = <&pwm0 0 5000 1>;
|
|
regulator-name = "vdd_core";
|
|
regulator-min-microvolt = <847000>;
|
|
regulator-max-microvolt = <1366000>;
|
|
regulator-init-microvolt = <1044000>;
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
status = "okay";
|
|
};
|
|
|
|
vcc_phy: vcc-phy-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc_phy";
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
};
|
|
};
|
|
|
|
&display_subsystem {
|
|
status = "disabled";
|
|
};
|
|
|
|
&emmc {
|
|
cap-mmc-highspeed;
|
|
supports-emmc;
|
|
non-removable;
|
|
num-slots = <1>;
|
|
status = "okay";
|
|
};
|
|
|
|
&mac {
|
|
phy-supply = <&vcc_phy>;
|
|
assigned-clocks = <&cru SCLK_MAC>;
|
|
assigned-clock-parents = <&mac_clkin>;
|
|
clock_in_out = "input";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&rmii_pins &mac_refclk>;
|
|
snps,reset-gpio = <&gpio4 RK_PC0 GPIO_ACTIVE_LOW>;
|
|
snps,reset-active-low;
|
|
snps,reset-delays-us = <0 50000 50000>;
|
|
status = "disabled";
|
|
};
|
|
|
|
&pwm0 {
|
|
status = "okay";
|
|
};
|
|
|
|
&pwm1 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&sdmmc {
|
|
bus-width = <4>;
|
|
cap-mmc-highspeed;
|
|
cap-sd-highspeed;
|
|
supports-sd;
|
|
card-detect-delay = <800>;
|
|
ignore-pm-notify;
|
|
sd-uhs-sdr12;
|
|
sd-uhs-sdr25;
|
|
sd-uhs-sdr50;
|
|
sd-uhs-sdr104;
|
|
status = "disabled";
|
|
};
|
|
|
|
&u2phy {
|
|
status = "okay";
|
|
};
|
|
|
|
&u2phy_otg {
|
|
status = "okay";
|
|
};
|
|
|
|
&u2phy_host {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_host0_ehci {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_host0_ohci {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb20_otg {
|
|
status = "okay";
|
|
};
|
|
|
|
&route_rgb {
|
|
status = "disabled";
|
|
};
|
|
|
|
&vop {
|
|
status = "disabled";
|
|
};
|
|
|
|
&rgb {
|
|
status = "disabled";
|
|
|
|
ports {
|
|
rgb_out: port@1 {
|
|
reg = <1>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
rgb_out_panel: endpoint@0 {
|
|
reg = <0>;
|
|
remote-endpoint = <&panel_in_rgb>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&pinctrl {
|
|
spi_panel {
|
|
spi_init_cmd: spi-init-cmd {
|
|
rockchip,pins =
|
|
/* spi sdi */
|
|
<1 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>,
|
|
/* spi scl */
|
|
<1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>,
|
|
/* spi cs */
|
|
<1 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
};
|
|
|
|
usb {
|
|
usb_drv: usb-drv {
|
|
rockchip,pins =
|
|
<0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&crypto {
|
|
status = "okay";
|
|
};
|