This commit is contained in:
zhangpeng
2025-04-28 11:36:59 +08:00
commit 5dd7a8972b
945 changed files with 332963 additions and 0 deletions

202
rk3399/king-rk3399.dts Executable file
View File

@@ -0,0 +1,202 @@
/dts-v1/;
#include "rp-rk3399-board.dtsi"
#include "rp-usb2-host0.dtsi"
#include "rp-usb2-host1.dtsi"
//#include "rp-usb3-otg-typeA.dtsi"
#include "rp-usb3-otg-typeC.dtsi"
#include "rp-usb3_1-host.dtsi"
#include "rp-audio-rt5651.dtsi"
#include "rp-pmu-rk808.dtsi"
#include "rp-gpio-key.dtsi"
#include "rp-adc-key.dtsi"
#include "rp-mipi-ov13850-camera.dtsi"
//#include "rp-hdmiin.dtsi"
#include "rp-wifi-sdio.dtsi"
#include "rp-bt-uart0.dtsi"
#include "rp-sdcard-mmc1.dtsi"
#include "rp-gmac.dtsi"
#include "rp-lcd-hdmi.dtsi"
//#include "rp-lcd-mipi-5-720-1280.dtsi"
//#include "rp-lcd-mipi-5-720-1280-v2.dtsi"
//#include "rp-lcd-mipi-5.5-720-1280.dtsi"
//#include "rp-lcd-mipi-5.5-1080-1920.dtsi"
//#include "rp-lcd-mipi-5.5-720-1280-v2.dtsi"
#include "rp-lcd-mipi-7-1024-600.dtsi"
//#include "rp-lcd-mipi-7-800-1280.dtsi"
//#include "rp-lcd-mipi-7-1200-1920.dtsi"
//#include "rp-lcd-mipi-8-800-1280.dtsi"
//#include "rp-lcd-mipi-8-800-1280-new.dtsi"
//#include "rp-lcd-mipi-10-800-1280.dtsi"
//#include "rp-lcd-mipi-10-1920-1200.dtsi"
//#include "rp-lcd-edp-13.3-1920-1080.dtsi"
/ {
model = "king-rk3399";
compatible = "rockchip,rk3399-excavator-linux", "rockchip,rk3399";
fan_gpio_control {
compatible = "fan_gpio_control";
gpio-pin = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
thermal-zone = "cpu-thermal";
threshold-temp = <60000>; //60C
running-time = <10000>; //10s
status = "okay";
};
rp_power{
compatible = "rp_power";
rp_not_deep_sleep = <1>;
status = "okay";
/*
* #define GPIO_FUNCTION_OUTPUT 0
* #define GPIO_FUNCTION_INPUT 1
* #define GPIO_FUNCTION_IRQ 2
* #define GPIO_FUNCTION_FLASH 3
* #define GPIO_FUNCTION_OUTPUT_CTRL 4 //output and creat proc ctrl
*
* you can define the gpio function as above
* on gpio_function = <>;
*
*If you want to set the uboot to high level, add the lower properties
* regulator_uboot_on
*/
breathe-led { //run led
gpio_num = <&gpio4 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <3>;
regulator_uboot_on;
};
power_en {
gpio_num = <&gpio4 RK_PD6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
hub_rst {
gpio_num = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
//fan_open {
// gpio_num = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
// gpio_function = <4>;
// regulator_uboot_on;
// };
gsm_power_en {
gpio_num = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
};
rp_gpio{
status = "okay";
compatible = "rp_gpio";
base_value = <0>; //3288_5.1 = 0 3288_7.1.2 = 992 3288_ubuntu = 992 3399_7.1.2 = 1000 3399_ubuntu = 0
gpio4c5 {
gpio_num = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
gpio4d5 {
gpio_num = <&gpio4 RK_PD5 GPIO_ACTIVE_HIGH>;
gpio_function = <0>;
};
};
};
&spi1 {
status = "disabled";
max-freq = <50000000>;
spi_test:spi_test@0 {
status = "okay";
compatible = "rockchip,spidev";
reg = <0>;
spi-max-frequency = <4000000>;
spi-cpha;
spi-cpol;
cs-gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_LOW>;
};
};
&io_domains {
status = "okay";
bt656-supply = <&vcc_1v8>; /* bt656_gpio2ab_ms */
audio-supply = <&vcca1v8_codec>; /* audio_gpio3d4a_ms */
sdmmc-supply = <&vcc_sdio>; /* sdmmc_gpio4b_ms */
gpio1830-supply = <&vcc_3v0>; /* gpio1833_gpio4cd_ms */
};
&pmu_io_domains {
status = "okay";
pmu1830-supply = <&vcc_1v8>; //king usb
};
//used to bluetooth
//&uart0 {
// status = "okay";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 0>, <&dmac_peri 1>;
//};
//conflicts to ethernet
&uart1 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 2>, <&dmac_peri 3>;
};
//conflicts to debugger
&uart2 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 4>, <&dmac_peri 5>;
};
//conflicts to ethernet
&uart3 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 6>, <&dmac_peri 7>;
};
&uart4 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart4_xfer>;
dma-names = "tx", "rx";
dmas = <&dmac_peri 8>, <&dmac_peri 9>;
};
&fiq_debugger {
rockchip,serial-id = <2>; //uart2
rockchip,wake-irq = <0>;
rockchip,irq-mode-enable = <1>;
compatible = "rockchip,fiq-debugger";
rockchip,baudrate = <115200>;
pinctrl-names = "default";
pinctrl-0 = <&uart2c_xfer>;
};

273
rk3399/nano-rk3399.dts Executable file
View File

@@ -0,0 +1,273 @@
/dts-v1/;
#include "rp-rk3399-board.dtsi"
#include "rp-usb2-host0.dtsi"
#include "rp-usb2-host1.dtsi"
#include "rp-usb3-otg-typeA.dtsi"
//#include "rp-usb3-otg-typeC.dtsi"
#include "rp-usb3_1-host.dtsi"
#include "rp-audio-rt5640.dtsi"
#include "rp-pmu-rk808.dtsi"
#include "rp-gpio-key.dtsi"
#include "rp-adc-key.dtsi"
#include "rp-gmac.dtsi"
#include "rp-wifi-sdio.dtsi"
#include "rp-bt-uart0.dtsi"
#include "rp-mipi-ov13850-camera.dtsi"
//#include "rp-hdmiin.dtsi"
#include "rp-sdcard-mmc1.dtsi"
//#include "rp-lcd-hdmi.dtsi"
//#include "rp-lcd-mipi-5-720-1280.dtsi"
//#include "rp-lcd-mipi-5-720-1280-v2.dtsi"
//#include "rp-lcd-mipi-5-720-1280-v2-boxTP.dtsi"
//#include "rp-lcd-mipi-5.5-720-1280.dtsi"
//#include "rp-lcd-mipi-5.5-1080-1920.dtsi"
//#include "rp-lcd-mipi-5.5-720-1280-v2.dtsi"
#include "rp-lcd-mipi-7-1024-600.dtsi"
//#include "rp-lcd-mipi-7-800-1280.dtsi"
//#include "rp-lcd-mipi-7-1200-1920.dtsi"
//#include "rp-lcd-mipi-8-800-1280.dtsi"
//#include "rp-lcd-mipi-8-800-1280-new.dtsi"
//#include "rp-lcd-mipi-8-800-1280-v3.dtsi"
//#include "rp-lcd-mipi-8-1200-1920.dtsi"
//#include "rp-lcd-mipi-10-800-1280.dtsi"
//#include "rp-lcd-mipi-10-800-1280-v2.dtsi"
//#include "rp-lcd-mipi-10-800-1280-v3.dtsi"
//#include "rp-lcd-mipi-10-1920-1200.dtsi"
//#include "rp-lcd-edp-13.3-1920-1080.dtsi"
//#include "rp-lcd-edp-13.3-15.6-1920-1080.dtsi"
//#include "rp-lcd-mipi2lvds-10-1024-600.dtsi"
//#include "rp-lcd-mipi2Duallvds-1920-1080.dtsi"
/ {
model = "nano-rk3399";
compatible = "rockchip,rk3399-excavator-linux", "rockchip,rk3399";
fan_gpio_control {
compatible = "fan_gpio_control";
gpio-pin = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
thermal-zone = "cpu-thermal";
threshold-temp = <60000>; //60C
running-time = <10000>; //10s
status = "okay";
};
rp_power{
compatible = "rp_power";
rp_not_deep_sleep = <1>;
status = "okay";
/*
* #define GPIO_FUNCTION_OUTPUT 0
* #define GPIO_FUNCTION_INPUT 1
* #define GPIO_FUNCTION_IRQ 2
* #define GPIO_FUNCTION_FLASH 3
* #define GPIO_FUNCTION_OUTPUT_CTRL 4 //output and creat proc ctrl
*
* you can define the gpio function as above
* on gpio_function = <>;
*
*If you want to set the uboot to high level, add the lower properties
* regulator_uboot_on
*/
vdd_en { //vdd5v and vdd_io power en
gpio_num = <&gpio4 RK_PD6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
host_en { //usb2.0 and 3.0 host 5v power en
gpio_num = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
//fan { //fan en
// gpio_num = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
// gpio_function = <4>;
// regulator_uboot_on;
//};
vdd_3g { //vdd 3G power en
gpio_num = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
run_led { //LED for indicate system is runing
gpio_num = <&gpio4 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <3>;
regulator_uboot_on;
};
};
rp_gpio {
status = "okay";
compatible = "rp_gpio";
base_value = <0>; //3288_5.1 = 0 3288_7.1.2 = 992 3288_ubuntu = 992 3399_7.1.2 = 1000 3399_ubuntu = 0
gpio1a1 {
gpio_num = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
gpio1a2 {
gpio_num = <&gpio1 RK_PA2 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
gpio1a3 {
gpio_num = <&gpio1 RK_PA3 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
gpio1c7 {
gpio_num = <&gpio1 RK_PC7 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
};
rp-keys {
compatible = "rp-keys";
name = "rp-keys";
status = "disabled";
gpio1a1 {
gpios = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>;
};
gpio1a2 {
label = "gpio1a1_key";
gpios = <&gpio1 RK_PA2 GPIO_ACTIVE_HIGH>;
wakeup;
debounce_interval = <10>;
press_type = <1>;
code = <KEY_ENTER>;
};
};
/* wireless-bluetooth {
compatible = "bluetooth-platdata";
clocks = <&rk808 1>;
clock-names = "ext_clock";
//wifi-bt-power-toggle;
uart_rts_gpios = <&gpio2 RK_PC3 GPIO_ACTIVE_LOW>; /* GPIO2_C3 */
/* pinctrl-names = "default", "rts_gpio";
pinctrl-0 = <&uart0_rts>,<&bt_wake_gpio>, <&bt_irq_gpio>;
pinctrl-1 = <&uart0_gpios>;
//BT,power_gpio = <&gpio3 19 GPIO_ACTIVE_HIGH>; /* GPIOx_xx */
// BT,reset_gpio = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>; /* GPIO0_B1 */
// BT,wake_gpio = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>; /* GPIO2_D2 */
// BT,wake_host_irq = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>; /* GPIO0_A4 */
// status = "okay";
// };
};
&spi1 {
status = "okay";
spi_wk2xxx: spi_wk2xxx@0{
status = "okay";
compatible = "spi-wk2xxx";
reg = <0>;
spi-max-frequency = <10000000>;
reset-gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
irq-gpio = <&gpio1 20 IRQ_TYPE_EDGE_FALLING>;
cs-gpio = <&gpio1 10 GPIO_ACTIVE_HIGH>;
};
};
&io_domains {
status = "okay";
bt656-supply = <&vcc_1v8>; /* bt656_gpio2ab_ms */
audio-supply = <&vcca1v8_codec>; /* audio_gpio3d4a_ms */
sdmmc-supply = <&vcc_sdio>; /* sdmmc_gpio4b_ms */
gpio1830-supply = <&vcc_3v0>; /* gpio1833_gpio4cd_ms */
};
&pmu_io_domains {
status = "okay";
pmu1830-supply = <&vcc_3v0>; //nano usb
};
//used to bluetooth
//&uart0 {
// status = "okay";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 0>, <&dmac_peri 1>;
//};
//conflicts to ethernet
&uart1 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 2>, <&dmac_peri 3>;
};
//conflicts to debugger
&uart2 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 4>, <&dmac_peri 5>;
};
//conflicts to ethernet
&uart3 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 6>, <&dmac_peri 7>;
};
&uart4 {
status = "disabled";//okay
pinctrl-names = "default";
pinctrl-0 = <&uart4_xfer>;
dma-names = "tx", "rx";
dmas = <&dmac_peri 8>, <&dmac_peri 9>;
};
&fiq_debugger {
rockchip,serial-id = <2>; //uart2
rockchip,wake-irq = <0>;
rockchip,irq-mode-enable = <1>;
compatible = "rockchip,fiq-debugger";
rockchip,baudrate = <115200>;
pinctrl-names = "default";
pinctrl-0 = <&uart2c_xfer>;
};
&vcc_otg_vbus {
gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&otg_vbus_drv>;
};
&pinctrl {
usb{
otg_vbus_drv: otg-vbus-drv {
rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

612
rk3399/rd-box-h-rk3399.dts Executable file
View File

@@ -0,0 +1,612 @@
#include "../rk3399-sapphire-excavator-linux.dts"
//#include ""
#include "rp-usb-typea.dtsi"
/** lcd configuration */
//#include "rp-lcd-hdmi.dtsi"
//#include "rp-lcd-mipi-5-720-1280-v2-boxTP.dtsi"
//#include "rp-lcd-mipi-5-720-1280-v2.dtsi"
#include "rp-lcd-mipi-7-720-1280-jc070hd005-v1.dtsi"
//#include "rp-lcd-mipi-8-800-1280-v3.dtsi"
//#include "rp-lcd-mipi-8-1200-1920.dtsi"
//#include "rp-lcd-mipi-10-800-1280-v3.dtsi"
//#include "rp-rd-lcd-edp-13.3-15.6-1920-1080.dtsi"
/ {
model = "rd-box-h-rk3399";
compatible = "rpdzkj,rd-box-h-rk3399", "rockchip,rk3399";
rp_power{
compatible = "rp_power";
rp_not_deep_sleep = <1>;
status = "okay";
/*
* #define GPIO_FUNCTION_OUTPUT 0
* #define GPIO_FUNCTION_INPUT 1
* #define GPIO_FUNCTION_IRQ 2
* #define GPIO_FUNCTION_FLASH 3
* #define GPIO_FUNCTION_OUTPUT_CTRL 4 //output and creat proc ctrl
*
* you can define the gpio function as above
* on gpio_function = <>;
*/
fan_en { //fan
gpio_num = <&gpio1 18 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
};
hub_rst { // usb hub reset pin
gpio_num = <&gpio1 24 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
};
breath-led { //run led
gpio_num = <&gpio4 24 GPIO_ACTIVE_HIGH>;
gpio_function = <3>;
};
vdd-en { //vdd_5v, vdd_io power en
gpio_num = <&gpio4 30 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
};
vdd_3g { // 4g module power enable
gpio_num = <&gpio4 22 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
};
host_en { //usb port power enable
gpio_num = <&gpio4 25 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
};
otg_host_en { /* usb3.0 otg port host power en,
* refer to Schematic diagram,
* the default status is needed
* by host active, such as below
* GPIO_ACTIVE_LOW
*/
gpio_num = <&gpio4 26 GPIO_ACTIVE_LOW>;
gpio_function = <4>;
};
};
rp_gpio{
status = "okay";
compatible = "rp_gpio";
/**
* GPIO example, place you want to control as below
*
* gpioxxx { // the node name will display on /proc/rp_gpio, you can define any character string
* gpio_num = <>; // gpio you want ot control
* gpio_function = <>; // function of current gpio: 0 output, 1 input, 3 blink per 2S
* gpio_event = <KEY_F14>; // optional property used to define gpio report event such as KEY_F14, only works in case of gpio_function = <1>;
* };
*/
gpio0a2 {
gpio_num = <&gpio0 2 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio1a2 {
gpio_num = <&gpio1 2 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio1c7 {
gpio_num = <&gpio1 23 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio0b3 {
gpio_num = <&gpio0 11 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio3d4 {
gpio_num = <&gpio3 28 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio3d5 {
gpio_num = <&gpio3 29 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio3d6 {
gpio_num = <&gpio3 30 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio4c5 {
gpio_num = <&gpio4 21 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio4d3 {
gpio_num = <&gpio4 27 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
};
rt5640-sound {
compatible = "simple-audio-card";
simple-audio-card,format = "i2s";
simple-audio-card,name = "rockchip,rt5640-codec";
simple-audio-card,mclk-fs = <256>;
simple-audio-card,widgets =
"Microphone", "Mic Jack",
//"Headphone", "Headphone Jack", //fix for headphone dapm name to match drivers
"Headphone", "Headphones",
"Speaker", "Speaker";
simple-audio-card,routing =
"Mic Jack", "MICBIAS1",
"IN1P", "Mic Jack",
//"Headphone Jack", "HPOL", //fix for headphone dapm name to match drivers
//"Headphone Jack", "HPOR",
"Headphones", "HPOL",
"Headphones", "HPOR",
"Speaker", "SPOLP",
"Speaker", "SPOLN",
"Speaker", "SPORP",
"Speaker", "SPORN";
pinctrl-names = "default";
pinctrl-0 = <&rt5640_hp_det_gpio>;
simple-audio-card,hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
simple-audio-card,cpu {
sound-dai = <&i2s0>;
};
simple-audio-card,codec {
sound-dai = <&rt5640>;
};
};
wireless-bluetooth {
/** redefine for fix real used gpio */
compatible = "bluetooth-platdata";
clocks = <&rk808 1>;
clock-names = "ext_clock";
//wifi-bt-power-toggle;
uart_rts_gpios = <&gpio2 19 GPIO_ACTIVE_LOW>; // GPIO2_C3
pinctrl-names = "default", "rts_gpio";
pinctrl-0 = <&uart0_rts>;
pinctrl-1 = <&uart0_gpios>;
//BT,power_gpio = <&gpio3 19 GPIO_ACTIVE_HIGH>; // GPIOx_xx
BT,reset_gpio = <&gpio0 9 GPIO_ACTIVE_HIGH>; // GPIO0_B1
BT,wake_gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>; // GPIO0_B4
BT,wake_host_irq = <&gpio0 4 GPIO_ACTIVE_HIGH>; // GPIO0_A4
status = "okay";
};
/** spi2can mcp2515 configuration */
clkin_24m: osci_24m {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <24000000>;
};
};
&i2c0 {
status = "okay";
i2c-scl-rising-time-ns = <168>;
i2c-scl-falling-time-ns = <4>;
clock-frequency = <400000>;
vdd_cpu_b: syr827@40 {
compatible = "silergy,syr827";
reg = <0x40>;
vin-supply = <&vcc5v0_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel1_gpio>;
vsel-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_cpu_b";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_gpu: syr828@41 {
compatible = "silergy,syr828";
reg = <0x41>;
vin-supply = <&vcc5v0_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel2_gpio>;
vsel-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_gpu";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
rk808: pmic@1b {
compatible = "rockchip,rk808";
reg = <0x1b>;
interrupt-parent = <&gpio1>;
interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
rockchip,system-power-controller;
wakeup-source;
#clock-cells = <1>;
//clock-output-names = "xin32k", "rk808-clkout2";
clock-output-names = "rk808-clkout1", "rk808-clkout2"; //wifi
/*
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 = <&vcc_3v0>;
*/
vcc1-supply = <&vcc5v0_sys>;
vcc2-supply = <&vcc5v0_sys>;
vcc3-supply = <&vcc5v0_sys>;
vcc4-supply = <&vcc5v0_sys>;
vcca-supply = <&vcc5v0_sys>;
vcc6-supply = <&vcc5v0_sys>;
vcc7-supply = <&vcc5v0_sys>;
vcc8-supply = <&vcc3v3_sys>;
vcc9-supply = <&vcc5v0_sys>;
vcc10-supply = <&vcc5v0_sys>;
vcc11-supply = <&vcc5v0_sys>;
vcc12-supply = <&vcc3v3_sys>;
vddio-supply = <&vcc1v8_pmu>;
regulators {
vdd_center: DCDC_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_center";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_cpu_l: DCDC_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_cpu_l";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc_ddr: DCDC_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc_ddr";
regulator-state-mem {
regulator-on-in-suspend;
};
};
vcc_1v8: DCDC_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc_1v8";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vcc1v8_dvp: LDO_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_dvp";
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;
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc1v8_pmu: LDO_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_pmu";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vccio_sd: LDO_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vccio_sd";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcca3v0_codec: LDO_REG5 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcca3v0_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <3000000>;
};
};
vcc_1v5: LDO_REG6 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <1500000>;
regulator-name = "vcc_1v5";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1500000>;
};
};
vcca1v8_codec: LDO_REG7 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcca1v8_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <1800000>;
};
};
vcc_3v0: LDO_REG8 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcc_3v0";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc3v3_s3: SWITCH_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s3";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc3v3_s0: SWITCH_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s0";
regulator-state-mem {
regulator-off-in-suspend;
};
};
};
};
};
&io_domains {
status = "okay";
bt656-supply = <&vcc_1v8>; /* bt656_gpio2ab_ms */
audio-supply = <&vcca1v8_codec>; /* audio_gpio3d4a_ms */
sdmmc-supply = <&vccio_sd>; /* sdmmc_gpio4b_ms */
gpio1830-supply = <&vcc_3v0>; /* gpio1833_gpio4cd_ms */
};
&gmac {
/***** redefine delay value for rtl8211f */
status = "okay";
tx_delay = <0x21>;
rx_delay = <0x23>;
//max-speed = <100>; /* set eth maximal speed, default utomatically adapt */
};
&pmu_io_domains {
status = "okay";
pmu1830-supply = <&vcc_1v8>; //nano usb
};
&rk808 {
rtc {
/****** disable rtc-rk808 for use hym8563 */
status = "disabled";
};
};
&i2c1 {
status = "okay";
i2c-scl-rising-time-ns = <300>;
i2c-scl-falling-time-ns = <15>;
rt5640: rt5640@1c {
#sound-dai-cells = <0>;
compatible = "realtek,rt5640";
reg = <0x1c>;
clocks = <&cru SCLK_I2S_8CH_OUT>;
clock-names = "mclk";
realtek,in1-differential;
pinctrl-names = "default";
pinctrl-0 = <&i2s_8ch_mclk>;
io-channels = <&saradc 4>;
//hp-con-gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
//hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
hp-det-adc-value = <500>;
status = "okay";
};
rtc-hym8563@51 {
status = "okay";
compatible = "haoyu,hym8563";
reg = <0x51>;
};
#if 0
rk628_hdmi2csi: rk628_hdmi2csi@50 {
reg = <0x50>;
compatible = "rockchip,rk628-hdmi2csi";
interrupt-parent = <&gpio2>;
interrupts = <7 IRQ_TYPE_LEVEL_HIGH>; //gpio2_a7
enable-gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>;
plugin-det-gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_HIGH>;
status = "okay";
};
#else
rk628_hdmi2csi_v4l2: rk628_hdmi2csi_v4l2@50 {
reg = <0x50>;
compatible = "rockchip,rk628-csi-v4l2";
interrupt-parent = <&gpio2>;
interrupts = <7 IRQ_TYPE_LEVEL_HIGH>; //gpio2_a7
enable-gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>;
plugin-det-gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_HIGH>;
status = "okay";
rockchip,camera-module-index = <0>;
rockchip,camera-module-facing = "back";
rockchip,camera-module-name = "RK628-CSI";
rockchip,camera-module-lens-name = "NC";
port {
hdmiin_out1: endpoint {
remote-endpoint = <&mipi_in_ucam0>;
data-lanes = <1 2 3 4>;
};
};
};
#endif
};
&hdmi_sound {
status = "disabled";
};
&spi1 {
status = "okay";
spi_wk2xxx: spi_wk2xxx@00{
status = "okay";
compatible = "spi-wk2xxx";
reg = <0>;
spi-max-frequency = <10000000>;
reset-gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
irq-gpio = <&gpio0 8 IRQ_TYPE_EDGE_FALLING>;
cs-gpio = <&gpio1 10 GPIO_ACTIVE_HIGH>;
};
};
/*spi2 to can :gpio_irq conflict ov13850f in i2c1 define*/
&ov13850f{
status = "disabled";
};
/** for rk628 v4l2 link */
&ov13850b {
status = "disabled";
};
&mipi_in_ucam0 {
remote-endpoint = <&hdmiin_out1>;
data-lanes = <1 2 3 4>;
};
&spi2{
status = "okay";
can0: mcp251x@0 {
compatible = "microchip,mcp2515";
reg = <0>;
clocks = <&clkin_24m>;
//interrupt-parent = <&gpio1>;
//interrupts = <30 GPIO_ACTIVE_LOW>;
//interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
gpio_irq = <&gpio2 8 GPIO_ACTIVE_LOW>;
spi-max-frequency = <10000000>;
status = "okay";
};
};
&pinctrl {
rt5640 {
rt5640_hp_det_gpio: rt5640_hp_det_gpio {
rockchip,pins = <4 28 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
/** redefine for sdo1, sdo2 and sdo3 to be gpio */
i2s0 {
i2s0_8ch_bus: i2s0-8ch-bus {
rockchip,pins =
<3 24 RK_FUNC_1 &pcfg_pull_none>,
<3 25 RK_FUNC_1 &pcfg_pull_none>,
<3 26 RK_FUNC_1 &pcfg_pull_none>,
<3 27 RK_FUNC_1 &pcfg_pull_none>,
<3 31 RK_FUNC_1 &pcfg_pull_none>;
};
};
};

View File

@@ -0,0 +1,293 @@
/ {
panel: panel {
compatible = "simple-panel";
backlight = <&backlight>;
power-supply = <&vcc3v3_sys>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
prepare-delay-ms = <20>;
enable-delay-ms = <20>;
reset = <&gpio1 0 GPIO_ACTIVE_HIGH>;
reset-delay-ms = <200>;
display-timings {
native-mode = <&timing0>;
timing0: timing0 {//EDP compatible with 13.3 and 15.6
clock-frequency = <150000000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <140>;//160
hsync-len = <8>;//32
hback-porch = <130>;//160
vfront-porch = <3>;//3
vsync-len = <5>;//5
vback-porch = <23>;//23
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <138000000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <48>;
hsync-len = <32>;
hback-porch = <80>;
vfront-porch = <3>;
vsync-len = <5>;
vback-porch = <23>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
panel_in: endpoint {
remote-endpoint = <&edp_out>;
};
};
};
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 0 25000 1>;
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 = <255>;
// enable-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "240";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
// secure-memory-region = <&secure_memory>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
//status = "okay";
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "fullscreen";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&pwm0 {
status = "okay";
};
&edp {
status = "okay";
force-hpd;
ports {
port@1 {
reg = <1>;
edp_out: endpoint {
remote-endpoint = <&panel_in>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&edp_in_vopl {
status = "disabled";
};
&edp_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&route_edp {
status = "okay";
//status = "disabled";
};
&route_hdmi {
status = "okay";
//status = "disabled";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1920>;
gtp_resolution_y = <1080>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
// gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
43 80 07 38 04 0A 3D 00 01 06
28 08 55 32 03 05 00 00 00 00
00 00 06 18 1A 1E 14 95 35 FF
2D 2F A6 0F 00 00 00 01 03 2C
00 00 00 00 00 00 00 00 00 00
00 2D 5A 94 D0 42 00 08 00 04
79 30 00 6E 37 00 65 3F 00 5D
49 00 57 54 00 57 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 1D 1C 1B 1A 19 18 17 16
15 14 13 12 11 10 0F 0E 0D 0C
0B 0A 09 08 07 06 05 04 03 02
01 00 00 01 02 03 04 05 06 07
08 09 0A 0B 0C 0D 0E 0F 10 11
12 13 14 15 16 17 18 19 1B 1C
1D 1E 1F 20 21 22 23 24 25 26
27 28 29 2A 86 01
];
};
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

294
rk3399/rd-box-rk3399.dts Executable file
View File

@@ -0,0 +1,294 @@
/dts-v1/;
#include "rp-rk3399-board.dtsi"
#include "rp-pmu-rk808.dtsi"
#include "rp-audio-rt5640.dtsi"
#include "rp-usb2-host0.dtsi"
#include "rp-usb2-host1.dtsi"
#include "rp-usb3-otg-typeA.dtsi"
//#include "rp-usb3-otg-typeC.dtsi"
#include "rp-usb3_1-host.dtsi"
#include "rp-gpio-key.dtsi"
#include "rp-adc-key.dtsi"
#include "rp-gmac.dtsi"
#include "rp-mipi-ov13850-camera.dtsi"
//#include "rp-hdmiin.dtsi"
#include "rp-pcie.dtsi"
#include "rp-wifi-sdio.dtsi"
#include "rp-bt-uart0.dtsi"
#include "rp-sdcard-mmc1.dtsi"
/** lcd configuration */
//#include "rp-lcd-hdmi.dtsi"
//#include "rp-lcd-mipi-5.5-720-1280-v2.dtsi"
//#include "rp-lcd-mipi-5-720-1280-v2-boxTP.dtsi"
//#include "rp-lcd-mipi-5-720-1280-v2.dtsi"
#include "rp-lcd-mipi-7-720-1280-jc070hd005-v1.dtsi"
//#include "rp-lcd-mipi-8-800-1280-v3.dtsi"
//#include "rp-lcd-mipi-8-1200-1920.dtsi"
//#include "rp-lcd-mipi-10-800-1280-v2.dtsi"
//#include "rp-lcd-mipi-10-800-1280-v3.dtsi"
//#include "rd-box-lcd-edp-13.3-15.6-1920-1080.dtsi"
/ {
model = "rd-box-rk3399";
compatible = "rpdzkj,rd-box-rk3399", "rockchip,rk3399";
fan_gpio_control {
compatible = "fan_gpio_control";
gpio-pin = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
thermal-zone = "cpu-thermal";
threshold-temp = <60000>; //60C
running-time = <10000>; //10s
status = "okay";
};
rp_power{
compatible = "rp_power";
rp_not_deep_sleep = <1>;
status = "okay";
/*
* #define GPIO_FUNCTION_OUTPUT 0
* #define GPIO_FUNCTION_INPUT 1
* #define GPIO_FUNCTION_IRQ 2
* #define GPIO_FUNCTION_FLASH 3
* #define GPIO_FUNCTION_OUTPUT_CTRL 4 //output and creat proc ctrl
*
* you can define the gpio function as above
* on gpio_function = <>;
*
*If you want to set the uboot to high level, add the lower properties
* regulator_uboot_on
*/
// fan_en { //fan
// gpio_num = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
// gpio_function = <4>;
// regulator_uboot_on;
// };
hub_rst { // usb hub reset pin
gpio_num = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
breath-led { //run led
gpio_num = <&gpio4 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <3>;
regulator_uboot_on;
};
vdd-en { //vdd_5v, vdd_io power en
gpio_num = <&gpio4 RK_PD6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
vdd_3g { // 4g module power enable
gpio_num = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
host_en { //usb port power enable
gpio_num = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
};
rp_gpio{
status = "okay";
compatible = "rp_gpio";
/**
* GPIO example, place you want to control as below
*
* gpioxxx { // the node name will display on /proc/rp_gpio, you can define any character string
* gpio_num = <>; // gpio you want ot control
* gpio_function = <>; // function of current gpio: 0 output, 1 input, 3 blink per 2S
* gpio_event = <KEY_F14>; // optional property used to define gpio report event such as KEY_F14, only works in case of gpio_function = <1>;
* };
*/
gpio0a2 {
gpio_num = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio1a2 {
gpio_num = <&gpio1 RK_PA2 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio1c7 {
gpio_num = <&gpio1 RK_PC7 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio0b3 {
gpio_num = <&gpio0 RK_PB3 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio3d4 {
gpio_num = <&gpio3 RK_PD4 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio3d5 {
gpio_num = <&gpio3 RK_PD5 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio3d6 {
gpio_num = <&gpio3 RK_PD6 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio4c5 {
gpio_num = <&gpio4 RK_PC5 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio4d3 {
gpio_num = <&gpio4 RK_PD3 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
};
wireless-bluetooth {
compatible = "bluetooth-platdata";
clocks = <&rk808 1>;
clock-names = "ext_clock";
//wifi-bt-power-toggle;
uart_rts_gpios = <&gpio2 RK_PC3 GPIO_ACTIVE_LOW>; /* GPIO2_C3 */
pinctrl-names = "default", "rts_gpio";
pinctrl-0 = <&uart0_rts>, <&bt_reset_gpio>, <&bt_wake_gpio>, <&bt_irq_gpio>;
pinctrl-1 = <&uart0_gpios>;
//BT,power_gpio = <&gpio3 19 GPIO_ACTIVE_HIGH>; /* GPIOx_xx */
//BT,reset_gpio = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>; /* GPIO0_B1 */
BT,wake_gpio = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>; /* GPIO2_D2 */
//BT,wake_host_irq = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>; /* GPIO0_A4 */
status = "okay";
};
};
&io_domains {
status = "okay";
bt656-supply = <&vcc_1v8>; /* bt656_gpio2ab_ms */
audio-supply = <&vcca1v8_codec>; /* audio_gpio3d4a_ms */
sdmmc-supply = <&vcc_sdio>; /* sdmmc_gpio4b_ms */
gpio1830-supply = <&vcc_3v0>; /* gpio1833_gpio4cd_ms */
};
&pmu_io_domains {
status = "okay";
pmu1830-supply = <&vcc_1v8>; //nano usb
};
&rk808 {
rtc {
/****** disable rtc-rk808 for use hym8563 */
status = "disabled";
};
};
&i2c1 {
status = "okay";
i2c-scl-rising-time-ns = <300>;
i2c-scl-falling-time-ns = <15>;
rtc-hym8563@51 {
status = "okay";
compatible = "haoyu,hym8563";
reg = <0x51>;
};
};
//used to bluetooth
//&uart0 {
// status = "okay";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 0>, <&dmac_peri 1>;
//};
//conflicts to ethernet
&uart1 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 2>, <&dmac_peri 3>;
};
//conflicts to debugger
&uart2 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 4>, <&dmac_peri 5>;
};
//conflicts to ethernet
&uart3 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 6>, <&dmac_peri 7>;
};
&uart4 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart4_xfer>;
dma-names = "tx", "rx";
dmas = <&dmac_peri 8>, <&dmac_peri 9>;
};
&fiq_debugger {
rockchip,serial-id = <2>; //uart2
rockchip,wake-irq = <0>;
rockchip,irq-mode-enable = <1>;
compatible = "rockchip,fiq-debugger";
rockchip,baudrate = <115200>;
pinctrl-names = "default";
pinctrl-0 = <&uart2c_xfer>;
};
/*
&spi_wk2xxx{
status = "okay";
reset-gpio = <&gpio4 RK_PD5 GPIO_ACTIVE_HIGH>;
irq-gpio = <&gpio0 RK_PB0 IRQ_TYPE_EDGE_FALLING>;//modify
cs-gpio = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;
};
*/
&pinctrl {
wireless-bluetooth {
bt_wake_gpio: bt-wake-gpio {
rockchip,pins =
<0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

239
rk3399/rd-rk3399.dts Executable file
View File

@@ -0,0 +1,239 @@
/dts-v1/;
#include "rp-rk3399-board.dtsi"
#include "rp-pmu-rk808.dtsi"
#include "rp-audio-rt5651.dtsi"
#include "rp-gpio-key.dtsi"
#include "rp-adc-key.dtsi"
#include "rp-gmac.dtsi"
#include "rp-mipi-ov13850-camera.dtsi"
//#include "rp-hdmiin.dtsi"
#include "rp-pcie.dtsi"
#include "rp-usb2-host0.dtsi"
#include "rp-usb2-host1.dtsi"
#include "rp-usb3-otg-typeA.dtsi"
//#include "rp-usb3-otg-typeC.dtsi"
#include "rp-usb3_1-host.dtsi"
#include "rp-wifi-sdio.dtsi"
#include "rp-bt-uart0.dtsi"
#include "rp-sdcard-mmc1.dtsi"
#include "rp-lcd-hdmi.dtsi"
//#include "rp-lcd-mipi-5-720-1280.dtsi"
//#include "rp-lcd-mipi-5-720-1280-v2.dtsi"
//#include "rp-lcd-mipi-5.5-720-1280.dtsi"
//#include "rp-lcd-mipi-5.5-720-1280-v2.dtsi"
//#include "rp-lcd-mipi-5.5-1080-1920.dtsi"
#include "rp-lcd-mipi-7-1024-600.dtsi"
//#include "rp-lcd-mipi-7-800-1280.dtsi"
//#include "rp-lcd-mipi-7-1200-1920.dtsi"
//#include "rp-lcd-mipi-8-800-1280.dtsi"
//#include "rp-lcd-mipi-8-800-1280-new.dtsi"
//#include "rp-lcd-mipi-10-800-1280.dtsi"
//#include "rp-lcd-mipi-10-1920-1200.dtsi"
//#include "rp-lcd-edp-13.3-1920-1080.dtsi"
/ {
model = "rd-rk3399";
compatible = "rockchip,rk3399-excavator-linux", "rockchip,rk3399";
fan_gpio_control {
compatible = "fan_gpio_control";
gpio-pin = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
thermal-zone = "cpu-thermal";
threshold-temp = <60000>; //60C
running-time = <10000>; //10s
status = "okay";
};
rp_power{
compatible = "rp_power";
rp_not_deep_sleep = <1>;
status = "okay";
/*
* #define GPIO_FUNCTION_OUTPUT 0
* #define GPIO_FUNCTION_INPUT 1
* #define GPIO_FUNCTION_IRQ 2
* #define GPIO_FUNCTION_FLASH 3
* #define GPIO_FUNCTION_OUTPUT_CTRL 4 //output and creat proc ctrl
*
* you can define the gpio function as above
* on gpio_function = <>;
*
*If you want to set the uboot to high level, add the lower properties
* regulator_uboot_on
*/
breathe-led { //usb hub reset pin
gpio_num = <&gpio4 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <3>;
regulator_uboot_on;
};
power_en-gpio { //usb hub reset pin
gpio_num = <&gpio4 RK_PD6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
3v3_power_en { //usb hub reset pin
gpio_num = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
hub_rst { //usb hub reset pin
gpio_num = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
//fan_open { //fan
// gpio_num = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
// gpio_function = <4>;
// regulator_uboot_on;
//};
};
rp_gpio{
status = "okay";
compatible = "rp_gpio";
base_value = <0>;
gpio4c5 {
gpio_num = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
gpio4d1 {
gpio_num = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
gpio4d3 {
gpio_num = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
};
wireless-bluetooth {
compatible = "bluetooth-platdata";
clocks = <&rk808 1>;
clock-names = "ext_clock";
//wifi-bt-power-toggle;
uart_rts_gpios = <&gpio2 RK_PC3 GPIO_ACTIVE_LOW>; /* GPIO2_C3 */
pinctrl-names = "default", "rts_gpio";
pinctrl-0 = <&uart0_rts>, <&bt_reset_gpio>, <&bt_wake_gpio>, <&bt_irq_gpio>;
pinctrl-1 = <&uart0_gpios>;
//BT,power_gpio = <&gpio3 19 GPIO_ACTIVE_HIGH>; /* GPIOx_xx */
//BT,reset_gpio = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>; /* GPIO0_B1 */
BT,wake_gpio = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>; /* GPIO2_D2 */
//BT,wake_host_irq = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>; /* GPIO0_A4 */
status = "okay";
};
};
&io_domains {
status = "okay";
bt656-supply = <&vcc_1v8>; /* bt656_gpio2ab_ms */
audio-supply = <&vcca1v8_codec>; /* audio_gpio3d4a_ms */
sdmmc-supply = <&vcc_sdio>; /* sdmmc_gpio4b_ms */
gpio1830-supply = <&vcc_3v0>; /* gpio1833_gpio4cd_ms */
};
&pmu_io_domains {
status = "okay";
pmu1830-supply = <&vcc_1v8>; //nano usb
};
/*&spi_wk2xxx{
status = "okay";
reset-gpio = <&gpio4 RK_PD5 GPIO_ACTIVE_HIGH>;
irq-gpio = <&gpio0 RK_PB0 IRQ_TYPE_EDGE_FALLING>;//modify
cs-gpio = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;
};*/
&spi1 {
status = "okay";
spi_wk2xxx: spi_wk2xxx@0{
status = "okay";
compatible = "spi-wk2xxx";
reg = <0>;
spi-max-frequency = <10000000>;
reset-gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
irq-gpio = <&gpio0 8 IRQ_TYPE_EDGE_FALLING>;
cs-gpio = <&gpio1 10 GPIO_ACTIVE_HIGH>;
};
};
//used to bluetooth
&uart0 {
status = "okay";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 0>, <&dmac_peri 1>;
};
//conflicts to ethernet
&uart1 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 2>, <&dmac_peri 3>;
};
//conflicts to debugger
&uart2 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 4>, <&dmac_peri 5>;
};
//conflicts to ethernet
&uart3 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 6>, <&dmac_peri 7>;
};
&uart4 {
status = "disabled";
pinctrl-names = "default";
pinctrl-0 = <&uart4_xfer>;
dma-names = "tx", "rx";
dmas = <&dmac_peri 8>, <&dmac_peri 9>;
};
&fiq_debugger {
rockchip,serial-id = <2>; //uart2
rockchip,wake-irq = <0>;
rockchip,irq-mode-enable = <1>;
compatible = "rockchip,fiq-debugger";
rockchip,baudrate = <115200>;
pinctrl-names = "default";
pinctrl-0 = <&uart2c_xfer>;
};
&pinctrl {
wireless-bluetooth {
bt_wake_gpio: bt-wake-gpio {
rockchip,pins =
<0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

View File

@@ -0,0 +1,35 @@
&rp_gpio {
gpio10 {
gpio_num = <&gpio4 3 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
gpio11 {
gpio_num = <&gpio4 4 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
gpio12 {
gpio_num = <&gpio4 5 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
gpio13 {
gpio_num = <&gpio4 6 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
gpio14 {
gpio_num = <&gpio4 7 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
};
&i2s1 {
status = "okay";
};

227
rk3399/rk3399-linux.dtsi Executable file
View File

@@ -0,0 +1,227 @@
/*
* Copyright (c) 2016 Fuzhou Rockchip Electronics Co., Ltd
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#include <dt-bindings/display/drm_mipi_dsi.h>
#include "rk3399-vop-clk-set.dtsi"
/ {
compatible = "rockchip,linux", "rockchip,rk3399";
chosen {
bootargs = "earlycon=uart8250,mmio32,0xff1a0000 swiotlb=1 console=ttyFIQ0 rw root=PARTUUID=614e0000-0000 rootfstype=ext4 rootwait coherent_pool=1m";
};
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
drm_logo: drm-logo@00000000 {
compatible = "rockchip,drm-logo";
reg = <0x0 0x0 0x0 0x0>;
};
ramoops_mem: region@110000 {
reg = <0x0 0x110000 0x0 0xf0000>;
reg-names = "ramoops_mem";
};
};
ramoops: ramoops {
compatible = "ramoops";
record-size = <0x0 0x40000>;
console-size = <0x0 0x80000>;
ftrace-size = <0x0 0x00000>;
pmsg-size = <0x0 0x00000>;
memory-region = <&ramoops_mem>;
};
cif_isp0: cif_isp@ff910000 {
compatible = "rockchip,rk3399-cif-isp";
rockchip,grf = <&grf>;
reg = <0x0 0xff910000 0x0 0x4000>, <0x0 0xff968000 0x0 0x8000>;
reg-names = "register", "dsihost-register";
clocks =
<&cru ACLK_ISP0_NOC>, <&cru ACLK_ISP0_WRAPPER>,
<&cru HCLK_ISP0_NOC>, <&cru HCLK_ISP0_WRAPPER>,
<&cru SCLK_ISP0>, <&cru SCLK_DPHY_RX0_CFG>,
<&cru SCLK_CIF_OUT>, <&cru SCLK_CIF_OUT>,
<&cru SCLK_MIPIDPHY_REF>;
clock-names =
"aclk_isp0_noc", "aclk_isp0_wrapper",
"hclk_isp0_noc", "hclk_isp0_wrapper",
"clk_isp0", "pclk_dphyrx",
"clk_cif_out", "clk_cif_pll",
"pclk_dphy_ref";
interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH 0>;
interrupt-names = "cif_isp10_irq";
power-domains = <&power RK3399_PD_ISP0>;
rockchip,isp,iommu-enable = <1>;
iommus = <&isp0_mmu>;
status = "disabled";
};
cif_isp1: cif_isp@ff920000 {
compatible = "rockchip,rk3399-cif-isp";
rockchip,grf = <&grf>;
reg = <0x0 0xff920000 0x0 0x4000>, <0x0 0xff968000 0x0 0x8000>;
reg-names = "register", "dsihost-register";
clocks =
<&cru ACLK_ISP1_NOC>, <&cru ACLK_ISP1_WRAPPER>,
<&cru HCLK_ISP1_NOC>, <&cru HCLK_ISP1_WRAPPER>,
<&cru SCLK_ISP1>, <&cru PCLK_ISP1_WRAPPER>,
<&cru SCLK_DPHY_TX1RX1_CFG>,
<&cru PCLK_MIPI_DSI1>, <&cru SCLK_MIPIDPHY_CFG>,
<&cru SCLK_CIF_OUT>, <&cru SCLK_CIF_OUT>,
<&cru SCLK_MIPIDPHY_REF>;
clock-names =
"aclk_isp1_noc", "aclk_isp1_wrapper",
"hclk_isp1_noc", "hclk_isp1_wrapper",
"clk_isp1", "pclkin_isp1",
"pclk_dphytxrx",
"pclk_mipi_dsi","mipi_dphy_cfg",
"clk_cif_out", "clk_cif_pll",
"pclk_dphy_ref";
interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH 0>;
interrupt-names = "cif_isp10_irq";
power-domains = <&power RK3399_PD_ISP1>;
rockchip,isp,iommu-enable = <1>;
iommus = <&isp1_mmu>;
status = "disabled";
};
rga: rga@ff680000 {
compatible = "rockchip,rga2";
dev_mode = <1>;
reg = <0x0 0xff680000 0x0 0x1000>;
interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH 0>;
clocks = <&cru ACLK_RGA>, <&cru HCLK_RGA>, <&cru SCLK_RGA_CORE>;
clock-names = "aclk_rga", "hclk_rga", "clk_rga";
power-domains = <&power RK3399_PD_RGA>;
dma-coherent;
status = "okay";
};
};
/* HACK: keep MALI version on linux */
&gpu_power_model {
// for DDK r14.
voltage = <900>;
frequency = <500>;
static-power = <300>;
dynamic-power = <396>;
};
&pvtm {
status = "okay";
};
&pinctrl {
isp {
cif_clkout: cif-clkout {
rockchip,pins =
/* cif_clkout */
<2 11 RK_FUNC_3 &pcfg_pull_none>;
};
isp_dvp_d0d7: isp-dvp-d0d7 {
rockchip,pins =
<4 27 RK_FUNC_GPIO &pcfg_pull_none>,
/* cif_clkout */
<2 11 RK_FUNC_3 &pcfg_pull_none>,
/* cif_data0 */
<2 0 RK_FUNC_3 &pcfg_pull_none>,
/* cif_data1 */
<2 1 RK_FUNC_3 &pcfg_pull_none>,
/* cif_data2 */
<2 2 RK_FUNC_3 &pcfg_pull_none>,
/* cif_data3 */
<2 3 RK_FUNC_3 &pcfg_pull_none>,
/* cif_data4 */
<2 4 RK_FUNC_3 &pcfg_pull_none>,
/* cif_data5 */
<2 5 RK_FUNC_3 &pcfg_pull_none>,
/* cif_data6 */
<2 6 RK_FUNC_3 &pcfg_pull_none>,
/* cif_data7 */
<2 7 RK_FUNC_3 &pcfg_pull_none>,
/* cif_sync */
<2 8 RK_FUNC_3 &pcfg_pull_none>,
/* cif_href */
<2 9 RK_FUNC_3 &pcfg_pull_none>,
/* cif_clkin */
<2 10 RK_FUNC_3 &pcfg_pull_none>;
};
isp_shutter: isp-shutter {
rockchip,pins =
/* SHUTTEREN */
<1 1 RK_FUNC_1 &pcfg_pull_none>,
/* SHUTTERTRIG */
<1 0 RK_FUNC_1 &pcfg_pull_none>;
};
isp_flash_trigger: isp-flash-trigger {
/* ISP_FLASHTRIGOU */
rockchip,pins = <1 3 RK_FUNC_1 &pcfg_pull_none>;
};
isp_flash_trigger_as_gpio: isp-flash-trigger-as-gpio {
/* ISP_FLASHTRIGOU */
rockchip,pins = <0 17 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
cam_pins {
cam0_default_pins: cam0-default-pins {
rockchip,pins =
<4 27 RK_FUNC_GPIO &pcfg_pull_none>,
<2 11 RK_FUNC_3 &pcfg_pull_none>;
};
cam0_sleep_pins: cam0-sleep-pins {
rockchip,pins =
<4 27 RK_FUNC_3 &pcfg_pull_none>,
<2 11 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

53
rk3399/rp-adc-key.dtsi Executable file
View File

@@ -0,0 +1,53 @@
/ {
vccadc_ref: vccadc-ref {
compatible = "regulator-fixed";
regulator-name = "vcc1v8_sys";
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
adc_keys:adc-keys {
status = "okay";
compatible = "adc-keys";
io-channels = <&saradc 1>;
io-channel-names = "buttons";
poll-interval = <100>;
keyup-threshold-microvolt = <1800000>;
button-up {
label = "Volume Up";
linux,code = <KEY_VOLUMEUP>;
press-threshold-microvolt = <20000>;
};
button-down {
label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>;
press-threshold-microvolt = <300000>;
};
back {
label = "Back";
linux,code = <KEY_BACK>;
press-threshold-microvolt = <985000>;
};
menu {
label = "Menu";
linux,code = <KEY_MENU>;
press-threshold-microvolt = <1314000>;
};
};
};
&saradc {
status = "okay";
vref-supply = <&vcca1v8_s3>;
};

View File

@@ -0,0 +1,85 @@
/ {
rt5640-sound {
compatible = "simple-audio-card";
simple-audio-card,format = "i2s";
simple-audio-card,name = "rockchip,rt5640-codec";
simple-audio-card,mclk-fs = <256>;
simple-audio-card,widgets =
"Microphone", "Mic Jack",
//"Headphone", "Headphone Jack", //fix for headphone dapm name to match drivers
"Headphone", "Headphones",
"Speaker", "Speaker";
simple-audio-card,routing =
"Mic Jack", "MICBIAS1",
"IN1P", "Mic Jack",
//"Headphone Jack", "HPOL", //fix for headphone dapm name to match drivers
//"Headphone Jack", "HPOR",
"Headphones", "HPOL",
"Headphones", "HPOR",
"Speaker", "SPOLP",
"Speaker", "SPOLN",
"Speaker", "SPORP",
"Speaker", "SPORN";
pinctrl-names = "default";
pinctrl-0 = <&rt5640_hp_det_gpio>;
simple-audio-card,hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
simple-audio-card,cpu {
sound-dai = <&i2s0>;
};
simple-audio-card,codec {
sound-dai = <&rt5640>;
};
};
};
&i2c1 {
status = "okay";
i2c-scl-rising-time-ns = <300>;
i2c-scl-falling-time-ns = <15>;
rt5640: rt5640@1c {
#sound-dai-cells = <0>;
compatible = "realtek,rt5640";
reg = <0x1c>;
clocks = <&cru SCLK_I2S_8CH_OUT>;
clock-names = "mclk";
realtek,in1-differential;
pinctrl-names = "default";
pinctrl-0 = <&i2s_8ch_mclk>;
io-channels = <&saradc 4>;
//hp-con-gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
//hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
hp-det-adc-value = <500>;
status = "okay";
};
};
&i2s0 {
status = "okay";
rockchip,playback-channels = <8>;
rockchip,capture-channels = <8>;
#sound-dai-cells = <0>;
};
&pinctrl {
rt5640 {
rt5640_hp_det_gpio: rt5640_hp_det_gpio {
rockchip,pins = <4 28 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
/** redefine for sdo1, sdo2 and sdo3 to be gpio */
i2s0 {
i2s0_8ch_bus: i2s0-8ch-bus {
rockchip,pins =
<3 24 RK_FUNC_1 &pcfg_pull_none>,
<3 25 RK_FUNC_1 &pcfg_pull_none>,
<3 26 RK_FUNC_1 &pcfg_pull_none>,
<3 27 RK_FUNC_1 &pcfg_pull_none>,
<3 31 RK_FUNC_1 &pcfg_pull_none>;
};
};
};

69
rk3399/rp-audio-rt5640.dtsi Executable file
View File

@@ -0,0 +1,69 @@
/ {
rt5640-sound {
compatible = "simple-audio-card";
simple-audio-card,format = "i2s";
simple-audio-card,name = "rockchip,rt5640-codec";
simple-audio-card,mclk-fs = <256>;
simple-audio-card,widgets =
"Microphone", "Mic Jack",
"Headphone", "Headphone Jack",
"Speaker", "Speaker";
simple-audio-card,routing =
"Mic Jack", "MICBIAS1",
"IN1P", "Mic Jack",
"Headphone Jack", "HPOL",
"Headphone Jack", "HPOR",
"Speaker", "SPOLP",
"Speaker", "SPOLN",
"Speaker", "SPORP",
"Speaker", "SPORN";
pinctrl-names = "default";
pinctrl-0 = <&rt5640_hp_det_gpio>;
simple-audio-card,hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
simple-audio-card,cpu {
sound-dai = <&i2s0>;
};
simple-audio-card,codec {
sound-dai = <&rt5640>;
};
};
};
&i2c1 {
status = "okay";
i2c-scl-rising-time-ns = <300>;
i2c-scl-falling-time-ns = <15>;
rt5640: rt5640@1c {
#sound-dai-cells = <0>;
compatible = "realtek,rt5640";
reg = <0x1c>;
clocks = <&cru SCLK_I2S_8CH_OUT>;
clock-names = "mclk";
realtek,in1-differential;
pinctrl-names = "default";
pinctrl-0 = <&i2s_8ch_mclk>;
io-channels = <&saradc 4>;
//hp-con-gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
//hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
hp-det-adc-value = <500>;
status = "okay";
};
};
&i2s0 {
status = "okay";
rockchip,playback-channels = <8>;
rockchip,capture-channels = <8>;
#sound-dai-cells = <0>;
};
&pinctrl {
rt5640 {
rt5640_hp_det_gpio: rt5640_hp_det_gpio {
rockchip,pins = <4 28 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

View File

@@ -0,0 +1,50 @@
/ {
rt5651-sound {
compatible = "simple-audio-card";
simple-audio-card,format = "i2s";
simple-audio-card,name = "realtek,rt5651-codec";
simple-audio-card,mclk-fs = <256>;
simple-audio-card,widgets =
"Microphone", "Mic Jack",
"Headphone", "Headphone Jack";
simple-audio-card,routing =
"Mic Jack", "MICBIAS1",
"IN1P", "Mic Jack",
"Headphone Jack", "HPOL",
"Headphone Jack", "HPOR";
simple-audio-card,cpu {
sound-dai = <&i2s0>;
};
simple-audio-card,codec {
sound-dai = <&rt5651>;
};
};
};
&i2c1 {
status = "okay";
i2c-scl-rising-time-ns = <300>;
i2c-scl-falling-time-ns = <15>;
rt5651: rt5651@1a {
#sound-dai-cells = <0>;
compatible = "realtek,rt5651";
reg = <0x1a>;
clocks = <&cru SCLK_I2S_8CH_OUT>;
clock-names = "mclk";
pinctrl-names = "default";
pinctrl-0 = <&i2s_8ch_mclk>;
spk-con-gpio = <&gpio0 11 GPIO_ACTIVE_HIGH>;
hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_LOW>;
};
};
&i2s0 {
status = "okay";
rockchip,playback-channels = <8>;
rockchip,capture-channels = <8>;
#sound-dai-cells = <0>;
};

63
rk3399/rp-audio-rt5651.dtsi Executable file
View File

@@ -0,0 +1,63 @@
/ {
rt5651-sound {
compatible = "simple-audio-card";
simple-audio-card,format = "i2s";
simple-audio-card,name = "rockchip,rt5651-codec";
simple-audio-card,mclk-fs = <256>;
simple-audio-card,widgets =
"Microphone", "Mic Jack",
"Headphone", "Headphone Jack";
simple-audio-card,routing =
"Mic Jack", "micbias1",
"IN1P", "Mic Jack",
"Headphone Jack", "HPOL",
"Headphone Jack", "HPOR";
pinctrl-names = "default";
pinctrl-0 = <&rt5651_hp_det_gpio>;
simple-audio-card,hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
simple-audio-card,cpu {
sound-dai = <&i2s0>;
};
simple-audio-card,codec {
sound-dai = <&rt5651>;
};
};
};
&i2c1 {
status = "okay";
i2c-scl-rising-time-ns = <300>;
i2c-scl-falling-time-ns = <15>;
rt5651: rt5651@1a {
#sound-dai-cells = <0>;
compatible = "realtek,rt5651";
reg = <0x1a>;
clocks = <&cru SCLK_I2S_8CH_OUT>;
clock-names = "mclk";
pinctrl-names = "default";
pinctrl-0 = <&i2s_8ch_mclk>;
io-channels = <&saradc 4>;
spk-con-gpio = <&gpio0 11 GPIO_ACTIVE_HIGH>;
// hp-det-gpio = <&gpio4 28 GPIO_ACTIVE_LOW>;
hp-det-adc-value = <500>;
status = "okay";
};
};
&i2s0 {
status = "okay";
rockchip,playback-channels = <8>;
rockchip,capture-channels = <8>;
#sound-dai-cells = <0>;
};
&pinctrl {
rt5651 {
rt5651_hp_det_gpio: rt5651_hp_det_gpio {
rockchip,pins = <4 28 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

View File

@@ -0,0 +1,293 @@
/ {
panel: panel {
compatible = "simple-panel";
backlight = <&backlight>;
power-supply = <&vcc3v3_sys>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
prepare-delay-ms = <20>;
enable-delay-ms = <20>;
reset = <&gpio1 0 GPIO_ACTIVE_HIGH>;
reset-delay-ms = <200>;
display-timings {
native-mode = <&timing0>;
timing0: timing0 {//EDP compatible with 13.3 and 15.6
clock-frequency = <150000000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <140>;//160
hsync-len = <8>;//32
hback-porch = <130>;//160
vfront-porch = <3>;//3
vsync-len = <5>;//5
vback-porch = <23>;//23
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <138000000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <48>;
hsync-len = <32>;
hback-porch = <80>;
vfront-porch = <3>;
vsync-len = <5>;
vback-porch = <23>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
panel_in: endpoint {
remote-endpoint = <&edp_out>;
};
};
};
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 0 25000 1>;
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 = <255>;
// enable-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "240";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
// secure-memory-region = <&secure_memory>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
//status = "okay";
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "fullscreen";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&pwm0 {
status = "okay";
};
&edp {
status = "okay";
force-hpd;
ports {
port@1 {
reg = <1>;
edp_out: endpoint {
remote-endpoint = <&panel_in>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&edp_in_vopl {
status = "disabled";
};
&edp_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&route_edp {
status = "okay";
//status = "disabled";
};
&route_hdmi {
status = "okay";
//status = "disabled";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1920>;
gtp_resolution_y = <1080>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
// gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
43 80 07 38 04 0A 3D 00 01 06
28 08 55 32 03 05 00 00 00 00
00 00 06 18 1A 1E 14 95 35 FF
2D 2F A6 0F 00 00 00 01 03 2C
00 00 00 00 00 00 00 00 00 00
00 2D 5A 94 D0 42 00 08 00 04
79 30 00 6E 37 00 65 3F 00 5D
49 00 57 54 00 57 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 1D 1C 1B 1A 19 18 17 16
15 14 13 12 11 10 0F 0E 0D 0C
0B 0A 09 08 07 06 05 04 03 02
01 00 00 01 02 03 04 05 06 07
08 09 0A 0B 0C 0D 0E 0F 10 11
12 13 14 15 16 17 18 19 1B 1C
1D 1E 1F 20 21 22 23 24 25 26
27 28 29 2A 86 01
];
};
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

273
rk3399/rp-box-rk3399.dts Executable file
View File

@@ -0,0 +1,273 @@
/dts-v1/;
#include "rp-rk3399-board.dtsi"
#include "rp-pmu-rk808.dtsi"
#include "rp-audio-rt5640.dtsi"
#include "rp-usb2-host0.dtsi"
#include "rp-usb2-host1.dtsi"
#include "rp-usb3-otg-typeA.dtsi"
//#include "rp-usb3-otg-typeC.dtsi"
#include "rp-usb3_1-host.dtsi"
#include "rp-gpio-key.dtsi"
#include "rp-adc-key.dtsi"
#include "rp-gmac.dtsi"
#include "rp-mipi-ov13850-camera.dtsi"
//#include "rp-hdmiin.dtsi"
#include "rp-wifi-sdio.dtsi"
#include "rp-bt-uart0.dtsi"
#include "rp-sdcard-mmc1.dtsi"
#include "rp-lcd-hdmi.dtsi"
#include "rp-lcd-mipi-5-720-1280-v2-boxTP.dtsi"
#include "rp-lcd-mipi-5-720-1280-v2.dtsi"
//#include "rp-lcd-mipi-7-720-1280-jc070hd005-v1.dtsi"
//#include "rp-lcd-mipi-10-1200-1920-jc101fh107-v1.dtsi"
//#include "rp-lcd-mipi2lvds-gm8775-singlelvds-10-1024-600.dtsi"
//#include "rp-lcd-mipi2lvds-gm8775-duallvds-1920-1080.dtsi"
//#include "rp-box-lcd-edp-13.3-15.6-1920-1080.dtsi"
/ {
model = "rp-box-rk3399";
compatible = "rockchip,rk3399-excavator-linux", "rockchip,rk3399";
fan_gpio_control {
compatible = "fan_gpio_control";
gpio-pin = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
thermal-zone = "cpu-thermal";
threshold-temp = <60000>; //60C
running-time = <10000>; //10s
status = "okay";
};
rp_power{
status = "okay";
compatible = "rp_power";
rp_not_deep_sleep = <1>;
//pinctrl-0 = <&rp_power_gpio>;
/*
* #define GPIO_FUNCTION_OUTPUT 0
* #define GPIO_FUNCTION_INPUT 1
* #define GPIO_FUNCTION_IRQ 2
* #define GPIO_FUNCTION_FLASH 3
* #define GPIO_FUNCTION_OUTPUT_CTRL 4 //output and creat proc ctrl
*
* you can define the gpio function as above
* on gpio_function = <>;
*
*If you want to set the uboot to high level, add the lower properties
* regulator_uboot_on
*/
vdd_en { //vdd5v and vdd_io power en
gpio_num = <&gpio4 RK_PD6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
hub_rst { //usb hub reset pin
gpio_num = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
host_en { //usb2.0 and 3.0 host 5v power en
gpio_num = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
//fan { //fan en
// gpio_num = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
// gpio_function = <4>;
//regulator_uboot_on;
//};
vdd_3g { //vdd 3G power en
gpio_num = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
run_led { //LED for indicate system is runing
gpio_num = <&gpio4 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <3>;
regulator_uboot_on;
};
};
rp_gpio{
status = "okay";
compatible = "rp_gpio";
gpio3c0 {
gpio_num = <&gpio3 RK_PC0 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
/* gpio_event = <KEY_F14>; */ /** define this property if you want to report
* event such as KEY_F14, but this only works
* in case of gpio_function = <1>;
*/
};
gpio0a6 { //ir_rx
gpio_num = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio1b1 {
gpio_num = <&gpio1 RK_PB1 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio1b2 {
gpio_num = <&gpio1 RK_PB2 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio4c5 {
gpio_num = <&gpio4 RK_PC5 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio4d5 {
gpio_num = <&gpio4 RK_PD5 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio1c7 {
gpio_num = <&gpio1 RK_PC7 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio0b3 {
gpio_num = <&gpio0 RK_PB3 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
gpio1a2 {
gpio_num = <&gpio1 RK_PA2 GPIO_ACTIVE_LOW>;
gpio_function = <0>;
};
};
};
&spi2 {
status = "okay";
max-freq = <50000000>;
spi_test:spi_test@00 {
status = "okay";
compatible = "rockchip,spi_test_bus2_cs0";
id = <2>;
reg = <0>;
spi-max-frequency = <24000000>;
spi-cpha;
spi-cpol;
};
};
&io_domains {
status = "okay";
bt656-supply = <&vcc_1v8>; /* bt656_gpio2ab_ms */
audio-supply = <&vcca1v8_codec>; /* audio_gpio3d4a_ms */
sdmmc-supply = <&vcc_sdio>; /* sdmmc_gpio4b_ms */
gpio1830-supply = <&vcc_3v0>; /* gpio1833_gpio4cd_ms */
};
&pmu_io_domains {
status = "okay";
pmu1830-supply = <&vcc_1v8>; //king usb
};
&dsi {
pinctrl-names="default";
pinctrl-0=<&pwr_en>;
};
&i2s0 {
status = "okay";
};
&rk808 {
rtc {
/****** disabled rtc-rk808 for use hym8563 */
status = "disabled";
};
};
&i2c1 {
status = "okay";
rtc@51 {
status = "okay";
compatible = "haoyu,hym8563";
reg = <0x51>;
};
};
&gmac {
tx_delay = <0x25>;
rx_delay = <0x25>;
};
&uart0 {
status = "okay";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 0>, <&dmac_peri 1>;
};
//conflicts to ethernet
&uart1 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 2>, <&dmac_peri 3>;
};
//conflicts to debugger
&uart2 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 4>, <&dmac_peri 5>;
};
//conflicts to ethernet
&uart3 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 6>, <&dmac_peri 7>;
};
&uart4 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart4_xfer>;
dma-names = "tx", "rx";
dmas = <&dmac_peri 8>, <&dmac_peri 9>;
};
&fiq_debugger {
rockchip,serial-id = <2>; //uart2
rockchip,wake-irq = <0>;
rockchip,irq-mode-enable = <1>;
compatible = "rockchip,fiq-debugger";
rockchip,baudrate = <115200>;
pinctrl-names = "default";
pinctrl-0 = <&uart2c_xfer>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = <4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

45
rk3399/rp-bt-uart0.dtsi Executable file
View File

@@ -0,0 +1,45 @@
/ {
wireless-bluetooth {
compatible = "bluetooth-platdata";
clocks = <&rk808 1>;
clock-names = "ext_clock";
//wifi-bt-power-toggle;
uart_rts_gpios = <&gpio2 RK_PC3 GPIO_ACTIVE_LOW>; /* GPIO2_C3 */
pinctrl-names = "default", "rts_gpio";
pinctrl-0 = <&uart0_rts>, <&bt_reset_gpio>, <&bt_wake_gpio>, <&bt_irq_gpio>;
pinctrl-1 = <&uart0_gpios>;
//BT,power_gpio = <&gpio3 19 GPIO_ACTIVE_HIGH>; /* GPIOx_xx */
BT,reset_gpio = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>; /* GPIO0_B1 */
BT,wake_gpio = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>; /* GPIO2_D2 */
BT,wake_host_irq = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>; /* GPIO0_A4 */
status = "okay";
};
};
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_xfer &uart0_cts>;
status = "okay";
};
&pinctrl {
wireless-bluetooth {
uart0_gpios: uart0-gpios {
rockchip,pins =
<2 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>;
};
bt_reset_gpio: bt-reset-gpio {
rockchip,pins =
<0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
};
bt_wake_gpio: bt-wake-gpio {
rockchip,pins =
<2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
};
bt_irq_gpio: bt-irq-gpio {
rockchip,pins =
<0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_down>;
};
};
};

27
rk3399/rp-gmac.dtsi Executable file
View File

@@ -0,0 +1,27 @@
/ {
clkin_gmac: external-gmac-clock {
compatible = "fixed-clock";
clock-frequency = <125000000>;
clock-output-names = "clkin_gmac";
#clock-cells = <0>;
};
};
&gmac {
assigned-clocks = <&cru SCLK_RMII_SRC>;
assigned-clock-parents = <&clkin_gmac>;
clock_in_out = "input";
phy-supply = <&vcc_lan>;
phy-mode = "rgmii";
pinctrl-names = "default";
pinctrl-0 = <&rgmii_pins>;
snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
snps,reset-active-low;
snps,reset-delays-us = <0 10000 50000>;
tx_delay = <0x28>;
rx_delay = <0x11>;
status = "okay";
};

34
rk3399/rp-gpio-key.dtsi Executable file
View File

@@ -0,0 +1,34 @@
/ {
gpio_keys:gpio-keys {
status = "okay";
compatible = "gpio-keys";
#address-cells = <1>;
#size-cells = <0>;
autorepeat;
pinctrl-names = "default";
pinctrl-0 = <&pwrbtn>;
button@0 {
gpios = <&gpio0 5 GPIO_ACTIVE_LOW>;
linux,code = <KEY_POWER>;
label = "GPIO Key Power";
linux,input-type = <1>;
gpio-key,wakeup = <1>;
debounce-interval = <100>;
wakeup-source;
};
};
};
&pinctrl {
buttons {
pwrbtn: pwrbtn {
rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

103
rk3399/rp-hdmiin.dtsi Executable file
View File

@@ -0,0 +1,103 @@
/ {
ext_cam_clk: external-camera-clock {
compatible = "fixed-clock";
clock-frequency = <27000000>;
clock-output-names = "CLK_CAMERA_27MHZ";
#clock-cells = <0>;
};
};
&rkisp1_0 {
status = "okay";
port {
#address-cells = <1>;
#size-cells = <0>;
isp0_mipi_in: endpoint@0 {
reg = <0>;
remote-endpoint = <&dphy_rx0_out>;
};
};
};
&mipi_dphy_rx0 {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
mipi_in_ucam0: endpoint@1 {
reg = <1>;
remote-endpoint = <&ucam_out0>;
data-lanes = <1 2>;
};
};
port@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
dphy_rx0_out: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp0_mipi_in>;
};
};
};
};
&isp0_mmu {
status = "okay";
};
&i2c1 {
status = "okay";
tc358749x: tc358749x@f {
status = "disabled";
compatible = "toshiba,tc358749";
reg = <0xf>;
clocks = <&ext_cam_clk>;
clock-names = "refclk";
reset-gpios = <&gpio2 7 GPIO_ACTIVE_LOW>;
interrupt-parent = <&gpio2>;
interrupts = <12 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&hdmiin_gpios>;
port {
hdmiin_out0: endpoint {
// Unlinked mipi dphy rx0
// remote-endpoint = <&mipi_in_ucam0>;
data-lanes = <1 2 3 4>;
clock-noncontinuous;
link-frequencies =
/bits/ 64 <297000000>;
};
};
};
};
&pinctrl {
hdmiin {
hdmiin_gpios: hdmiin-gpios {
rockchip,pins =
<2 RK_PA5 RK_FUNC_GPIO &pcfg_output_high>,
<2 RK_PA6 RK_FUNC_GPIO &pcfg_output_high>,
<2 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>,
<2 RK_PB0 RK_FUNC_GPIO &pcfg_output_high>,
<2 RK_PB1 RK_FUNC_GPIO &pcfg_output_high>,
<2 RK_PB2 RK_FUNC_GPIO &pcfg_output_low>,
<2 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

View File

@@ -0,0 +1,293 @@
/ {
panel: panel {
compatible = "simple-panel";
backlight = <&backlight>;
power-supply = <&vcc3v3_sys>;
enable-gpios = <&gpio4 21 GPIO_ACTIVE_HIGH>;
prepare-delay-ms = <20>;
enable-delay-ms = <20>;
//reset = <&gpio1 0 GPIO_ACTIVE_HIGH>;
reset-delay-ms = <200>;
display-timings {
native-mode = <&timing0>;
timing0: timing0 {//EDP compatible with 13.3 and 15.6
clock-frequency = <150000000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <160>;
hsync-len = <32>;
hback-porch = <160>;
vfront-porch = <3>;
vsync-len = <5>;
vback-porch = <23>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <138000000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <48>;
hsync-len = <32>;
hback-porch = <80>;
vfront-porch = <3>;
vsync-len = <5>;
vback-porch = <23>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
panel_in: endpoint {
remote-endpoint = <&edp_out>;
};
};
};
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 0 25000 1>;
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 = <255>;
// enable-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "240";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
// secure-memory-region = <&secure_memory>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
//status = "okay";
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "fullscreen";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&pwm0 {
status = "okay";
};
&edp {
status = "okay";
force-hpd;
ports {
port@1 {
reg = <1>;
edp_out: endpoint {
remote-endpoint = <&panel_in>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&edp_in_vopl {
status = "disabled";
};
&edp_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&route_edp {
status = "okay";
connect = <&vopb_out_edp>;
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1920>;
gtp_resolution_y = <1080>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
// gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
43 80 07 38 04 0A 3D 00 01 06
28 08 55 32 03 05 00 00 00 00
00 00 06 18 1A 1E 14 95 35 FF
2D 2F A6 0F 00 00 00 01 03 2C
00 00 00 00 00 00 00 00 00 00
00 2D 5A 94 D0 42 00 08 00 04
79 30 00 6E 37 00 65 3F 00 5D
49 00 57 54 00 57 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 1D 1C 1B 1A 19 18 17 16
15 14 13 12 11 10 0F 0E 0D 0C
0B 0A 09 08 07 06 05 04 03 02
01 00 00 01 02 03 04 05 06 07
08 09 0A 0B 0C 0D 0E 0F 10 11
12 13 14 15 16 17 18 19 1B 1C
1D 1E 1F 20 21 22 23 24 25 26
27 28 29 2A 86 01
];
};
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,276 @@
/ {
panel: panel {
compatible = "simple-panel";
backlight = <&backlight>;
power-supply = <&vcc3v3_sys>;
enable-gpios = <&gpio4 21 GPIO_ACTIVE_HIGH>;
prepare-delay-ms = <20>;
enable-delay-ms = <20>;
//reset = <&gpio1 0 GPIO_ACTIVE_HIGH>;
reset-delay-ms = <200>;
display-timings {
native-mode = <&timing1>;
timing0: timing0 {//EDP 13.3
clock-frequency = <150000000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <12>;
hsync-len = <16>;
hback-porch = <48>;
vfront-porch = <8>;
vsync-len = <4>;
vback-porch = <8>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {// EDP 15.6 LP156WF6
clock-frequency = <138000000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <48>;
hsync-len = <32>;
hback-porch = <80>;
vfront-porch = <3>;
vsync-len = <5>;
vback-porch = <23>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
panel_in: endpoint {
remote-endpoint = <&edp_out>;
};
};
};
backlight: backlight {
status = "okay";
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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "160";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "fullscreen";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&pwm1 {
status = "okay";
};
&edp {
status = "okay";
force-hpd;
ports {
port@1 {
reg = <1>;
edp_out: endpoint {
remote-endpoint = <&panel_in>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&edp_in_vopl {
status = "disabled";
};
&edp_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&route_edp {
status = "okay";
connect = <&vopb_out_edp>;
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1920>;
gtp_resolution_y = <1080>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
64 80 07 38 04 0A 3D 00 01 C8 28 0F
55 37 03 05 00 00 00 00 00 00 00 18
1A 1E 14 90 30 AA 25 27 0F 0A 00 00
00 5A 03 11 00 00 00 00 00 00 00 00
00 25 00 19 37 94 D5 02 08 14 00 04
9B 1B 00 8E 1F 00 80 25 00 76 2B 00
6E 32 00 6E 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 10 00 00 00 00
00 00 00 00 19 18 17 16 15 14 11 10
0F 0E 0D 0C 09 08 07 06 05 04 01 00
00 00 00 00 00 00 00 00 00 00 00 02
04 06 07 08 0A 0C 0D 0E 0F 10 11 12
13 14 19 1B 1C 1E 1F 20 21 22 23 24
25 26 27 28 29 2A 00 00 00 00 00 00
00 00 00 00 B7 01];
};
};

79
rk3399/rp-lcd-hdmi.dtsi Executable file
View File

@@ -0,0 +1,79 @@
&hdmi {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&hdmi_i2c_xfer>;
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
rockchip,phy-table =
<74250000 0x8009 0x0004 0x0272>,
<165000000 0x802b 0x0004 0x0209>,
<297000000 0x8039 0x0005 0x028d>,
<594000000 0x8039 0x0000 0x00f6>,
<000000000 0x0000 0x0000 0x0000>;
};
&hdmi_sound {
status = "okay";
};
&i2s2 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "fullscreen";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&hdmi_in_vopl {
status = "disabled";
};
&hdmi_in_vopb {
status = "okay";
};

View File

@@ -0,0 +1,328 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "240";//320
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
//not_status_bar = "true";
default_launcher = "true";
//default_launcher = "false";
has_root = "true"; //true
//has_root = "false"; //false
usb_not_permission = "true";
usb_camera_only_front = "false";
//usb_camera_only_front = "true";
gps_use = "false";
gps_serial_port = "/dev/ttyS6"; /*
* UART*, please check board
* whether have this uart,
* otherwish system may not run
*/
primary_device = "DSI";
extend_device = "HDMI-A";
extend_rotate = "0";
rotation_efull = "false";
home_apk = "null";
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
// rockchip,lane-rate = <800>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
// MIPI_DSI_MODE_VIDEO_SYNC_PULSE)>;
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>; /** 7inch 720x1280 must this mode */
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <100>;
init-delay-ms = <100>;
enable-delay-ms = <120>;
disable-delay-ms = <50>;
unprepare-delay-ms = <20>;
width-mm = <68>;
height-mm = <121>;
panel-init-sequence = [
05 78 01 11
05 05 01 29
];
panel-exit-sequence = [
05 78 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <130000000>;
hactive = <1200>;
vactive = <1920>;
hback-porch = <30>;
hfront-porch = <60>;
vback-porch = <16>;
vfront-porch = <16>;
hsync-len = <4>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1200>;
gtp_resolution_y = <1920>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
49 20 03 00 05 0A 35 00 01 06 23 08
37 2D 03 05 00 00 00 00 00 00 04 17
19 1D 14 90 30 AA 53 55 0C 08 00 00
00 01 03 1C 00 00 00 00 00 00 00 00
00 00 00 3C 78 94 D0 42 00 08 00 04
8E 40 00 85 4A 00 7F 55 00 7B 61 00
7A 70 00 7B 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 19 18 17 16 15 14 11 10
0F 0E 0D 0C 09 08 07 06 05 04 01 00
FF FF FF FF FF FF FF FF FF FF 00 02
04 06 07 08 0A 0C 0D 0E 0F 10 11 12
13 14 2A 29 28 27 26 25 24 23 22 21
20 1F 1E 1C 1B 19 FF FF FF FF FF FF
FF FF FF FF 24 01];
};
};

View File

@@ -0,0 +1,328 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "240";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1920>;
gtp_resolution_y = <1200>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
//new
goodix,cfg-group0 = [
55 80 07 B0 04 0A 3D 00 01 08 28
05 50 32 03 05 00 00 00 00 00 00
00 18 1A 1E 14 8E 2F 99 17 15 31
0D 00 00 02 9B 03 1D 00 00 00 00
00 00 00 00 00 00 00 1E 78 94 C5
02 08 00 00 00 5B 22 00 4C 2D 00
41 3C 00 38 4F 00 32 69 00 32 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 01 04 05 06 07 08 09 0C
0D 0E 0F 10 11 14 15 16 17 FF FF
00 00 00 00 00 00 00 00 00 00 00
02 04 06 07 08 0A 0C 0D 0F 10 11
12 13 19 1B 1C 1E 1F 20 21 22 23
24 25 26 27 28 29 FF FF FF 00 00
00 00 00 00 00 00 00 00 6B 01];
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
//rockchip,lane-rate = <1000>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_HIGH>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
MIPI_DSI_MODE_VIDEO_SYNC_PULSE)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
dsi,lanes = <4>;
reset-delay-ms = <20>;
init-delay-ms = <20>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
display-timings {
native-mode = <&timing1>;
timing0: timing0 {
clock-frequency = <150000000>;
hactive = <1920>;
vactive = <1200>;
hback-porch = <60>;
hfront-porch = <16>;
vback-porch = <23>;
vfront-porch = <12>;
hsync-len = <20>;
vsync-len = <3>;
de-active = <0>;
hsync-active = <0>;
vsync-active = <0>;
pixelclk-active = <1>;
};
timing1: timing1{
clock-frequency = <140000000>;
hactive = <1920>;
vactive = <1200>;
hback-porch = <60>;
hfront-porch = <16>;
vback-porch = <23>;
vfront-porch = <12>;
hsync-len = <20>;
vsync-len = <3>;
de-active = <0>;
hsync-active = <0>;
vsync-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&route_dsi {
status = "okay";
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,598 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
rockchip,lane-rate = <480>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
//bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <20>;
init-delay-ms = <20>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
39 00 04 FF 98 81 03
//=========_1===========//
39 00 02 01 00
39 00 02 02 00
39 00 02 03 53
39 00 02 04 13
39 00 02 05 00
39 00 02 06 04
39 00 02 07 00
39 00 02 08 00
39 00 02 09 22
39 00 02 0a 22
39 00 02 0b 00
39 00 02 0c 01
39 00 02 0d 00
39 00 02 0e 00
39 00 02 0f 23
39 00 02 10 23
39 00 02 11 00
39 00 02 12 00
39 00 02 13 00
39 00 02 14 00
39 00 02 15 00
39 00 02 16 00
39 00 02 17 00
39 00 02 18 00
39 00 02 19 00
39 00 02 1a 00
39 00 02 1b 00
39 00 02 1c 00
39 00 02 1d 00
39 00 02 1e 44
39 00 02 1f 80
39 00 02 20 02
39 00 02 21 03
39 00 02 22 00
39 00 02 23 00
39 00 02 24 00
39 00 02 25 00
39 00 02 26 00
39 00 02 27 00
39 00 02 28 33
39 00 02 29 03
39 00 02 2a 00
39 00 02 2b 00
39 00 02 2c 00
39 00 02 2d 00
39 00 02 2e 00
39 00 02 2f 00
39 00 02 30 00
39 00 02 31 00
39 00 02 32 00
39 00 02 33 00
39 00 02 34 04
39 00 02 35 00
39 00 02 36 00
39 00 02 37 00
39 00 02 38 3C
39 00 02 39 00
39 00 02 3a 40
39 00 02 3b 40
39 00 02 3c 00
39 00 02 3d 00
39 00 02 3e 00
39 00 02 3f 00
39 00 02 40 00
39 00 02 41 00
39 00 02 42 00
39 00 02 43 00
39 00 02 44 00
//=========_2===========//
39 00 02 50 01
39 00 02 51 23
39 00 02 52 45
39 00 02 53 67
39 00 02 54 89
39 00 02 55 ab
39 00 02 56 01
39 00 02 57 23
39 00 02 58 45
39 00 02 59 67
39 00 02 5a 89
39 00 02 5b ab
39 00 02 5c cd
39 00 02 5d ef
//=========_3===========//
39 00 02 5e 11
39 00 02 5f 01
39 00 02 60 00
39 00 02 61 15
39 00 02 62 14
39 00 02 63 0C
39 00 02 64 0D
39 00 02 65 0E
39 00 02 66 0F
39 00 02 67 06
39 00 02 68 02
39 00 02 69 02
39 00 02 6a 02
39 00 02 6b 02
39 00 02 6c 02
39 00 02 6d 02
39 00 02 6e 08
39 00 02 6f 02
39 00 02 70 02
39 00 02 71 02
39 00 02 72 02
39 00 02 73 02
39 00 02 74 02
39 00 02 75 01
39 00 02 76 00
39 00 02 77 15
39 00 02 78 14
39 00 02 79 0C
39 00 02 7a 0D
39 00 02 7b 0E
39 00 02 7c 0F
39 00 02 7D 08
39 00 02 7E 02
39 00 02 7F 02
39 00 02 80 02
39 00 02 81 02
39 00 02 82 02
39 00 02 83 02
39 00 02 84 06
39 00 02 85 02
39 00 02 86 02
39 00 02 87 02
39 00 02 88 02
39 00 02 89 02
39 00 02 8A 02
//CMD_Page
39 00 04 FF 98 81 04
39 00 02 6C 15
39 00 02 6E 3B
39 00 02 6F 73
39 00 02 3A 24
39 00 02 8D 14
39 00 02 87 BA
39 00 02 26 76
39 00 02 B2 D1
39 00 02 B5 27
39 00 02 31 75
39 00 02 30 03
39 00 02 3B 98
39 00 02 35 1f
39 00 02 33 14
39 00 02 7A 0F
39 00 02 38 02
39 00 02 39 00
//CMD_Page
39 00 04 FF 98 81 01
39 00 02 22 0A
39 00 02 31 0A
39 00 02 35 07
39 00 02 52 00
39 00 02 53 5A
39 00 02 54 00
39 00 02 55 59
39 00 02 50 83
39 00 02 51 80
39 00 02 60 20
39 00 02 61 01
39 00 02 62 07
39 00 02 63 00
//GammaP
39 00 02 A0 08
39 00 02 A1 0F
39 00 02 A2 15
39 00 02 A3 0E
39 00 02 A4 0D
39 00 02 A5 1B
39 00 02 A6 0F
39 00 02 A7 14
39 00 02 A8 33
39 00 02 A9 17
39 00 02 AA 23
39 00 02 AB 3F
39 00 02 AC 22
39 00 02 AD 24
39 00 02 AE 59
39 00 02 AF 2B
39 00 02 B0 2E
39 00 02 B1 4C
39 00 02 B2 5C
39 00 02 B3 33
//GammaN
39 00 02 C0 08
39 00 02 C1 0F
39 00 02 C2 15
39 00 02 C3 0E
39 00 02 C4 0D
39 00 02 C5 1B
39 00 02 C6 0F
39 00 02 C7 14
39 00 02 C8 33
39 00 02 C9 17
39 00 02 CA 23
39 00 02 CB 3F
39 00 02 CC 22
39 00 02 CD 24
39 00 02 CE 59
39 00 02 CF 2B
39 00 02 D0 2E
39 00 02 D1 4C
39 00 02 D2 5C
39 00 02 D3 33
//CMD_Page
39 00 04 FF 98 81 00
05 78 01 11 //sleep out
05 00 01 29 //display on
05 00 01 35 //TE on
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <76000000>;
hactive = <800>;
vactive = <1280>;
hback-porch = <60>;
hfront-porch = <60>;
vback-porch = <30>;
vfront-porch = <20>;
hsync-len = <30>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <148000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
hsync-len = <20>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <1>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <800>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
#if 0
/* old touchscreen sensor_id0, reserve for some customer maybe using */
goodix,cfg-group0 = [
00 20 03 00 05 0A 05 00 01 08
28 05 50 32 03 05 00 00 00 00
00 00 00 00 00 00 00 90 30 AA
17 15 31 0D 00 00 01 B9 04 25
00 00 00 00 00 00 00 00 00 00
00 0F 23 94 C5 02 07 00 00 04
9F 10 00 8B 13 00 7C 16 00 6B
1B 00 60 20 00 60 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 19 18 17 16 15 14 11 10
0F 0E 0D 0C 09 08 07 06 05 04
01 00 00 00 00 00 00 00 00 00
00 00 2A 29 28 27 26 25 24 23
22 21 20 1F 1E 1C 1B 19 00 02
04 06 07 08 0A 0C 0D 0E 0F 10
11 12 13 14 00 00 00 00 00 00
00 00 00 00 96 01
];
#endif
/** ic 9271_1020 sensor_id0, v3 add 20211104 */
goodix,cfg-group0 = [
59 20 03 00 05 0A 05 00 01 08
28 05 5A 46 03 05 00 00 00 00
00 00 00 17 19 1B 14 8E 2E 99
37 39 D3 07 00 00 01 81 02 2D
00 00 00 00 00 00 00 00 00 00
00 28 78 94 C5 02 07 00 00 04
9A 2C 00 80 37 00 6B 45 00 5C
56 00 50 6C 00 50 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 17 16 15 14 11 10 0F 0E
0D 0C 09 08 07 06 05 04 01 00
FF FF 00 00 00 00 00 00 00 00
00 00 00 02 04 06 07 08 0A 0C
0D 0F 10 11 12 28 27 26 25 24
23 22 21 20 1F 1E 1C 1B 19 13
FF FF FF FF 00 00 00 00 00 00
00 00 00 00 BF 01
];
/* touchscreen sensor_id2 */
goodix,cfg-group2 = [
00 20 03 00 05 0A 35 00 00
05 28 08 55 41 03 05 00 00
00 00 00 00 00 1A 1C 1E 14
8E 2E 99 14 16 D3 07 00 00
00 9B 02 2D 00 00 00 00 00
00 00 00 00 00 00 0F 23 94
D5 02 07 00 00 04 9D 10 00
86 13 00 75 16 00 61 1B 00
53 20 00 53 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 17 16 15 14 11
10 0F 0E 0D 0C 09 08 07 06
05 04 01 00 FF FF 00 00 00
00 00 00 00 00 00 00 00 02
04 06 07 08 0A 0C 0D 0F 10
11 12 13 28 27 26 25 24 23
22 21 20 1F 1E 1C 1B 19 FF
FF FF FF 00 00 00 00 00 00
00 00 00 00 4D 01
];
};
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,318 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
//rockchip,lane-rate = <480>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
//bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <20>;
init-delay-ms = <20>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
05 78 01 11 //sleep out
05 20 01 29 //display on
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <82000000>;
hactive = <800>;
vactive = <1280>;
hback-porch = <100>;
hfront-porch = <100>;
vback-porch = <30>;
vfront-porch = <20>;
hsync-len = <30>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <148000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
hsync-len = <20>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <1>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <800>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group2 = [
49 20 03 00 05 0A 35 00 01 06 23 08
37 2D 03 05 00 00 00 00 00 00 04 17
19 1D 14 90 30 AA 53 55 0C 08 00 00
00 01 03 1C 00 00 00 00 00 00 00 00
00 00 00 3C 78 94 D0 42 00 08 00 04
8E 40 00 85 4A 00 7F 55 00 7B 61 00
7A 70 00 7B 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 19 18 17 16 15 14 11 10
0F 0E 0D 0C 09 08 07 06 05 04 01 00
FF FF FF FF FF FF FF FF FF FF 00 02
04 06 07 08 0A 0C 0D 0E 0F 10 11 12
13 14 2A 29 28 27 26 25 24 23 22 21
20 1F 1E 1C 1B 19 FF FF FF FF FF FF
FF FF FF FF 24 01
];
};
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,583 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "160";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <800>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
/* old touchscreen sensor_id0 */
goodix,cfg-group0 = [
00 20 03 00 05 0A 05 00 01 08
28 05 50 32 03 05 00 00 00 00
00 00 00 00 00 00 00 90 30 AA
17 15 31 0D 00 00 01 B9 04 25
00 00 00 00 00 00 00 00 00 00
00 0F 23 94 C5 02 07 00 00 04
9F 10 00 8B 13 00 7C 16 00 6B
1B 00 60 20 00 60 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 19 18 17 16 15 14 11 10
0F 0E 0D 0C 09 08 07 06 05 04
01 00 00 00 00 00 00 00 00 00
00 00 2A 29 28 27 26 25 24 23
22 21 20 1F 1E 1C 1B 19 00 02
04 06 07 08 0A 0C 0D 0E 0F 10
11 12 13 14 00 00 00 00 00 00
00 00 00 00 96 01
];
/* new touchscreen sensor_id2 */
goodix,cfg-group2 = [
00 20 03 00 05 0A 35 00 00
05 28 08 55 41 03 05 00 00
00 00 00 00 00 1A 1C 1E 14
8E 2E 99 14 16 D3 07 00 00
00 9B 02 2D 00 00 00 00 00
00 00 00 00 00 00 0F 23 94
D5 02 07 00 00 04 9D 10 00
86 13 00 75 16 00 61 1B 00
53 20 00 53 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 17 16 15 14 11
10 0F 0E 0D 0C 09 08 07 06
05 04 01 00 FF FF 00 00 00
00 00 00 00 00 00 00 00 02
04 06 07 08 0A 0C 0D 0F 10
11 12 13 28 27 26 25 24 23
22 21 20 1F 1E 1C 1B 19 FF
FF FF FF 00 00 00 00 00 00
00 00 00 00 4D 01
];
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
prepare-delay-ms = <100>;
reset-delay-ms = <10>;
init-delay-ms = <100>;
enable-delay-ms = <120>;
disable-delay-ms = <50>;
unprepare-delay-ms = <20>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
15 00 02 E0 00
15 00 02 E1 93
15 00 02 E2 65
15 00 02 E3 F8
15 00 02 E0 04
15 00 02 2D 03
15 00 02 E0 00
15 00 02 80 03
15 00 02 70 02
15 00 02 71 23
15 00 02 72 06
15 00 02 E0 01
15 00 02 00 00
15 00 02 01 66
15 00 02 03 00
15 00 02 04 6D
15 00 02 17 00
15 00 02 18 BF
15 00 02 19 00
15 00 02 1A 00
15 00 02 1B BF
15 00 02 1C 00
15 00 02 1F 3E
15 00 02 20 28
15 00 02 21 28
15 00 02 22 0E
15 00 02 37 09
15 00 02 38 04
15 00 02 39 08
15 00 02 3A 12
15 00 02 3C 78
15 00 02 3D FF
15 00 02 3E FF
15 00 02 3F 7F
15 00 02 40 06
15 00 02 41 A0
15 00 02 55 0F
15 00 02 56 01
15 00 02 57 69
15 00 02 58 0A
15 00 02 59 0A
15 00 02 5A 29
15 00 02 5B 15
15 00 02 5D 7C
15 00 02 5E 65
15 00 02 5F 55
15 00 02 60 49
15 00 02 61 44
15 00 02 62 35
15 00 02 63 3A
15 00 02 64 23
15 00 02 65 3D
15 00 02 66 3C
15 00 02 67 3D
15 00 02 68 5D
15 00 02 69 4D
15 00 02 6A 56
15 00 02 6B 48
15 00 02 6C 45
15 00 02 6D 38
15 00 02 6E 25
15 00 02 6F 00
15 00 02 70 7C
15 00 02 71 65
15 00 02 72 55
15 00 02 73 49
15 00 02 74 44
15 00 02 75 35
15 00 02 76 3A
15 00 02 77 23
15 00 02 78 3D
15 00 02 79 3C
15 00 02 7A 3D
15 00 02 7B 5D
15 00 02 7C 4D
15 00 02 7D 56
15 00 02 7E 48
15 00 02 7F 45
15 00 02 80 38
15 00 02 81 25
15 00 02 82 00
15 00 02 E0 02
15 00 02 00 1E
15 00 02 01 1E
15 00 02 02 41
15 00 02 03 41
15 00 02 04 43
15 00 02 05 43
15 00 02 06 1F
15 00 02 07 1F
15 00 02 08 1F
15 00 02 09 1F
15 00 02 0A 1E
15 00 02 0B 1E
15 00 02 0C 1F
15 00 02 0D 47
15 00 02 0E 47
15 00 02 0F 45
15 00 02 10 45
15 00 02 11 4B
15 00 02 12 4B
15 00 02 13 49
15 00 02 14 49
15 00 02 15 1F
15 00 02 16 1E
15 00 02 17 1E
15 00 02 18 40
15 00 02 19 40
15 00 02 1A 42
15 00 02 1B 42
15 00 02 1C 1F
15 00 02 1D 1F
15 00 02 1E 1F
15 00 02 1F 1f
15 00 02 20 1E
15 00 02 21 1E
15 00 02 22 1f
15 00 02 23 46
15 00 02 24 46
15 00 02 25 44
15 00 02 26 44
15 00 02 27 4A
15 00 02 28 4A
15 00 02 29 48
15 00 02 2A 48
15 00 02 2B 1f
15 00 02 2C 1F
15 00 02 2D 1F
15 00 02 2E 42
15 00 02 2F 42
15 00 02 30 40
15 00 02 31 40
15 00 02 32 1E
15 00 02 33 1E
15 00 02 34 1F
15 00 02 35 1F
15 00 02 36 1E
15 00 02 37 1E
15 00 02 38 1F
15 00 02 39 48
15 00 02 3A 48
15 00 02 3B 4A
15 00 02 3C 4A
15 00 02 3D 44
15 00 02 3E 44
15 00 02 3F 46
15 00 02 40 46
15 00 02 41 1F
15 00 02 42 1F
15 00 02 43 1F
15 00 02 44 43
15 00 02 45 43
15 00 02 46 41
15 00 02 47 41
15 00 02 48 1E
15 00 02 49 1E
15 00 02 4A 1E
15 00 02 4B 1F
15 00 02 4C 1E
15 00 02 4D 1E
15 00 02 4E 1F
15 00 02 4F 49
15 00 02 50 49
15 00 02 51 4B
15 00 02 52 4B
15 00 02 53 45
15 00 02 54 45
15 00 02 55 47
15 00 02 56 47
15 00 02 57 1F
15 00 02 58 10
15 00 02 59 00
15 00 02 5A 00
15 00 02 5B 30
15 00 02 5C 02
15 00 02 5D 40
15 00 02 5E 01
15 00 02 5F 02
15 00 02 60 30
15 00 02 61 01
15 00 02 62 02
15 00 02 63 6A
15 00 02 64 6A
15 00 02 65 05
15 00 02 66 12
15 00 02 67 74
15 00 02 68 04
15 00 02 69 6A
15 00 02 6A 6A
15 00 02 6B 08
15 00 02 6C 00
15 00 02 6D 06
15 00 02 6E 00
15 00 02 6F 88
15 00 02 70 00
15 00 02 71 00
15 00 02 72 06
15 00 02 73 7B
15 00 02 74 00
15 00 02 75 07
15 00 02 76 00
15 00 02 77 5D
15 00 02 78 17
15 00 02 79 1F
15 00 02 7A 00
15 00 02 7B 00
15 00 02 7C 00
15 00 02 7D 03
15 00 02 7E 7B
15 00 02 E0 04
15 00 02 2B 2B
15 00 02 2E 44
15 00 02 E0 01
15 00 02 0E 01
15 00 02 E0 03
15 00 02 98 2F
15 00 02 E0 00
15 00 02 E6 02
15 00 02 E7 02
05 78 01 11
05 05 01 29
15 0a 02 35 00
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <68000000>;
hactive = <800>;
vactive = <1280>;
hback-porch = <18>;
hfront-porch = <18>;
vback-porch = <8>;
vfront-porch = <24>;
hsync-len = <18>;
vsync-len = <4>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <148000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
hsync-len = <20>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <1>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<6 5 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,341 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "270";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "190";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +1 //Africa/Casablanca = +0;
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
/*
* UART*, please check board
* whether have this uart,
* otherwish system may not run
*/
gps_serial_port = "/dev/ttyS4";
primary_device = "DSI";
extend_device = "HDMI-A";
extend_rotate = "0";
rotation_efull = "true";
home_apk = "null";
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
// status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
// rockchip,lane-rate = <410>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
// MIPI_DSI_MODE_VIDEO_SYNC_PULSE)>;
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>; /** 7inch 720x1280 must this mode */
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <100>;
init-delay-ms = <100>;
enable-delay-ms = <120>;
disable-delay-ms = <50>;
unprepare-delay-ms = <20>;
width-mm = <68>;
height-mm = <121>;
panel-init-sequence = [
//test
05 78 01 01
39 00 04 B9 F1 12 83
39 00 1C BA 33 81 05 F9 0E 0E 20 00 00 00 00 00 00 00 44 25 00 91 0A 00 00 02 4F D1 00 00 37
39 00 02 B8 26
39 00 04 BF 02 10 00
39 00 0B B3 07 0B 1E 1E 03 FF 00 00 00 00
39 00 0A C0 73 73 50 50 00 00 08 70 00
39 00 02 BC 46
39 00 02 CC 0B
39 00 02 B4 80
39 00 04 B2 C8 12 A0
39 00 0F E3 07 07 0B 0B 03 0B 00 00 00 00 FF 80 C0 10
39 00 0D C1 53 00 32 32 77 F1 FF FF CC CC 77 77
39 00 03 B5 09 09
39 00 03 B6 B7 B7
39 00 40 E9 C2 10 0A 00 00 81 80 12 30 00 37 86 81 80 37 18 00 05 00 00 00 00 00 05 00 00 00 00 F8 BA 46 02 08 28 88 88 88 88 88 F8 BA 57 13 18 38 88 88 88 88 88 00 00 00 03 00 00 00 00 00 00 00 00 00
39 00 3E EA 07 12 01 01 02 3C 00 00 00 00 00 00 8F BA 31 75 38 18 88 88 88 88 88 8F BA 20 64 28 08 88 88 88 88 88 23 10 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
39 00 23 E0 00 02 04 1A 23 3F 2C 28 05 09 0B 10 11 10 12 12 19 00 02 04 1A 23 3F 2C 28 05 09 0B 10 11 10 12 12 19
05 ff 01 11 ////Sleep Out
05 32 01 29 ///Display On
];
panel-exit-sequence = [
05 78 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <60000000>;
hactive = <720>;
vactive = <1280>;
hback-porch = <40>;
hfront-porch = <40>;
vback-porch = <11>;
vfront-porch = <16>;
hsync-len = <10>;
vsync-len = <3>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <720>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_FALLING>;
goodix,cfg-group0 = [
4D D0 02 00 05 05 35 00 01 08 32
08 5A 3C 03 05 00 00 00 00 00 00
00 18 1A 1E 14 89 29 0A 55 57 B5
06 00 00 00 41 22 10 00 01 00 0F
00 2A 00 00 19 50 32 3C 78 94 D5
02 08 00 00 04 A2 40 00 8F 4A 00
80 55 00 73 61 00 67 70 00 67 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00
00 00 02 04 06 08 0A 0C 0E 10 12
14 FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF 22
21 20 1F 1E 1D 1C 18 16 00 02 04
06 08 0A 0F 10 12 FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF 8D 01
];
};
};

View File

@@ -0,0 +1,339 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "270";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "190";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +1 //Africa/Casablanca = +0;
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
/*
* UART*, please check board
* whether have this uart,
* otherwish system may not run
*/
gps_serial_port = "/dev/ttyS4";
primary_device = "DSI";
extend_device = "HDMI-A";
extend_rotate = "0";
rotation_efull = "true";
home_apk = "null";
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
// status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
// rockchip,lane-rate = <410>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
// MIPI_DSI_MODE_VIDEO_SYNC_PULSE)>;
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>; /** 7inch 720x1280 must this mode */
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <100>;
init-delay-ms = <100>;
enable-delay-ms = <120>;
disable-delay-ms = <50>;
unprepare-delay-ms = <20>;
width-mm = <68>;
height-mm = <121>;
panel-init-sequence = [
//test
05 78 01 01
39 00 04 B9 F1 12 83
39 00 1C BA 33 81 05 F9 0E 0E 20 00 00 00 00 00 00 00 44 25 00 91 0A 00 00 02 4F D1 00 00 37
39 00 02 B8 26
39 00 04 BF 02 10 00
39 00 0B B3 07 0B 1E 1E 03 FF 00 00 00 00
39 00 0A C0 73 73 50 50 00 00 08 70 00
39 00 02 BC 46
39 00 02 CC 0B
39 00 02 B4 80
39 00 04 B2 C8 12 A0
39 00 0F E3 07 07 0B 0B 03 0B 00 00 00 00 FF 80 C0 10
39 00 0D C1 53 00 32 32 77 F1 FF FF CC CC 77 77
39 00 03 B5 09 09
39 00 03 B6 B7 B7
39 00 40 E9 C2 10 0A 00 00 81 80 12 30 00 37 86 81 80 37 18 00 05 00 00 00 00 00 05 00 00 00 00 F8 BA 46 02 08 28 88 88 88 88 88 F8 BA 57 13 18 38 88 88 88 88 88 00 00 00 03 00 00 00 00 00 00 00 00 00
39 00 3E EA 07 12 01 01 02 3C 00 00 00 00 00 00 8F BA 31 75 38 18 88 88 88 88 88 8F BA 20 64 28 08 88 88 88 88 88 23 10 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
39 00 23 E0 00 02 04 1A 23 3F 2C 28 05 09 0B 10 11 10 12 12 19 00 02 04 1A 23 3F 2C 28 05 09 0B 10 11 10 12 12 19
05 ff 01 11 ////Sleep Out
05 32 01 29 ///Display On
];
panel-exit-sequence = [
05 78 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <60000000>;
hactive = <720>;
vactive = <1280>;
hback-porch = <40>;
hfront-porch = <40>;
vback-porch = <11>;
vfront-porch = <16>;
hsync-len = <10>;
vsync-len = <3>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <720>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_FALLING>;
goodix,cfg-group0 = [
46 D0 02 00 05 05 35 01 01 08 1E 0F 5A 3C
03 05 00 00 00 00 11 11 00 19 1B 1E 14 89
29 0A 41 43 D3 07 00 00 00 9A 02 11 00 01
05 00 00 00 00 09 11 00 00 36 4A 94 45 00
00 00 00 00 94 37 00 8B 3B 00 83 3F 00 7C
43 00 76 47 00 76 10 30 48 00 F0 4A 3A FF
FF 27 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 0A 0C 0E 10 12 14 16 18 1A 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 0E 0C 0A 08 06 05 04 02 00 1D 1E 1F
20 22 24 28 29 2A 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 84 01];
};
};

View File

@@ -0,0 +1,569 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <720>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
46 D0 02 00 05 05 35 01 01 08 1E 0F 5A 3C
03 05 00 00 00 00 11 11 00 19 1B 1E 14 89
29 0A 41 43 D3 07 00 00 00 9A 02 11 00 01
05 00 00 00 00 09 11 00 00 36 4A 94 45 00
00 00 00 00 94 37 00 8B 3B 00 83 3F 00 7C
43 00 76 47 00 76 10 30 48 00 F0 4A 3A FF
FF 27 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 0A 0C 0E 10 12 14 16 18 1A 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 0E 0C 0A 08 06 05 04 02 00 1D 1E 1F
20 22 24 28 29 2A 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 84 01];
goodix,cfg-group1 = [
46 D0 02 00 05 05 35 01 01 08 1E 0F 5A 3C
03 05 00 00 00 00 11 11 00 19 1B 1E 14 89
29 0A 41 43 D3 07 00 00 00 9A 02 11 00 01
05 00 00 00 00 09 11 00 00 36 4A 94 45 00
00 00 00 00 94 37 00 8B 3B 00 83 3F 00 7C
43 00 76 47 00 76 10 30 48 00 F0 4A 3A FF
FF 27 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
08 0A 0C 0E 10 12 14 16 18 1A 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 0E 0C 0A 08 06 05 04 02 00 1D 1E 1F
20 22 24 28 29 2A 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 84 01];
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
// rockchip,lane-rate = <410>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
MIPI_DSI_MODE_VIDEO_SYNC_PULSE)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <20>;
init-delay-ms = <20>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
39 00 02 FE 01
39 00 02 24 00
39 00 02 25 53
39 00 02 26 00
39 00 02 27 0A
39 00 02 29 0A
39 00 02 2B E5
39 00 02 16 52
39 00 02 2F 54
39 00 02 34 59
39 00 02 1B 50
39 00 02 12 02
39 00 02 1A 06
39 00 02 46 5F
39 00 02 52 70
39 00 02 53 00
39 00 02 54 70
39 00 02 55 00
39 00 02 5F 13
39 00 02 FE 03
39 00 02 00 05
39 00 02 01 16
39 00 02 02 0B
39 00 02 03 0F
39 00 02 04 7D
39 00 02 05 00
39 00 02 06 50
39 00 02 07 05
39 00 02 08 16
39 00 02 09 0D
39 00 02 0A 11
39 00 02 0B 7D
39 00 02 0C 00
39 00 02 0D 50
39 00 02 0E 07
39 00 02 0F 08
39 00 02 10 01
39 00 02 11 02
39 00 02 12 00
39 00 02 13 7D
39 00 02 14 00
39 00 02 15 85
39 00 02 16 08
39 00 02 17 03
39 00 02 18 04
39 00 02 19 05
39 00 02 1A 06
39 00 02 1B 00
39 00 02 1C 7D
39 00 02 1D 00
39 00 02 1E 85
39 00 02 1F 08
39 00 02 20 00
39 00 02 21 00
39 00 02 22 00
39 00 02 23 00
39 00 02 24 00
39 00 02 25 00
39 00 02 26 00
39 00 02 27 00
39 00 02 28 00
39 00 02 29 00
39 00 02 2A 07
39 00 02 2B 08
39 00 02 2D 01
39 00 02 2F 02
39 00 02 30 00
39 00 02 31 40
39 00 02 32 05
39 00 02 33 08
39 00 02 34 54
39 00 02 35 7D
39 00 02 36 00
39 00 02 37 03
39 00 02 38 04
39 00 02 39 05
39 00 02 3A 06
39 00 02 3B 00
39 00 02 3D 40
39 00 02 3F 05
39 00 02 40 08
39 00 02 41 54
39 00 02 42 7D
39 00 02 43 00
39 00 02 44 00
39 00 02 45 00
39 00 02 46 00
39 00 02 47 00
39 00 02 48 00
39 00 02 49 00
39 00 02 4A 00
39 00 02 4B 00
39 00 02 4C 00
39 00 02 4D 00
39 00 02 4E 00
39 00 02 4F 00
39 00 02 50 00
39 00 02 51 00
39 00 02 52 00
39 00 02 53 00
39 00 02 54 00
39 00 02 55 00
39 00 02 56 00
39 00 02 58 00
39 00 02 59 00
39 00 02 5A 00
39 00 02 5B 00
39 00 02 5C 00
39 00 02 5D 00
39 00 02 5E 00
39 00 02 5F 00
39 00 02 60 00
39 00 02 61 00
39 00 02 62 00
39 00 02 63 00
39 00 02 64 00
39 00 02 65 00
39 00 02 66 00
39 00 02 67 00
39 00 02 68 00
39 00 02 69 00
39 00 02 6A 00
39 00 02 6B 00
39 00 02 6C 00
39 00 02 6D 00
39 00 02 6E 00
39 00 02 6F 00
39 00 02 70 00
39 00 02 71 00
39 00 02 72 20
39 00 02 73 00
39 00 02 74 08
39 00 02 75 08
39 00 02 76 08
39 00 02 77 08
39 00 02 78 08
39 00 02 79 08
39 00 02 7A 00
39 00 02 7B 00
39 00 02 7C 00
39 00 02 7D 00
39 00 02 7E BF
39 00 02 7F 3F
39 00 02 80 3F
39 00 02 81 3F
39 00 02 82 3F
39 00 02 83 3F
39 00 02 84 3F
39 00 02 85 02
39 00 02 86 06
39 00 02 87 3F
39 00 02 88 14
39 00 02 89 10
39 00 02 8A 16
39 00 02 8B 12
39 00 02 8C 08
39 00 02 8D 0C
39 00 02 8E 0A
39 00 02 8F 0E
39 00 02 90 00
39 00 02 91 04
39 00 02 92 3F
39 00 02 93 3F
39 00 02 94 3F
39 00 02 95 3F
39 00 02 96 05
39 00 02 97 01
39 00 02 98 0F
39 00 02 99 0B
39 00 02 9A 0D
39 00 02 9B 09
39 00 02 9C 13
39 00 02 9D 17
39 00 02 9E 11
39 00 02 9F 15
39 00 02 A0 3F
39 00 02 A2 07
39 00 02 A3 03
39 00 02 A4 3F
39 00 02 A5 3F
39 00 02 A6 3F
39 00 02 A7 3F
39 00 02 A9 3F
39 00 02 AA 3F
39 00 02 AB 3F
39 00 02 AC 3F
39 00 02 AD 3F
39 00 02 AE 3F
39 00 02 AF 3F
39 00 02 B0 3F
39 00 02 B1 3F
39 00 02 B2 3F
39 00 02 B3 05
39 00 02 B4 01
39 00 02 B5 3F
39 00 02 B6 17
39 00 02 B7 13
39 00 02 B8 15
39 00 02 B9 11
39 00 02 BA 0F
39 00 02 BB 0B
39 00 02 BC 0D
39 00 02 BD 09
39 00 02 BE 07
39 00 02 BF 03
39 00 02 C0 3F
39 00 02 C1 3F
39 00 02 C2 3F
39 00 02 C3 3F
39 00 02 C4 02
39 00 02 C5 06
39 00 02 C6 08
39 00 02 C7 0C
39 00 02 C8 0A
39 00 02 C9 0E
39 00 02 CA 10
39 00 02 CB 14
39 00 02 CC 12
39 00 02 CD 16
39 00 02 CE 3F
39 00 02 CF 00
39 00 02 D0 04
39 00 02 D1 3F
39 00 02 D2 3F
39 00 02 D3 3F
39 00 02 D4 3F
39 00 02 D5 3F
39 00 02 D6 3F
39 00 02 D7 3F
39 00 02 DC 02
39 00 02 DE 12
39 00 02 FE 0E
39 00 02 01 75
39 00 02 FE 04
39 00 02 60 00
39 00 02 61 08
39 00 02 62 0E
39 00 02 63 0D
39 00 02 64 05
39 00 02 65 10
39 00 02 66 0E
39 00 02 67 0A
39 00 02 68 16
39 00 02 69 0C
39 00 02 6A 10
39 00 02 6B 07
39 00 02 6C 0E
39 00 02 6D 13
39 00 02 6E 0C
39 00 02 6F 00
39 00 02 70 00
39 00 02 71 08
39 00 02 72 0E
39 00 02 73 0D
39 00 02 74 05
39 00 02 75 10
39 00 02 76 0E
39 00 02 77 0A
39 00 02 78 16
39 00 02 79 0C
39 00 02 7A 10
39 00 02 7B 07
39 00 02 7C 0E
39 00 02 7D 13
39 00 02 7E 0C
39 78 02 7F 00
39 00 02 FE 00
05 78 01 11
05 78 01 29
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <60000000>;
hactive = <720>;
vactive = <1280>;
hback-porch = <30>;
hfront-porch = <64>;
vback-porch = <16>;
vfront-porch = <16>;
hsync-len = <4>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopb {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,315 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1080>;
gtp_resolution_y = <1920>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
47 38 04 80 07 0A 05 00
01 08 28 05 50 32 03 05
00 00 00 00 00 00 00 00
00 00 00 8B 2B 0D 17 15
31 0D 00 00 00 9A 03 2D
00 00 00 00 00 03 64 32
00 00 00 0F 2C 94 C5 02
07 00 00 04 9E 10 00 82
14 00 6B 19 00 57 20 00
4A 27 00 4A 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
1A 18 16 14 12 10 0E 0C
0A 08 06 04 02 FF 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 02
04 06 08 0A 0C 0F 10 12
13 26 24 22 21 20 1F 1E
1D 1C 18 16 FF FF FF FF
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
8C 01
];
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
// rockchip,lane-rate = <480>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
prepare-delay-ms = <100>;
reset-delay-ms = <10>;
init-delay-ms = <100>;
enable-delay-ms = <120>;
disable-delay-ms = <50>;
unprepare-delay-ms = <20>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
15 00 02 FE 00
15 00 02 C2 08
15 00 02 35 00
15 00 02 53 20
15 00 02 51 FF
05 78 01 29
05 78 01 11
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <138000000>;
hactive = <1080>;
vactive = <1920>;
hback-porch = <30>;
hfront-porch = <36>;
vback-porch = <6>;
vfront-porch = <6>;
hsync-len = <4>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,305 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt1x";
reg = <0x5d>;
goodix,rst-gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>;
goodix,irq-gpio = <&gpio1 22 IRQ_TYPE_EDGE_FALLING>;
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
rockchip,lane-rate = <480>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
prepare-delay-ms = <100>;
reset-delay-ms = <10>;
init-delay-ms = <100>;
enable-delay-ms = <120>;
disable-delay-ms = <50>;
unprepare-delay-ms = <20>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
39 00 04 B9 F1 12 83
39 00 1C BA 33 81 05 F9 0E 0E 20 00 00 00 00 00 00 00 44 25 00 91 0A 00 00 02 4F D1 00 00 37
39 00 05 B8 26 22 20 03
39 00 04 BF 02 11 00
39 00 0B B3 0C 10 0A 50 03 FF 00 00 00 00
39 00 0A C0 73 73 50 50 00 00 08 70 00
39 00 02 BC 46
39 00 02 CC 0B
39 00 02 B4 80
39 00 04 B2 C8 12 30
39 00 0F E3 07 07 0B 0B 03 0B 00 00 00 00 FF 00 C0 10
39 00 0D C1 53 00 1E 1E 77 C1 FF FF AF AF 7F 7F
39 00 03 B5 07 07
39 00 03 B6 70 70
39 00 07 C6 00 00 FF FF 01 FF
39 00 40 E9 C2 10 05 04 FE 02 81 12 31 45 3F 83 12 91 3B 2A 08 05 00 00 00 00 08 05 00 00 00 00 FF 02 46 02 48 68 88 88 88 80 88 FF 13 57 13 58 78 88 88 88 81 88 00 00 00 00 00 12 B1 3B 00 00 00 00 00
39 00 3E EA 00 1A 00 00 00 00 00 00 00 00 00 00 FF 31 75 31 18 78 88 88 88 85 88 FF 20 64 20 08 68 88 88 88 84 88 20 10 00 00 54 00 00 00 00 00 00 00 C0 00 00 0C 00 00 00 00 30 02 A1 00 00 00 00
39 00 23 E0 00 05 07 1A 39 3F 33 2C 06 0B 0D 11 13 12 14 10 1A 00 05 07 1A 39 3F 33 2C 06 0B 0D 11 13 12 14 10 1A
05 ff 01 11
05 78 01 29
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <60000000>;
hactive = <720>;
vactive = <1280>;
hback-porch = <42>;
hfront-porch = <44>;
vback-porch = <10>;
vfront-porch = <14>;
hsync-len = <2>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <148000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
hsync-len = <20>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <1>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,576 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "240";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +1 //Africa/Casablanca = +0;
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS5"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt1x";
reg = <0x5d>;
goodix,rst-gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>;
goodix,irq-gpio = <&gpio1 22 IRQ_TYPE_EDGE_FALLING>;
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
rockchip,lane-rate = <480>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
MIPI_DSI_MODE_VIDEO_SYNC_PULSE)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <20>;
init-delay-ms = <20>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
39 00 02 FE 01
39 00 02 24 C0
39 00 02 25 53
39 00 02 26 00
39 00 02 2B E5
39 00 02 27 0A
39 00 02 29 0A
39 00 02 16 52
39 00 02 2F 53
39 00 02 34 5A
39 00 02 1B 00
39 00 02 12 0A
39 00 02 1A 06
39 00 02 46 4F
39 00 02 52 A0
39 00 02 53 00
39 00 02 54 A0
39 00 02 55 00
39 00 02 FE 03
39 00 02 00 05
39 00 02 01 16
39 00 02 02 0B
39 00 02 03 0F
39 00 02 04 7D
39 00 02 05 00
39 00 02 06 50
39 00 02 07 05
39 00 02 08 16
39 00 02 09 0D
39 00 02 0A 11
39 00 02 0B 7D
39 00 02 0C 00
39 00 02 0D 50
39 00 02 0E 07
39 00 02 0F 08
39 00 02 10 01
39 00 02 11 02
39 00 02 12 00
39 00 02 13 7D
39 00 02 14 00
39 00 02 15 85
39 00 02 16 08
39 00 02 17 03
39 00 02 18 04
39 00 02 19 05
39 00 02 1A 06
39 00 02 1B 00
39 00 02 1C 7D
39 00 02 1D 00
39 00 02 1E 85
39 00 02 1F 08
39 00 02 20 00
39 00 02 21 00
39 00 02 22 00
39 00 02 23 00
39 00 02 24 00
39 00 02 25 00
39 00 02 26 00
39 00 02 27 00
39 00 02 28 00
39 00 02 29 00
39 00 02 2A 07
39 00 02 2B 08
39 00 02 2D 01
39 00 02 2F 02
39 00 02 30 00
39 00 02 31 40
39 00 02 32 05
39 00 02 33 08
39 00 02 34 54
39 00 02 35 7D
39 00 02 36 00
39 00 02 37 03
39 00 02 38 04
39 00 02 39 05
39 00 02 3A 06
39 00 02 3B 00
39 00 02 3D 40
39 00 02 3F 05
39 00 02 40 08
39 00 02 41 54
39 00 02 42 7D
39 00 02 43 00
39 00 02 44 00
39 00 02 45 00
39 00 02 46 00
39 00 02 47 00
39 00 02 48 00
39 00 02 49 00
39 00 02 4A 00
39 00 02 4B 00
39 00 02 4C 00
39 00 02 4D 00
39 00 02 4E 00
39 00 02 4F 00
39 00 02 50 00
39 00 02 51 00
39 00 02 52 00
39 00 02 53 00
39 00 02 54 00
39 00 02 55 00
39 00 02 56 00
39 00 02 58 00
39 00 02 59 00
39 00 02 5A 00
39 00 02 5B 00
39 00 02 5C 00
39 00 02 5D 00
39 00 02 5E 00
39 00 02 5F 00
39 00 02 60 00
39 00 02 61 00
39 00 02 62 00
39 00 02 63 00
39 00 02 64 00
39 00 02 65 00
39 00 02 66 00
39 00 02 67 00
39 00 02 68 00
39 00 02 69 00
39 00 02 6A 00
39 00 02 6B 00
39 00 02 6C 00
39 00 02 6D 00
39 00 02 6E 00
39 00 02 6F 00
39 00 02 70 00
39 00 02 71 00
39 00 02 72 20
39 00 02 73 00
39 00 02 74 08
39 00 02 75 08
39 00 02 76 08
39 00 02 77 08
39 00 02 78 08
39 00 02 79 08
39 00 02 7A 00
39 00 02 7B 00
39 00 02 7C 00
39 00 02 7D 00
39 00 02 7E BF
39 00 02 7F 02
39 00 02 80 06
39 00 02 81 14
39 00 02 82 10
39 00 02 83 16
39 00 02 84 12
39 00 02 85 08
39 00 02 86 3F
39 00 02 87 3F
39 00 02 88 3F
39 00 02 89 3F
39 00 02 8A 3F
39 00 02 8B 0C
39 00 02 8C 0A
39 00 02 8D 0E
39 00 02 8E 3F
39 00 02 8F 3F
39 00 02 90 00
39 00 02 91 04
39 00 02 92 3F
39 00 02 93 3F
39 00 02 94 3F
39 00 02 95 3F
39 00 02 96 05
39 00 02 97 01
39 00 02 98 3F
39 00 02 99 3F
39 00 02 9A 0F
39 00 02 9B 0B
39 00 02 9C 0D
39 00 02 9D 3F
39 00 02 9E 3F
39 00 02 9F 3F
39 00 02 A0 3F
39 00 02 A2 3F
39 00 02 A3 09
39 00 02 A4 13
39 00 02 A5 17
39 00 02 A6 11
39 00 02 A7 15
39 00 02 A9 07
39 00 02 AA 03
39 00 02 AB 3F
39 00 02 AC 3F
39 00 02 AD 05
39 00 02 AE 01
39 00 02 AF 17
39 00 02 B0 13
39 00 02 B1 15
39 00 02 B2 11
39 00 02 B3 0F
39 00 02 B4 3F
39 00 02 B5 3F
39 00 02 B6 3F
39 00 02 B7 3F
39 00 02 B8 3F
39 00 02 B9 0B
39 00 02 BA 0D
39 00 02 BB 09
39 00 02 BC 3F
39 00 02 BD 3F
39 00 02 BE 07
39 00 02 BF 03
39 00 02 C0 3F
39 00 02 C1 3F
39 00 02 C2 3F
39 00 02 C3 3F
39 00 02 C4 02
39 00 02 C5 06
39 00 02 C6 3F
39 00 02 C7 3F
39 00 02 C8 08
39 00 02 C9 0C
39 00 02 CA 0A
39 00 02 CB 3F
39 00 02 CC 3F
39 00 02 CD 3F
39 00 02 CE 3F
39 00 02 CF 3F
39 00 02 D0 0E
39 00 02 D1 10
39 00 02 D2 14
39 00 02 D3 12
39 00 02 D4 16
39 00 02 D5 00
39 00 02 D6 04
39 00 02 D7 3F
39 00 02 DC 02
39 00 02 DE 12
39 00 02 FE 0E
39 00 02 01 75
39 00 02 54 01
39 00 02 FE 04
39 00 02 60 00
39 00 02 61 0C
39 00 02 62 12
39 00 02 63 0E
39 00 02 64 06
39 00 02 65 12
39 00 02 66 0E
39 00 02 67 0B
39 00 02 68 15
39 00 02 69 0B
39 00 02 6A 10
39 00 02 6B 07
39 00 02 6C 0F
39 00 02 6D 12
39 00 02 6E 0C
39 00 02 6F 00
39 00 02 70 00
39 00 02 71 0C
39 00 02 72 12
39 00 02 73 0E
39 00 02 74 06
39 00 02 75 12
39 00 02 76 0E
39 00 02 77 0B
39 00 02 78 15
39 00 02 79 0B
39 00 02 7A 10
39 00 02 7B 07
39 00 02 7C 0F
39 00 02 7D 12
39 00 02 7E 0C
39 00 02 7F 00
39 00 02 FE 00
39 00 02 58 AD
05 78 01 11
05 78 01 29
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <64000000>;
hactive = <720>;
vactive = <1280>;
hback-porch = <32>;
hfront-porch = <32>;
vback-porch = <16>;
vfront-porch = <16>;
hsync-len = <4>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <148000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
hsync-len = <20>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <1>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,325 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1024>;
gtp_resolution_y = <600>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [ //old touch
41 00 04 58 02 05 7D 00 01 2F 28
0F 50 32 03 05 00 00 00 00 00 00
00 18 1A 1E 14 89 0D 0C 2C 2A 0C
08 00 00 00 82 03 1D 0A 32 05 0A
32 00 00 00 00 00 0B 1E 50 94 E5
02 08 00 00 04 A7 21 00 8B 28 00
73 31 00 62 3B 00 52 48 00 52 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 32 50 00
00 00 1C 1A 18 16 14 12 10 0E 0C
0A 08 06 04 02 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 2A
29 28 26 24 22 21 20 1F 1E 1D 18
16 14 13 12 10 0F 0C 0A 08 06 FF
FF FF FF 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 3B 01
];
goodix,cfg-group5 = [ //new touch
FF 00 04 58 02 05 0D 04 01
0A 28 0A 50 32 03 05 00 00
00 00 00 00 08 00 00 00 00
8B 2B 0E 30 32 0F 0A 00 00
00 83 02 1D 00 00 00 00 00
03 03 32 00 00 00 24 60 94
C0 02 00 00 00 04 93 27 00
80 30 00 70 3B 00 65 47 00
5C 57 00 5C 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 1C 1A 18 16 14
12 10 0E 0C 0A 08 06 04 02
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 26 24
22 21 20 1F 1E 1D 1C 18 16
13 12 10 0F 0C 0A 08 06 04
02 00 FF FF FF FF 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 6A 01
];
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
prepare-delay-ms = <100>;
reset-delay-ms = <10>;
init-delay-ms = <100>;
enable-delay-ms = <120>;
disable-delay-ms = <50>;
unprepare-delay-ms = <20>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
05 78 01 11
05 78 01 29
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <51000000>;
hactive = <1024>;
vactive = <600>;
hback-porch = <160>;
hfront-porch = <136>;
vback-porch = <16>;
vfront-porch = <16>;
hsync-len = <4>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&route_dsi {
status = "okay";
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,505 @@
#include <dt-bindings/display/drm_mipi_dsi.h>
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "280";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "true";
gps_serial_port = "/dev/ttyS4"; //UART4
status = "okay";
};
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1200>;
gtp_resolution_y = <1920>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
5C B0 04 80 07 05 45 00 02 08
28 08 46 32 03 05 00 00 00 00
00 00 00 00 00 00 00 8C 2C 0E
22 24 BB 0A 00 00 02 01 03 1C
00 01 00 00 00 00 00 32 00 00
00 14 46 94 C5 02 00 00 00 04
E3 16 00 B4 1D 00 8D 25 00 72
30 00 5D 3E 00 5D 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 02 04 06 08 0A 0C 0E 10
12 14 16 18 1A 1C FF FF FF FF
FF FF FF FF FF FF FF FF FF FF
FF FF 00 02 04 06 08 0A 0C 0F
10 12 13 14 28 26 24 22 21 20
1F 1E 1D 1C 18 16 FF FF FF FF
FF 00 00 00 00 00 00 00 00 00
00 00 00 00 B8 01];
goodix,cfg-group1 = [
5C B0 04 80 07 05 45 00 02 08
28 08 46 32 03 05 00 00 00 00
00 00 00 00 00 00 00 8C 2C 0E
22 24 BB 0A 00 00 02 01 03 1C
00 01 00 00 00 00 00 32 00 00
00 14 46 94 C5 02 00 00 00 04
E3 16 00 B4 1D 00 8D 25 00 72
30 00 5D 3E 00 5D 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 02 04 06 08 0A 0C 0E 10
12 14 16 18 1A 1C FF FF FF FF
FF FF FF FF FF FF FF FF FF FF
FF FF 00 02 04 06 08 0A 0C 0F
10 12 13 14 28 26 24 22 21 20
1F 1E 1D 1C 18 16 FF FF FF FF
FF 00 00 00 00 00 00 00 00 00
00 00 00 00 B8 01];
goodix,cfg-group2 = [
5C B0 04 80 07 05 45 00 02 08
28 08 46 32 03 05 00 00 00 00
00 00 00 00 00 00 00 8C 2C 0E
22 24 BB 0A 00 00 02 01 03 1C
00 01 00 00 00 00 00 32 00 00
00 14 46 94 C5 02 00 00 00 04
E3 16 00 B4 1D 00 8D 25 00 72
30 00 5D 3E 00 5D 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 02 04 06 08 0A 0C 0E 10
12 14 16 18 1A 1C FF FF FF FF
FF FF FF FF FF FF FF FF FF FF
FF FF 00 02 04 06 08 0A 0C 0F
10 12 13 14 28 26 24 22 21 20
1F 1E 1D 1C 18 16 FF FF FF FF
FF 00 00 00 00 00 00 00 00 00
00 00 00 00 B8 01];
goodix,cfg-group3 = [
5C B0 04 80 07 05 45 00 02 08
28 08 46 32 03 05 00 00 00 00
00 00 00 00 00 00 00 8C 2C 0E
22 24 BB 0A 00 00 02 01 03 1C
00 01 00 00 00 00 00 32 00 00
00 14 46 94 C5 02 00 00 00 04
E3 16 00 B4 1D 00 8D 25 00 72
30 00 5D 3E 00 5D 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 02 04 06 08 0A 0C 0E 10
12 14 16 18 1A 1C FF FF FF FF
FF FF FF FF FF FF FF FF FF FF
FF FF 00 02 04 06 08 0A 0C 0F
10 12 13 14 28 26 24 22 21 20
1F 1E 1D 1C 18 16 FF FF FF FF
FF 00 00 00 00 00 00 00 00 00
00 00 00 00 B8 01];
goodix,cfg-group4 = [
5C B0 04 80 07 05 45 00 02 08
28 08 46 32 03 05 00 00 00 00
00 00 00 00 00 00 00 8C 2C 0E
22 24 BB 0A 00 00 02 01 03 1C
00 01 00 00 00 00 00 32 00 00
00 14 46 94 C5 02 00 00 00 04
E3 16 00 B4 1D 00 8D 25 00 72
30 00 5D 3E 00 5D 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 02 04 06 08 0A 0C 0E 10
12 14 16 18 1A 1C FF FF FF FF
FF FF FF FF FF FF FF FF FF FF
FF FF 00 02 04 06 08 0A 0C 0F
10 12 13 14 28 26 24 22 21 20
1F 1E 1D 1C 18 16 FF FF FF FF
FF 00 00 00 00 00 00 00 00 00
00 00 00 00 B8 01];
goodix,cfg-group5 = [
5C B0 04 80 07 05 45 00 02 08
28 08 46 32 03 05 00 00 00 00
00 00 00 00 00 00 00 8C 2C 0E
22 24 BB 0A 00 00 02 01 03 1C
00 01 00 00 00 00 00 32 00 00
00 14 46 94 C5 02 00 00 00 04
E3 16 00 B4 1D 00 8D 25 00 72
30 00 5D 3E 00 5D 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 02 04 06 08 0A 0C 0E 10
12 14 16 18 1A 1C FF FF FF FF
FF FF FF FF FF FF FF FF FF FF
FF FF 00 02 04 06 08 0A 0C 0F
10 12 13 14 28 26 24 22 21 20
1F 1E 1D 1C 18 16 FF FF FF FF
FF 00 00 00 00 00 00 00 00 00
00 00 00 00 B8 01];
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&hdmi {
status = "okay";
#sound-dai-cells = <0>;
rockchip,phy-table =
<74250000 0x8009 0x0004 0x0272>,
<165000000 0x802b 0x0004 0x0209>,
<297000000 0x8039 0x0005 0x028d>,
<594000000 0x8039 0x0000 0x00f6>,
<000000000 0x0000 0x0000 0x0000>;
};
&dsi {
status = "okay";
rockchip,lane-rate = <880>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
dsi,lanes = <4>;
reset-delay-ms = <120>;
init-delay-ms = <120>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
unprepare-delay-ms = <60>;
disable-delay-ms = <60>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
39 00 03 b7 50 00
39 00 03 b8 00 00
39 10 03 b9 00 00
39 10 03 ba 14 42
39 10 03 bb 03 00
39 60 03 b9 01 00
39 10 03 de 03 00
39 60 03 c9 02 23
39 00 02 b0 00
39 00 06 14 08 b0 00 22 00
39 30 02 b4 0c
39 40 03 b6 3a d3
39 50 02 51 e6
39 30 02 53 2c
05 78 01 29
05 78 01 11
39 00 03 b7 50 00
39 00 03 b8 00 00
39 10 03 b9 00 00
39 10 03 ba 8c 83
39 10 03 bb 03 00
39 60 03 b9 01 00
39 10 03 c9 02 23
39 60 03 ca 01 23
39 10 03 cb 10 05
39 10 03 cc 05 10
39 10 03 d0 00 00
39 10 03 b6 03 00
39 10 03 de 03 00
39 10 03 d6 05 00
39 60 03 b7 4b 02
05 00 01 2c
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <140000000>;
hactive = <1200>;
vactive = <1920>;
hback-porch = <30>;
hfront-porch = <60>;
vback-porch = <16>;
vfront-porch = <16>;
hsync-len = <4>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <148000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
hsync-len = <20>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <1>;
};
timing2: timing2 {
clock-frequency = <148000000>;
hactive = <1200>;
vactive = <1920>;
hback-porch = <130>;
hfront-porch = <160>;
vback-porch = <16>;
vfront-porch = <16>;
hsync-len = <4>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&pwm0 {
status = "okay";
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,545 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
// status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
rockchip,lane-rate = <480>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
// MIPI_DSI_MODE_VIDEO_SYNC_PULSE)>;
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>; /** 7inch 720x1280 must this mode */
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <100>;
init-delay-ms = <100>;
enable-delay-ms = <120>;
disable-delay-ms = <50>;
unprepare-delay-ms = <20>;
width-mm = <68>;
height-mm = <121>;
panel-init-sequence = [
39 00 02 E0 00
39 00 02 E1 93
39 00 02 E2 65
39 00 02 E3 F8
39 00 02 80 03
39 00 02 E0 04
39 00 02 2D 03
39 00 02 E0 00
39 00 02 70 10
39 00 02 71 13
39 00 02 72 06
39 00 02 75 03
39 00 02 E0 01
//39 00 02 4A 30
39 00 02 00 00
39 00 02 01 A0
39 00 02 03 00
39 00 02 04 A0
39 00 02 0A 07
39 00 02 0C 74
39 00 02 17 00
39 00 02 18 D7
39 00 02 19 01
39 00 02 1A 00
39 00 02 1B D7
39 00 02 1C 01
39 00 02 1F 74
39 00 02 20 19
39 00 02 21 19
39 00 02 22 0E
39 00 02 27 43
39 00 02 37 09
39 00 02 38 04
39 00 02 39 08
39 00 02 3A 18
39 00 02 3B 18
39 00 02 3C 72
39 00 02 3E FF
39 00 02 3E FF
39 00 02 3F FF
39 00 02 40 04
39 00 02 41 A0
39 00 02 43 08
39 00 02 44 07
39 00 02 45 30
39 00 02 55 01
39 00 02 56 01
39 00 02 57 65
39 00 02 58 0A
39 00 02 59 0A
39 00 02 5A 28
39 00 02 5B 0F
39 00 02 5D 7C
39 00 02 5E 5F
39 00 02 5F 4D
39 00 02 60 3F
39 00 02 61 39
39 00 02 62 29
39 00 02 63 2B
39 00 02 64 12
39 00 02 65 28
39 00 02 66 24
39 00 02 67 22
39 00 02 68 3E
39 00 02 69 2C
39 00 02 6A 33
39 00 02 6B 26
39 00 02 6C 23
39 00 02 6D 18
39 00 02 6E 09
39 00 02 6F 00
39 00 02 70 7C
39 00 02 71 5F
39 00 02 72 4D
39 00 02 73 3F
39 00 02 74 39
39 00 02 75 29
39 00 02 76 2B
39 00 02 77 12
39 00 02 78 28
39 00 02 79 24
39 00 02 7A 22
39 00 02 7B 3E
39 00 02 7C 2C
39 00 02 7D 33
39 00 02 7E 26
39 00 02 7F 23
39 00 02 80 18
39 00 02 81 09
39 00 02 82 00
39 00 02 E0 02
39 00 02 00 37
39 00 02 01 17
39 00 02 02 0A
39 00 02 03 06
39 00 02 04 08
39 00 02 05 04
39 00 02 06 00
39 00 02 07 1F
39 00 02 08 1F
39 00 02 09 1F
39 00 02 0A 1F
39 00 02 0B 1F
39 00 02 0C 1F
39 00 02 0D 1F
39 00 02 0E 1F
39 00 02 0F 1F
39 00 02 10 3F
39 00 02 11 1F
39 00 02 12 1F
39 00 02 13 1E
39 00 02 14 10
39 00 02 15 1F
39 00 02 16 37
39 00 02 17 17
39 00 02 18 0B
39 00 02 19 07
39 00 02 1A 09
39 00 02 1B 05
39 00 02 1C 01
39 00 02 1D 1F
39 00 02 1E 1F
39 00 02 1F 1F
39 00 02 20 1F
39 00 02 21 1F
39 00 02 22 1F
39 00 02 23 1F
39 00 02 24 1F
39 00 02 25 1F
39 00 02 26 1F
39 00 02 27 1F
39 00 02 28 1F
39 00 02 29 1E
39 00 02 2A 11
39 00 02 2B 1F
39 00 02 2C 37
39 00 02 2D 17
39 00 02 2E 05
39 00 02 2F 09
39 00 02 30 07
39 00 02 31 0B
39 00 02 32 11
39 00 02 33 1F
39 00 02 34 1F
39 00 02 35 1F
39 00 02 36 1F
39 00 02 37 1F
39 00 02 38 1F
39 00 02 39 1F
39 00 02 3A 1F
39 00 02 3B 1F
39 00 02 3C 3F
39 00 02 3D 1F
39 00 02 3E 1E
39 00 02 3F 1F
39 00 02 40 01
39 00 02 41 1F
39 00 02 42 38
39 00 02 43 18
39 00 02 44 04
39 00 02 45 08
39 00 02 46 06
39 00 02 47 0A
39 00 02 48 10
39 00 02 49 1F
39 00 02 4A 1F
39 00 02 4B 1F
39 00 02 4C 1F
39 00 02 4D 1F
39 00 02 4E 1F
39 00 02 4F 1F
39 00 02 50 1F
39 00 02 51 1F
39 00 02 52 1F
39 00 02 53 1F
39 00 02 54 1E
39 00 02 55 1F
39 00 02 56 00
39 00 02 57 1F
39 00 02 58 10
39 00 02 59 00
39 00 02 5A 00
39 00 02 5B 10
39 00 02 5C 01
39 00 02 5D 50
39 00 02 5E 01
39 00 02 5F 02
39 00 02 60 30
39 00 02 61 01
39 00 02 62 02
39 00 02 63 06
39 00 02 64 6A
39 00 02 65 55
39 00 02 66 08
39 00 02 67 73
39 00 02 68 05
39 00 02 69 08
39 00 02 6A 6E
39 00 02 6B 00
39 00 02 6C 00
39 00 02 6D 00
39 00 02 6E 00
39 00 02 6F 88
39 00 02 70 00
39 00 02 71 00
39 00 02 72 06
39 00 02 73 7B
39 00 02 74 00
39 00 02 75 80
39 00 02 76 00
39 00 02 77 0D
39 00 02 78 18
39 00 02 79 00
39 00 02 7A 00
39 00 02 7B 00
39 00 02 7C 00
39 00 02 7D 03
39 00 02 7E 7B
39 00 02 E0 04
39 00 02 04 01
39 00 02 0E 38
39 00 02 2B 2B
39 00 02 2E 44
39 00 02 E0 00
39 00 02 E6 02
39 00 02 E6 02
//39 00 02 36 00
39 C8 02 11 00
39 C8 02 29 00
05 78 01 11//delay 120MS
05 78 01 29
//39 C8 02 35 00
];
panel-exit-sequence = [
05 78 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <70000000>;
hactive = <720>;
vactive = <1280>;
hback-porch = <34>;
hfront-porch = <34>;
vback-porch = <6>;
vfront-porch = <20>;
hsync-len = <24>;
vsync-len = <3>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
//TP
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <720>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_FALLING>;
goodix,cfg-group0 = [
57 58 02 00 04 05 35 00 01 08 32 0F
5A 32 03 05 00 00 00 00 02 00 00 18
1A 1E 14 8A 2A 0C 55 57 B5 06 00 00
00 20 33 1C 14 01 00 0F 00 2B FF 7F
19 46 32 3C 78 94 D5 02 08 00 00 04
98 40 00 8A 4A 00 80 55 00 77 61 00
6F 70 00 6F 00 00 00 00 F0 40 30 FF
FF 27 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 18 16 14 12 10 0E 0C 0A
08 06 04 02 FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF 24 22
21 20 1F 1E 1D 1C 18 16 00 02 04 06
08 0A 0F 10 12 13 FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF 81 01];
goodix,cfg-group5 = [
57 58 02 00 04 05 35 00 01 08 32 0F
5A 32 03 05 00 00 00 00 02 00 00 18
1A 1E 14 8A 2A 0C 55 57 B5 06 00 00
00 20 33 1C 14 01 00 0F 00 2B FF 7F
19 46 32 3C 78 94 D5 02 08 00 00 04
98 40 00 8A 4A 00 80 55 00 77 61 00
6F 70 00 6F 00 00 00 00 F0 40 30 FF
FF 27 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 18 16 14 12 10 0E 0C 0A
08 06 04 02 FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF 24 22
21 20 1F 1E 1D 1C 18 16 00 02 04 06
08 0A 0F 10 12 13 FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF 81 01];
};
};

View File

@@ -0,0 +1,265 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&i2c4 {
status = "okay";
gslx680@40 {
compatible = "gslx680";
reg = <0x40>;
touch-gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
reset-gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
//rockchip,lane-rate = <470>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
//MIPI_DSI_MODE_VIDEO_SYNC_PULSE)>;
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
dsi,lanes = <4>;
reset-delay-ms = <20>;
init-delay-ms = <20>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
05 78 01 11
05 78 01 29
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <70000000>;
hactive = <800>;
vactive = <1280>;
hback-porch = <40>;
hfront-porch = <40>;
vback-porch = <22>;
vfront-porch = <16>;
hsync-len = <4>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <148000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
hsync-len = <20>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <1>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,325 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
rockchip,lane-rate = <940>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
MIPI_DSI_MODE_VIDEO_SYNC_PULSE | MIPI_DSI_MODE_EOT_PACKET)>;
//MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <120>;
init-delay-ms = <120>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
05 78 01 11
05 78 01 29
];
panel-exit-sequence = [
05 78 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <148000000>;
hactive = <1200>;
vactive = <1920>;
hback-porch = <60>;
hfront-porch = <80>;
vback-porch = <25>;
vfront-porch = <35>;
hsync-len = <1>; //
vsync-len = <1>; //
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1200>;
gtp_resolution_y = <1920>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
5E B0 04 80 07 05 05 00 01 0F 28 05
50 32 03 05 00 00 00 00 00 00 00 00
00 00 00 8C 2C 0E 52 54 31 0D 00 00
01 80 04 1C 00 00 00 00 00 03 64 32
00 00 00 52 66 94 C5 02 07 00 00 04
83 53 00 82 57 00 80 5B 00 7F 5F 00
7E 63 00 7E 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 1C 1A 18 16 14 12 10 0E
0C 0A 08 06 04 02 FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF 00 02
04 06 08 0A 0C 0F 10 12 13 14 28 26
24 22 21 20 1F 1E 1D 1C 18 16 FF FF
FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF 22 01
];
/** jc */
goodix,cfg-group2 = [
00 20 03 00 05 0A 05 00 01 08 28
05 50 32 03 05 00 00 00 00 00 00
00 00 00 00 00 8C 2C 0E 17 15 31
0D 00 00 01 BA 03 1D 00 00 00 00
00 03 64 32 00 00 00 0F 41 94 C5
02 07 00 00 04 99 11 00 77 17 00
5F 1F 00 4C 2A 00 41 38 00 41 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00
00 00 1C 1A 18 16 14 12 10 0E 0C
0A 08 06 04 02 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 28
26 24 22 21 20 1F 1E 1D 1C 18 16
00 02 04 06 08 0A 0C 0F 10 12 13
14 FF FF 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 FE 01
];
};
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,544 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "160";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS5"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <800>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
45 20 03 00 05 05 35 00 01 C8 1E 0F 50 32
03 05 00 00 00 00 00 00 04 18 1A 1E 14 8C
2E 0E 1E 20 EB 04 00 00 00 BA 02 2D 00 00
00 00 00 03 00 00 00 00 00 0F 2D 94 D5 02
07 00 00 04 E6 10 00 BB 14 00 92 1A 00 78
20 00 61 28 00 61 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
1C 1A 18 16 14 12 10 0E 0C 0A 08 06 04 02
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 2A 29 28 26 24 22 21 20 1F 1E 1D 1C
18 16 00 02 04 06 08 0A 0C 0F 10 12 13 14
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 CB 01
];
goodix,cfg-group5 = [
00 20 03 00 05 0A 05 00 01 08 28 08
50 32 03 05 00 00 00 00 00 00 00 18
1A 1E 14 8C 2C 0E 17 15 31 0D 00 00
02 9B 04 1D 00 00 00 00 00 03 64 32
00 00 00 11 25 94 C5 02 07 00 00 04
60 12 00 5D 15 00 57 19 00 54 1D 00
4F 22 00 4F 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 1C 1A 18 16 14 12 10 0E
0C 0A 08 06 04 02 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 28 26
24 22 21 20 1F 1E 1D 1C 18 16 14 13
00 02 04 06 08 0A 0C 0F 10 12 FF FF
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 2F 01];
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
rockchip,lane-rate = <480>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <20>;
init-delay-ms = <20>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
39 00 04 FF 98 81 03
39 00 02 01 00
39 00 02 02 00
39 00 02 03 73
39 00 02 04 D7
39 00 02 05 00
39 00 02 06 08
39 00 02 07 11
39 00 02 08 00
39 00 02 09 3F
39 00 02 0a 00
39 00 02 0b 00
39 00 02 0c 00
39 00 02 0d 00
39 00 02 0e 00
39 00 02 0f 3F
39 00 02 10 3F
39 00 02 11 00
39 00 02 12 00
39 00 02 13 00
39 00 02 14 00
39 00 02 15 00
39 00 02 16 00
39 00 02 17 00
39 00 02 18 00
39 00 02 19 00
39 00 02 1a 00
39 00 02 1b 00
39 00 02 1c 00
39 00 02 1d 00
39 00 02 1e 40
39 00 02 1f 80
39 00 02 20 06
39 00 02 21 01
39 00 02 22 00
39 00 02 23 00
39 00 02 24 00
39 00 02 25 00
39 00 02 26 00
39 00 02 27 00
39 00 02 28 33
39 00 02 29 33
39 00 02 2a 00
39 00 02 2b 00
39 00 02 2c 00
39 00 02 2d 00
39 00 02 2e 00
39 00 02 2f 00
39 00 02 30 00
39 00 02 31 00
39 00 02 32 00
39 00 02 33 00
39 00 02 34 00
39 00 02 35 00
39 00 02 36 00
39 00 02 37 00
39 00 02 38 00
39 00 02 39 00
39 00 02 3a 00
39 00 02 3b 00
39 00 02 3c 00
39 00 02 3d 00
39 00 02 3e 00
39 00 02 3f 00
39 00 02 40 00
39 00 02 41 00
39 00 02 42 00
39 00 02 43 00
39 00 02 44 00
39 00 02 50 01
39 00 02 51 23
39 00 02 52 44
39 00 02 53 67
39 00 02 54 89
39 00 02 55 ab
39 00 02 56 01
39 00 02 57 23
39 00 02 58 45
39 00 02 59 67
39 00 02 5a 89
39 00 02 5b ab
39 00 02 5c cd
39 00 02 5d ef
39 00 02 5e 00
39 00 02 5f 0C
39 00 02 60 0C
39 00 02 61 0F
39 00 02 62 0F
39 00 02 63 0E
39 00 02 64 0E
39 00 02 65 06
39 00 02 66 07
39 00 02 67 0D
39 00 02 68 02
39 00 02 69 02
39 00 02 6a 02
39 00 02 6b 02
39 00 02 6c 02
39 00 02 6d 02
39 00 02 6e 0D
39 00 02 6f 02
39 00 02 70 02
39 00 02 71 05
39 00 02 72 01
39 00 02 73 08
39 00 02 74 00
39 00 02 75 0C
39 00 02 76 0C
39 00 02 77 0F
39 00 02 78 0F
39 00 02 79 0E
39 00 02 7a 0E
39 00 02 7b 06
39 00 02 7c 07
39 00 02 7d 0D
39 00 02 7e 02
39 00 02 7f 02
39 00 02 80 02
39 00 02 81 02
39 00 02 82 02
39 00 02 83 02
39 00 02 84 0D
39 00 02 85 02
39 00 02 86 02
39 00 02 87 05
39 00 02 88 01
39 00 02 89 08
39 00 02 8A 00
39 00 04 FF 98 81 04
39 00 02 6E 3B
39 00 02 6F 57
39 00 02 3A 24
39 00 02 8D 1F
39 00 02 87 BA
39 00 02 B2 D1
39 00 02 88 0B
39 00 02 38 01
39 00 02 39 00
39 00 02 B5 07
39 00 02 31 75
39 00 02 3B 98
39 00 04 FF 98 81 01
39 00 02 22 0A
39 00 02 31 09
39 00 02 35 07
39 00 02 53 7B
39 00 02 55 40
39 00 02 50 86
39 00 02 51 82
39 00 02 60 27
39 00 02 62 20
39 00 02 A0 00
39 00 02 A1 12
39 00 02 A2 20
39 00 02 A3 13
39 00 02 A4 14
39 00 02 A5 27
39 00 02 A6 1D
39 00 02 A7 1F
39 00 02 A8 7C
39 00 02 A9 1D
39 00 02 AA 2A
39 00 02 AB 6B
39 00 02 AC 1A
39 00 02 AD 18
39 00 02 AE 4E
39 00 02 AF 24
39 00 02 B0 2A
39 00 02 B1 4D
39 00 02 B2 5B
39 00 02 B3 23
39 00 02 C0 00
39 00 02 C1 13
39 00 02 C2 20
39 00 02 C3 12
39 00 02 C4 15
39 00 02 C5 28
39 00 02 C6 1C
39 00 02 C7 1E
39 00 02 C8 7B
39 00 02 C9 1E
39 00 02 CA 29
39 00 02 CB 6C
39 00 02 CC 1A
39 00 02 CD 19
39 00 02 CE 4D
39 00 02 CF 22
39 00 02 D0 2A
39 00 02 D1 4D
39 00 02 D2 5B
39 00 02 D3 23
39 00 04 FF 98 81 00
05 78 01 11
05 78 01 29
];
panel-exit-sequence = [
05 78 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <80000000>;
hactive = <800>;
vactive = <1280>;
hback-porch = <60>;
hfront-porch = <60>;
vback-porch = <8>;
vfront-porch = <8>;
hsync-len = <6>;
vsync-len = <4>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <148000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
hsync-len = <20>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <1>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,514 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "160";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +1 //Africa/Casablanca = +0;
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true";
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS4";
primary_device = "DSI";
extend_device = "HDMI-A";
extend_rotate = "0";
rotation_efull = "true";
home_apk = "null";
status = "okay";
};
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
// rockchip,lane-rate = <480>;
panel: panel {
compatible = "simple-panel-dsi";
reg = <0>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_HIGH>;
//power-supply = <&vcc_lcd>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
dsi,lanes = <4>;
reset-delay-ms = <20>;
init-delay-ms = <20>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
status = "okay";
panel-init-sequence = [
39 00 04 FF 98 81 03
39 00 02 01 00
39 00 02 02 00
39 00 02 03 73
39 00 02 04 D7
39 00 02 05 00
39 00 02 06 08
39 00 02 07 11
39 00 02 08 00
39 00 02 09 3F
39 00 02 0a 00
39 00 02 0b 00
39 00 02 0c 00
39 00 02 0d 00
39 00 02 0e 00
39 00 02 0f 3F
39 00 02 10 3F
39 00 02 11 00
39 00 02 12 00
39 00 02 13 00
39 00 02 14 00
39 00 02 15 00
39 00 02 16 00
39 00 02 17 00
39 00 02 18 00
39 00 02 19 00
39 00 02 1a 00
39 00 02 1b 00
39 00 02 1c 00
39 00 02 1d 00
39 00 02 1e 40
39 00 02 1f 80
39 00 02 20 06
39 00 02 21 01
39 00 02 22 00
39 00 02 23 00
39 00 02 24 00
39 00 02 25 00
39 00 02 26 00
39 00 02 27 00
39 00 02 28 33
39 00 02 29 33
39 00 02 2a 00
39 00 02 2b 00
39 00 02 2c 00
39 00 02 2d 00
39 00 02 2e 00
39 00 02 2f 00
39 00 02 30 00
39 00 02 31 00
39 00 02 32 00
39 00 02 33 00
39 00 02 34 00
39 00 02 35 00
39 00 02 36 00
39 00 02 37 00
39 00 02 38 00
39 00 02 39 00
39 00 02 3a 00
39 00 02 3b 00
39 00 02 3c 00
39 00 02 3d 00
39 00 02 3e 00
39 00 02 3f 00
39 00 02 40 00
39 00 02 41 00
39 00 02 42 00
39 00 02 43 00
39 00 02 44 00
39 00 02 50 01
39 00 02 51 23
39 00 02 52 44
39 00 02 53 67
39 00 02 54 89
39 00 02 55 ab
39 00 02 56 01
39 00 02 57 23
39 00 02 58 45
39 00 02 59 67
39 00 02 5a 89
39 00 02 5b ab
39 00 02 5c cd
39 00 02 5d ef
39 00 02 5e 00
39 00 02 5f 0C
39 00 02 60 0C
39 00 02 61 0F
39 00 02 62 0F
39 00 02 63 0E
39 00 02 64 0E
39 00 02 65 06
39 00 02 66 07
39 00 02 67 0D
39 00 02 68 02
39 00 02 69 02
39 00 02 6a 02
39 00 02 6b 02
39 00 02 6c 02
39 00 02 6d 02
39 00 02 6e 0D
39 00 02 6f 02
39 00 02 70 02
39 00 02 71 05
39 00 02 72 01
39 00 02 73 08
39 00 02 74 00
39 00 02 75 0C
39 00 02 76 0C
39 00 02 77 0F
39 00 02 78 0F
39 00 02 79 0E
39 00 02 7a 0E
39 00 02 7b 06
39 00 02 7c 07
39 00 02 7d 0D
39 00 02 7e 02
39 00 02 7f 02
39 00 02 80 02
39 00 02 81 02
39 00 02 82 02
39 00 02 83 02
39 00 02 84 0D
39 00 02 85 02
39 00 02 86 02
39 00 02 87 05
39 00 02 88 01
39 00 02 89 08
39 00 02 8A 00
39 00 04 FF 98 81 04
39 00 02 6E 3B
39 00 02 6F 57
39 00 02 3A 24
39 00 02 8D 1F
39 00 02 87 BA
39 00 02 B2 D1
39 00 02 88 0B
39 00 02 38 01
39 00 02 39 00
39 00 02 B5 07
39 00 02 31 75
39 00 02 3B 98
39 00 04 FF 98 81 01
39 00 02 22 0A
39 00 02 31 09
39 00 02 35 07
39 00 02 53 7B
39 00 02 55 40
39 00 02 50 86
39 00 02 51 82
39 00 02 60 27
39 00 02 62 20
39 00 02 A0 00
39 00 02 A1 12
39 00 02 A2 20
39 00 02 A3 13
39 00 02 A4 14
39 00 02 A5 27
39 00 02 A6 1D
39 00 02 A7 1F
39 00 02 A8 7C
39 00 02 A9 1D
39 00 02 AA 2A
39 00 02 AB 6B
39 00 02 AC 1A
39 00 02 AD 18
39 00 02 AE 4E
39 00 02 AF 24
39 00 02 B0 2A
39 00 02 B1 4D
39 00 02 B2 5B
39 00 02 B3 23
39 00 02 C0 00
39 00 02 C1 13
39 00 02 C2 20
39 00 02 C3 12
39 00 02 C4 15
39 00 02 C5 28
39 00 02 C6 1C
39 00 02 C7 1E
39 00 02 C8 7B
39 00 02 C9 1E
39 00 02 CA 29
39 00 02 CB 6C
39 00 02 CC 1A
39 00 02 CD 19
39 00 02 CE 4D
39 00 02 CF 22
39 00 02 D0 2A
39 00 02 D1 4D
39 00 02 D2 5B
39 00 02 D3 23
39 00 04 FF 98 81 00
05 78 01 11
05 78 01 29
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
disp_timings: display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <80000000>;
hactive = <800>;
vactive = <1280>;
hback-porch = <60>;
hfront-porch = <60>;
vback-porch = <8>;
vfront-porch = <8>;
hsync-len = <6>;
vsync-len = <4>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
//TP
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <800>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_FALLING>;
goodix,cfg-group0 = [
45 20 03 00 05 05 35 00 01 C8 1E 0F 50 32
03 05 00 00 00 00 00 00 04 18 1A 1E 14 8C
2E 0E 1E 20 EB 04 00 00 00 BA 02 2D 00 00
00 00 00 03 00 00 00 00 00 0F 2D 94 D5 02
07 00 00 04 E6 10 00 BB 14 00 92 1A 00 78
20 00 61 28 00 61 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
1C 1A 18 16 14 12 10 0E 0C 0A 08 06 04 02
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 2A 29 28 26 24 22 21 20 1F 1E 1D 1C
18 16 00 02 04 06 08 0A 0C 0F 10 12 13 14
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 CB 01
];
goodix,cfg-group5 = [
00 20 03 00 05 0A 05 00 01 08 28 08
50 32 03 05 00 00 00 00 00 00 00 18
1A 1E 14 8C 2C 0E 17 15 31 0D 00 00
02 9B 04 1D 00 00 00 00 00 03 64 32
00 00 00 11 25 94 C5 02 07 00 00 04
60 12 00 5D 15 00 57 19 00 54 1D 00
4F 22 00 4F 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 1C 1A 18 16 14 12 10 0E
0C 0A 08 06 04 02 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 28 26
24 22 21 20 1F 1E 1D 1C 18 16 14 13
00 02 04 06 08 0A 0C 0F 10 12 FF FF
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 2F 01];
};
};

View File

@@ -0,0 +1,559 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
rockchip,lane-rate = <480>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <20>;
init-delay-ms = <20>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
39 00 04 FF 98 81 03
39 00 02 01 00
39 00 02 02 00
39 00 02 03 57 //54
39 00 02 04 D3 //D4
39 00 02 05 00
39 00 02 06 11
39 00 02 07 08 //09
39 00 02 08 00
39 00 02 09 00
39 00 02 0a 3F //00
39 00 02 0b 00
39 00 02 0c 00
39 00 02 0d 00
39 00 02 0e 00
39 00 02 0f 3F //00
39 00 02 10 3F //00
39 00 02 11 00
39 00 02 12 00
39 00 02 13 00
39 00 02 14 00
39 00 02 15 00
39 00 02 16 00
39 00 02 17 00
39 00 02 18 00
39 00 02 19 00
39 00 02 1a 00
39 00 02 1b 00
39 00 02 1c 00
39 00 02 1d 00
39 00 02 1e 40
39 00 02 1f 80
39 00 02 20 06
39 00 02 21 01
39 00 02 22 00
39 00 02 23 00
39 00 02 24 00
39 00 02 25 00
39 00 02 26 00
39 00 02 27 00
39 00 02 28 33
39 00 02 29 33
39 00 02 2a 00
39 00 02 2b 00
39 00 02 2c 00
39 00 02 2d 00
39 00 02 2e 00
39 00 02 2f 00
39 00 02 30 00
39 00 02 31 00
39 00 02 32 00
39 00 02 33 00
39 00 02 34 00
39 00 02 35 00
39 00 02 36 00
39 00 02 37 00
39 00 02 38 78
39 00 02 39 00
39 00 02 3a 00
39 00 02 3b 00
39 00 02 3c 00
39 00 02 3d 00
39 00 02 3e 00
39 00 02 3f 00
39 00 02 40 00
39 00 02 41 00
39 00 02 42 00
39 00 02 43 00 //GCH/L
39 00 02 44 00
39 00 02 50 00
39 00 02 51 23
39 00 02 52 45
39 00 02 53 67
39 00 02 54 89
39 00 02 55 ab
39 00 02 56 01
39 00 02 57 23
39 00 02 58 45
39 00 02 59 67
39 00 02 5a 89
39 00 02 5b ab
39 00 02 5c cd
39 00 02 5d ef
39 00 02 5e 00
39 00 02 5f 0D //FW_CGOUT_L[1]
39 00 02 60 0D //FW_CGOUT_L[2]
39 00 02 61 0C //FW_CGOUT_L[3]
39 00 02 62 0C //FW_CGOUT_L[4]
39 00 02 63 0F //FW_CGOUT_L[5]
39 00 02 64 0F //FW_CGOUT_L[6]
39 00 02 65 0E //FW_CGOUT_L[7]
39 00 02 66 0E //FW_CGOUT_L[8]
39 00 02 67 08 //FW_CGOUT_L[9]
39 00 02 68 02 //FW_CGOUT_L[10]
39 00 02 69 02 //FW_CGOUT_L[11]
39 00 02 6a 02 //FW_CGOUT_L[12]
39 00 02 6b 02 //FW_CGOUT_L[13]
39 00 02 6c 02 //FW_CGOUT_L[14]
39 00 02 6d 02 //FW_CGOUT_L[15]
39 00 02 6e 02 //FW_CGOUT_L[16]
39 00 02 6f 02 //FW_CGOUT_L[17]
39 00 02 70 14 //FW_CGOUT_L[18]
39 00 02 71 15 //FW_CGOUT_L[19]
39 00 02 72 06 //FW_CGOUT_L[20]
39 00 02 73 02 //FW_CGOUT_L[21]
39 00 02 74 02 //FW_CGOUT_L[22]
39 00 02 75 0D //BW_CGOUT_L[1]
39 00 02 76 0D //BW_CGOUT_L[2]
39 00 02 77 0C //BW_CGOUT_L[3]
39 00 02 78 0C //BW_CGOUT_L[4]
39 00 02 79 0F //BW_CGOUT_L[5]
39 00 02 7a 0F //BW_CGOUT_L[6]
39 00 02 7b 0E //BW_CGOUT_L[7]
39 00 02 7c 0E //BW_CGOUT_L[8]
39 00 02 7d 08 //BW_CGOUT_L[9]
39 00 02 7e 02 //BW_CGOUT_L[10]
39 00 02 7f 02 //BW_CGOUT_L[11]
39 00 02 80 02 //BW_CGOUT_L[12]
39 00 02 81 02 //BW_CGOUT_L[13]
39 00 02 82 02 //BW_CGOUT_L[14]
39 00 02 83 02 //BW_CGOUT_L[15]
39 00 02 84 02 //BW_CGOUT_L[16]
39 00 02 85 02 //BW_CGOUT_L[17]
39 00 02 86 14 //BW_CGOUT_L[18]
39 00 02 87 15 //BW_CGOUT_L[19]
39 00 02 88 06 //BW_CGOUT_L[20]
39 00 02 89 02 //BW_CGOUT_L[21]
39 00 02 8A 02 //BW_CGOUT_L[22]
39 00 04 FF 98 81 04
39 00 02 6E 3B
39 00 02 6F 57
39 00 02 3A 24
39 00 02 8D 1F
39 00 02 87 BA
39 00 02 B2 D1
39 00 02 88 0B
39 00 02 38 01
39 00 02 39 00
39 00 02 B5 07
39 00 02 31 75
39 00 02 3B 98
39 00 04 FF 98 81 01
39 00 02 22 0A
39 00 02 31 09
39 00 02 35 07
39 00 02 53 87
39 00 02 55 84
39 00 02 50 86
39 00 02 51 82
39 00 02 60 10
39 00 02 62 00
39 00 02 A0 00
39 00 02 A1 12
39 00 02 A2 1F
39 00 02 A3 12
39 00 02 A4 16
39 00 02 A5 29
39 00 02 A6 1E
39 00 02 A7 1F
39 00 02 A8 7E
39 00 02 A9 1B
39 00 02 AA 28
39 00 02 AB 6D
39 00 02 AC 19
39 00 02 AD 18
39 00 02 AE 4C
39 00 02 AF 1E
39 00 02 B0 23
39 00 02 B1 52
39 00 02 B2 6D
39 00 02 B3 3F
39 00 02 C0 00
39 00 02 C1 12
39 00 02 C2 20
39 00 02 C3 10
39 00 02 C4 13
39 00 02 C5 27
39 00 02 C6 1B
39 00 02 C7 1D
39 00 02 C8 75
39 00 02 C9 1F
39 00 02 CA 28
39 00 02 CB 68
39 00 02 CC 1A
39 00 02 CD 18
39 00 02 CE 4D
39 00 02 CF 25
39 00 02 D0 2E
39 00 02 D1 53
39 00 02 D2 60
39 00 02 D3 3F
39 00 04 FF 98 81 00
39 00 02 35 00
05 80 01 11
05 20 01 29
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <76000000>;
hactive = <800>;
vactive = <1280>;
hback-porch = <70>;
hfront-porch = <70>;
vback-porch = <22>;
vfront-porch = <16>;
hsync-len = <20>;
vsync-len = <6>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <148000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
hsync-len = <20>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <1>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <800>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
45 20 03 00 05 05 35 00 01 C8 1E 0F 50 32
03 05 00 00 00 00 00 00 04 18 1A 1E 14 8C
2E 0E 1E 20 EB 04 00 00 00 BA 02 2D 00 00
00 00 00 03 00 00 00 00 00 0F 2D 94 D5 02
07 00 00 04 E6 10 00 BB 14 00 92 1A 00 78
20 00 61 28 00 61 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
1C 1A 18 16 14 12 10 0E 0C 0A 08 06 04 02
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 2A 29 28 26 24 22 21 20 1F 1E 1D 1C
18 16 00 02 04 06 08 0A 0C 0F 10 12 13 14
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 CB 01
];
/** jc */
goodix,cfg-group2 = [
00 20 03 00 05 0A 05 00 01 08 28
05 50 32 03 05 00 00 00 00 00 00
00 00 00 00 00 8C 2C 0E 17 15 31
0D 00 00 01 BA 03 1D 00 00 00 00
00 03 64 32 00 00 00 0F 41 94 C5
02 07 00 00 04 99 11 00 77 17 00
5F 1F 00 4C 2A 00 41 38 00 41 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00
00 00 1C 1A 18 16 14 12 10 0E 0C
0A 08 06 04 02 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 28
26 24 22 21 20 1F 1E 1D 1C 18 16
00 02 04 06 08 0A 0C 0F 10 12 13
14 FF FF 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 FE 01
];
goodix,cfg-group5 = [
00 20 03 00 05 0A 05 00 01 08 28 08
50 32 03 05 00 00 00 00 00 00 00 18
1A 1E 14 8C 2C 0E 17 15 31 0D 00 00
02 9B 04 1D 00 00 00 00 00 03 64 32
00 00 00 11 25 94 C5 02 07 00 00 04
60 12 00 5D 15 00 57 19 00 54 1D 00
4F 22 00 4F 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 1C 1A 18 16 14 12 10 0E
0C 0A 08 06 04 02 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 28 26
24 22 21 20 1F 1E 1D 1C 18 16 14 13
00 02 04 06 08 0A 0C 0F 10 12 FF FF
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 2F 01];
};
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,567 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "160";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS5"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <800>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
45 20 03 00 05 05 35 00 01 C8 1E 0F 50 32
03 05 00 00 00 00 00 00 04 18 1A 1E 14 8C
2E 0E 1E 20 EB 04 00 00 00 BA 02 2D 00 00
00 00 00 03 00 00 00 00 00 0F 2D 94 D5 02
07 00 00 04 E6 10 00 BB 14 00 92 1A 00 78
20 00 61 28 00 61 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00
1C 1A 18 16 14 12 10 0E 0C 0A 08 06 04 02
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 2A 29 28 26 24 22 21 20 1F 1E 1D 1C
18 16 00 02 04 06 08 0A 0C 0F 10 12 13 14
00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 CB 01
];
goodix,cfg-group5 = [
00 20 03 00 05 0A 05 00 01 08 28 08
50 32 03 05 00 00 00 00 00 00 00 18
1A 1E 14 8C 2C 0E 17 15 31 0D 00 00
02 9B 04 1D 00 00 00 00 00 03 64 32
00 00 00 11 25 94 C5 02 07 00 00 04
60 12 00 5D 15 00 57 19 00 54 1D 00
4F 22 00 4F 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 1C 1A 18 16 14 12 10 0E
0C 0A 08 06 04 02 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 28 26
24 22 21 20 1F 1E 1D 1C 18 16 14 13
00 02 04 06 08 0A 0C 0F 10 12 FF FF
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 2F 01];
};
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "fullscreen";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "fullscreen";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
rockchip,lane-rate = <480>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <20>;
init-delay-ms = <20>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
panel-init-sequence = [
15 00 02 E0 00
39 00 02 E1 93
39 00 02 E2 65
39 00 02 E3 F8
39 00 02 E0 00
39 00 02 70 10
39 00 02 71 13
39 00 02 72 06
39 00 02 80 03
39 00 02 E0 04
39 00 02 2D 03
39 00 02 E0 01
39 00 02 00 00
39 00 02 01 A0
39 00 02 03 00
39 00 02 04 A0
39 00 02 17 00
39 00 02 18 B1
39 00 02 19 01
39 00 02 1A 00
39 00 02 1B B1
39 00 02 1C 01
39 00 02 1F 3E
39 00 02 20 2D
39 00 02 21 2D
39 00 02 22 0E
39 00 02 37 19
39 00 02 38 05
39 00 02 39 08
39 00 02 3A 12
39 00 02 3C 78
39 00 02 3E 80
39 00 02 3F 80
39 00 02 40 06
39 00 02 41 A0
39 00 02 55 01
39 00 02 56 01
39 00 02 57 69
39 00 02 58 0A
39 00 02 59 0A
39 00 02 5A 28
39 00 02 5B 19
39 00 02 5D 7C
39 00 02 5E 65
39 00 02 5F 53
39 00 02 60 48
39 00 02 61 43
39 00 02 62 35
39 00 02 63 39
39 00 02 64 23
39 00 02 65 3D
39 00 02 66 3C
39 00 02 67 3D
39 00 02 68 5A
39 00 02 69 46
39 00 02 6A 57
39 00 02 6B 4B
39 00 02 6C 49
39 00 02 6D 2F
39 00 02 6E 03
39 00 02 6F 00
39 00 02 70 7C
39 00 02 71 65
39 00 02 72 53
39 00 02 73 48
39 00 02 74 43
39 00 02 75 35
39 00 02 76 39
39 00 02 77 23
39 00 02 78 3D
39 00 02 79 3C
39 00 02 7A 3D
39 00 02 7B 5A
39 00 02 7C 46
39 00 02 7D 57
39 00 02 7E 4B
39 00 02 7F 49
39 00 02 80 2F
39 00 02 81 03
39 00 02 82 00
39 00 02 E0 02
39 00 02 00 47
39 00 02 01 47
39 00 02 02 45
39 00 02 03 45
39 00 02 04 4B
39 00 02 05 4B
39 00 02 06 49
39 00 02 07 49
39 00 02 08 41
39 00 02 09 1F
39 00 02 0A 1F
39 00 02 0B 1F
39 00 02 0C 1F
39 00 02 0D 1F
39 00 02 0E 1F
39 00 02 0F 43
39 00 02 10 1F
39 00 02 11 1F
39 00 02 12 1F
39 00 02 13 1F
39 00 02 14 1F
39 00 02 15 1F
39 00 02 16 46
39 00 02 17 46
39 00 02 18 44
39 00 02 19 44
39 00 02 1A 4A
39 00 02 1B 4A
39 00 02 1C 48
39 00 02 1D 48
39 00 02 1E 40
39 00 02 1F 1F
39 00 02 20 1F
39 00 02 21 1F
39 00 02 22 1F
39 00 02 23 1F
39 00 02 24 1F
39 00 02 25 42
39 00 02 26 1F
39 00 02 27 1F
39 00 02 28 1F
39 00 02 29 1F
39 00 02 2A 1F
39 00 02 2B 1F
39 00 02 2C 11
39 00 02 2D 0F
39 00 02 2E 0D
39 00 02 2F 0B
39 00 02 30 09
39 00 02 31 07
39 00 02 32 05
39 00 02 33 18
39 00 02 34 17
39 00 02 35 1F
39 00 02 36 01
39 00 02 37 1F
39 00 02 38 1F
39 00 02 39 1F
39 00 02 3A 1F
39 00 02 3B 1F
39 00 02 3C 1F
39 00 02 3D 1F
39 00 02 3E 1F
39 00 02 3F 13
39 00 02 40 1F
39 00 02 41 1F
39 00 02 42 10
39 00 02 43 0E
39 00 02 44 0C
39 00 02 45 0A
39 00 02 46 08
39 00 02 47 06
39 00 02 48 04
39 00 02 49 18
39 00 02 4A 17
39 00 02 4B 1F
39 00 02 4C 00
39 00 02 4D 1F
39 00 02 4E 1F
39 00 02 4F 1F
39 00 02 50 1F
39 00 02 51 1F
39 00 02 52 1F
39 00 02 53 1F
39 00 02 54 1F
39 00 02 55 12
39 00 02 56 1F
39 00 02 57 1F
39 00 02 58 40
39 00 02 59 00
39 00 02 5A 00
39 00 02 5B 30
39 00 02 5C 03
39 00 02 5D 30
39 00 02 5E 01
39 00 02 5F 02
39 00 02 60 00
39 00 02 61 01
39 00 02 62 02
39 00 02 63 03
39 00 02 64 6B
39 00 02 65 00
39 00 02 66 00
39 00 02 67 73
39 00 02 68 05
39 00 02 69 06
39 00 02 6A 6B
39 00 02 6B 08
39 00 02 6C 00
39 00 02 6D 04
39 00 02 6E 04
39 00 02 6F 88
39 00 02 70 00
39 00 02 71 00
39 00 02 72 06
39 00 02 73 7B
39 00 02 74 00
39 00 02 75 07
39 00 02 76 00
39 00 02 77 5D
39 00 02 78 17
39 00 02 79 1F
39 00 02 7A 00
39 00 02 7B 00
39 00 02 7C 00
39 00 02 7D 03
39 00 02 7E 7B
39 00 02 E0 01
39 00 02 0E 01
39 00 02 E0 03
39 00 02 98 2F
39 00 02 E0 04
39 00 02 09 10
39 00 02 2B 2B
39 00 02 2E 44
39 00 02 E0 00
39 00 02 E6 02
39 00 02 E7 02
05 78 01 11
05 78 01 29
];
panel-exit-sequence = [
05 78 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <68000000>;
hactive = <800>;
vactive = <1280>;
hback-porch = <20>;
hfront-porch = <32>;
vback-porch = <4>;
vfront-porch = <8>;
hsync-len = <20>;
vsync-len = <4>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {
clock-frequency = <148000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
hsync-len = <20>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <1>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

View File

@@ -0,0 +1,291 @@
/**
* rpdzkj lcd configuration for mipi2lvds tc358775
*
*/
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
rpdzkj_config { // linux donot use
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "160";//320
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
//not_status_bar = "true";
default_launcher = "true";
//default_launcher = "false";
has_root = "true"; //true
//has_root = "false"; //false
usb_not_permission = "true";
usb_camera_only_front = "false";
//usb_camera_only_front = "true";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "fullscreen";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
//compatible = "rockchip,rk3399-dsi"; //no longer need that
//reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
status = "okay";
panel {
compatible = "simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; /** note that needed status in real situation, there is low */
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
dsi,lanes = <4>;
panel-init-sequence = [
29 00 06 14 01 08 00 00 00
29 00 06 3c 01 0c 00 0a 00
29 00 06 64 01 0c 00 00 00
29 00 06 68 01 0c 00 00 00
29 00 06 6c 01 0c 00 00 00
29 00 06 70 01 0c 00 00 00
29 00 06 34 01 1f 00 00 00
29 00 06 10 02 1f 00 00 00
29 00 06 04 01 01 00 00 00
29 00 06 04 02 01 00 00 00
29 00 06 50 04 00 01 f0 03
29 00 06 54 04 14 00 64 00
29 00 06 58 04 80 07 a0 00
29 00 06 5c 04 0a 00 19 00
29 00 06 60 04 38 04 0a 00
29 00 06 64 04 01 00 00 00
29 00 06 a0 04 06 c0 00 00
29 00 06 04 05 04 00 00 00
29 00 06 80 04 00 01 02 03
29 00 06 84 04 04 07 05 08
29 00 06 88 04 09 0a 0e 0f
29 00 06 8c 04 0b 0c 0d 10
29 00 06 90 04 16 17 11 12
29 00 06 94 04 13 14 15 1b
29 14 06 98 04 18 19 1a 06
29 78 06 9c 04 33 04 00 00
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <148500000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <100>;
hsync-len = <20>;
hfront-porch = <160>;
vback-porch = <25>;
vfront-porch = <10>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};

View File

@@ -0,0 +1,297 @@
/**
* rpdzkj lcd configuration for mipi2lvds tc358775
*
*/
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 0 25000 1>;
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 = <255>;
};
rpdzkj_config { // linux donot use
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "160";//320
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
//not_status_bar = "true";
default_launcher = "true";
//default_launcher = "false";
has_root = "true"; //true
//has_root = "false"; //false
usb_not_permission = "true";
usb_camera_only_front = "false";
//usb_camera_only_front = "true";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
//status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
//compatible = "rockchip,rk3399-dsi"; //no longer need that
//reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
status = "okay";
panel {
compatible = "simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; /** note that needed status in real situation, there is low */
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
dsi,lanes = <4>;
panel-init-sequence = [
29 00 06 3c 01 0c 00 0a 00
29 00 06 14 01 08 00 00 00
29 00 06 64 01 0d 00 00 00
29 00 06 68 01 0d 00 00 00
29 00 06 6c 01 0d 00 00 00
29 00 06 70 01 0d 00 00 00
29 00 06 34 01 1f 00 00 00
29 00 06 10 02 1f 00 00 00
29 00 06 04 01 01 00 00 00
29 00 06 04 02 01 00 00 00
29 00 06 50 04 00 01 f0 03
29 00 06 54 04 14 00 a0 00
29 00 06 58 04 00 04 a0 00
29 00 06 5c 04 03 00 17 00
29 00 06 60 04 58 02 0c 00
29 00 06 64 04 01 00 00 00
29 64 06 a0 04 06 80 44 00
29 00 06 a0 04 06 80 04 00
29 00 06 04 05 04 00 00 00
/* data-mapping:jeida, default vesa
29 00 06 80 04 00 01 02 03
29 00 06 84 04 04 07 05 08
29 00 06 88 04 09 0a 0e 0f
29 00 06 8c 04 0b 0c 0d 10
29 00 06 90 04 16 17 11 12
29 00 06 94 04 13 14 15 1b
29 14 06 98 04 18 19 1a 06
*/
29 78 06 9c 04 31 00 00 00
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <45000000>;
hactive = <1024>;
vactive = <600>;
hback-porch = <160>;
hsync-len = <20>;
hfront-porch = <160>;
vback-porch = <23>;
vfront-porch = <12>;
vsync-len = <3>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};

View File

@@ -0,0 +1,428 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 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 = <255>;
};
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "160";//320
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
//not_status_bar = "true";
default_launcher = "true";
//default_launcher = "false";
has_root = "true"; //true
//has_root = "false"; //false
usb_not_permission = "true";
usb_camera_only_front = "false";
//usb_camera_only_front = "true";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
primary_device = "LVDS";
extend_device = "HDMI-A";
extend_rotate = "0";
rotation_efull = "true";
home_apk = "null";
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
// status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
// rockchip,lane-rate = <480>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <100>;
init-delay-ms = <100>;
enable-delay-ms = <120>;
disable-delay-ms = <50>;
unprepare-delay-ms = <20>;
width-mm = <68>;
height-mm = <121>;
panel-init-sequence = [
/* //26MHz
23 08 02 27 AA
23 08 02 48 02
23 08 02 B6 20
23 08 02 01 80
23 08 02 02 38
23 08 02 03 47
23 08 02 04 50
23 08 02 05 12
23 08 02 06 50
23 08 02 07 00
23 08 02 08 18
23 08 02 09 04
23 08 02 0A 18
23 08 02 0B 02
23 08 02 0C 53
23 08 02 0D 01
23 08 02 0E 80
23 08 02 0F 20
23 08 02 10 20
23 08 02 11 03
23 08 02 12 1B
23 08 02 13 63
23 08 02 14 34
23 08 02 15 20
23 08 02 16 10
23 08 02 17 00
23 08 02 18 34
23 08 02 19 20
23 08 02 1A 10
23 08 02 1B 00
23 08 02 1E 46
23 08 02 51 30
23 08 02 1F 10
23 08 02 2A 01
*/
//mipi clk
23 08 02 27 AA
23 08 02 48 02
23 08 02 B6 20
23 08 02 01 80
23 08 02 02 38
23 08 02 03 47
23 08 02 04 50
23 08 02 05 12
23 08 02 06 50
23 08 02 07 00
23 08 02 08 18
23 08 02 09 04
23 08 02 0A 18
23 08 02 0B 82
23 08 02 0C 13
23 08 02 0D 01
23 08 02 0E 80
23 08 02 0F 20
23 08 02 10 20
23 08 02 11 03
23 08 02 12 1B
23 08 02 13 63
23 08 02 14 34
23 08 02 15 20
23 08 02 16 10
23 08 02 17 00
23 08 02 18 34
23 08 02 19 20
23 08 02 1A 10
23 08 02 1B 00
23 08 02 1E 46
23 08 02 51 30
23 08 02 1F 10
23 08 02 2A 01
05 78 01 11
05 05 01 29
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <130000000>;
hactive = <1920>;
vactive = <1080>;
hback-porch = <80>;
hfront-porch = <80>;
vback-porch = <24>;
vfront-porch = <24>;
hsync-len = <18>;
vsync-len = <4>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&route_dsi {
status = "okay";
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <800>;
gtp_resolution_y = <1280>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
/* old touchscreen sensor_id0 */
goodix,cfg-group0 = [
00 20 03 00 05 0A 05 00 01 08
28 05 50 32 03 05 00 00 00 00
00 00 00 00 00 00 00 90 30 AA
17 15 31 0D 00 00 01 B9 04 25
00 00 00 00 00 00 00 00 00 00
00 0F 23 94 C5 02 07 00 00 04
9F 10 00 8B 13 00 7C 16 00 6B
1B 00 60 20 00 60 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 19 18 17 16 15 14 11 10
0F 0E 0D 0C 09 08 07 06 05 04
01 00 00 00 00 00 00 00 00 00
00 00 2A 29 28 27 26 25 24 23
22 21 20 1F 1E 1C 1B 19 00 02
04 06 07 08 0A 0C 0D 0E 0F 10
11 12 13 14 00 00 00 00 00 00
00 00 00 00 96 01
];
/* new touchscreen sensor_id2 */
goodix,cfg-group2 = [
00 20 03 00 05 0A 35 00 00
05 28 08 55 41 03 05 00 00
00 00 00 00 00 1A 1C 1E 14
8E 2E 99 14 16 D3 07 00 00
00 9B 02 2D 00 00 00 00 00
00 00 00 00 00 00 0F 23 94
D5 02 07 00 00 04 9D 10 00
86 13 00 75 16 00 61 1B 00
53 20 00 53 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 17 16 15 14 11
10 0F 0E 0D 0C 09 08 07 06
05 04 01 00 FF FF 00 00 00
00 00 00 00 00 00 00 00 02
04 06 07 08 0A 0C 0D 0F 10
11 12 13 28 27 26 25 24 23
22 21 20 1F 1E 1C 1B 19 FF
FF FF FF 00 00 00 00 00 00
00 00 00 00 4D 01
];
};
};

View File

@@ -0,0 +1,388 @@
/ {
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 0 25000 1>;
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 = <255>;
};
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "160";//320
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
//not_status_bar = "true";
default_launcher = "true";
//default_launcher = "false";
has_root = "true"; //true
//has_root = "false"; //false
usb_not_permission = "true";
usb_camera_only_front = "false";
//usb_camera_only_front = "true";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
primary_device = "LVDS";
extend_device = "HDMI-A";
extend_rotate = "0";
rotation_efull = "true";
home_apk = "null";
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&pwm0 {
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "okay";
// status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&dsi {
status = "okay";
rockchip,lane-rate = <360>;
panel {
compatible ="simple-panel-dsi";
status = "okay";
reg = <0>;
power-supply = <&vcc3v3_sys>;
backlight = <&backlight>;
cmd_later_reset = <0>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
reset-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM|MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
// bus-format = <MEDIA_BUS_FMT_RGB666_1X24>;
dsi,lanes = <4>;
reset-delay-ms = <100>;
init-delay-ms = <100>;
enable-delay-ms = <120>;
disable-delay-ms = <50>;
unprepare-delay-ms = <20>;
width-mm = <68>;
height-mm = <121>;
panel-init-sequence = [
23 08 02 27 AA
23 08 02 48 02
23 08 02 B6 20
23 08 02 01 00
23 08 02 02 58
23 08 02 03 24
23 08 02 04 50
23 08 02 05 12
23 08 02 06 50
23 08 02 07 00
23 08 02 08 18
23 08 02 09 04
23 08 02 0A 18
23 08 02 0B 82
23 08 02 0C 1F
23 08 02 0D 01
23 08 02 0E 80
23 08 02 0F 20
23 08 02 10 20
23 08 02 11 03
23 08 02 12 1B
23 08 02 13 07
23 08 02 14 34
23 08 02 15 20
23 08 02 16 10
23 08 02 17 00
23 08 02 18 01
23 08 02 19 23
23 08 02 1A 40
23 08 02 1B 00
23 08 02 1E 46
23 08 02 51 30
23 08 02 1F 10
23 08 02 2A 01
05 78 01 11
05 05 01 29
];
panel-exit-sequence = [
05 00 01 28
05 78 01 10
];
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <50000000>;
hactive = <1024>;
vactive = <600>;
hback-porch = <80>;
hfront-porch = <80>;
vback-porch = <24>;
vfront-porch = <24>;
hsync-len = <18>;
vsync-len = <4>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
panel_in_dsi: endpoint {
remote-endpoint = <&dsi_out_panel>;
};
};
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@1 {
reg = <1>;
dsi_out_panel: endpoint {
remote-endpoint = <&panel_in_dsi>;
};
};
};
};
&route_dsi {
status = "okay";
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&dsi_in_vopl {
status = "disabled";
};
&dsi_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&edp_in_vopb {
status = "disabled";
};
&edp_in_vopl {
status = "disabled";
};
&dsi1_in_vopb {
status = "disabled";
};
&dsi1_in_vopl {
status = "disabled";
};
&route_hdmi {
status = "okay";
connect = <&vopl_out_hdmi>;
};
&route_dsi {
status = "okay";
connect = <&vopb_out_dsi>;
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1024>;
gtp_resolution_y = <600>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
gtp_touch_wakeup = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
/* old touchscreen sensor_id0 */
goodix,cfg-group0 = [
00 20 03 00 05 0A 05 00 01 08
28 05 50 32 03 05 00 00 00 00
00 00 00 00 00 00 00 90 30 AA
17 15 31 0D 00 00 01 B9 04 25
00 00 00 00 00 00 00 00 00 00
00 0F 23 94 C5 02 07 00 00 04
9F 10 00 8B 13 00 7C 16 00 6B
1B 00 60 20 00 60 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00
00 00 19 18 17 16 15 14 11 10
0F 0E 0D 0C 09 08 07 06 05 04
01 00 00 00 00 00 00 00 00 00
00 00 2A 29 28 27 26 25 24 23
22 21 20 1F 1E 1C 1B 19 00 02
04 06 07 08 0A 0C 0D 0E 0F 10
11 12 13 14 00 00 00 00 00 00
00 00 00 00 96 01
];
/* new touchscreen sensor_id2 */
goodix,cfg-group2 = [
00 20 03 00 05 0A 35 00 00
05 28 08 55 41 03 05 00 00
00 00 00 00 00 1A 1C 1E 14
8E 2E 99 14 16 D3 07 00 00
00 9B 02 2D 00 00 00 00 00
00 00 00 00 00 00 0F 23 94
D5 02 07 00 00 04 9D 10 00
86 13 00 75 16 00 61 1B 00
53 20 00 53 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00
00 00 00 00 17 16 15 14 11
10 0F 0E 0D 0C 09 08 07 06
05 04 01 00 FF FF 00 00 00
00 00 00 00 00 00 00 00 02
04 06 07 08 0A 0C 0D 0F 10
11 12 13 28 27 26 25 24 23
22 21 20 1F 1E 1C 1B 19 FF
FF FF FF 00 00 00 00 00 00
00 00 00 00 4D 01
];
};
};

View File

@@ -0,0 +1,175 @@
&rkisp1_0 {
status = "okay";
port {
#address-cells = <1>;
#size-cells = <0>;
isp0_mipi_in: endpoint@0 {
reg = <0>;
remote-endpoint = <&dphy_rx0_out>;
};
};
};
&mipi_dphy_rx0 {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
mipi_in_ucam0: endpoint@1 {
reg = <1>;
remote-endpoint = <&ucam_out0>;
data-lanes = <1 2>;
};
};
port@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
dphy_rx0_out: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp0_mipi_in>;
};
};
};
};
&isp0_mmu {
status = "okay";
};
&rkisp1_1 {
status = "okay";
port {
#address-cells = <1>;
#size-cells = <0>;
isp1_mipi_in: endpoint@0 {
reg = <0>;
remote-endpoint = <&dphy_tx1rx1_out>;
};
};
};
&mipi_dphy_tx1rx1 {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
mipi_in_ucam1: endpoint@1 {
reg = <1>;
// Unlinked camera
remote-endpoint = <&ucam_out1>;
data-lanes = <1 2>;
};
};
port@1 {
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
dphy_tx1rx1_out: endpoint@0 {
reg = <0>;
remote-endpoint = <&isp1_mipi_in>;
};
};
};
};
&isp1_mmu {
status = "okay";
};
&i2c1 {
status = "okay";
ov13850b: ov13850b@10 {
compatible = "ovti,ov13850";
status = "okay";
reg = <0x10>;
clocks = <&cru SCLK_CIF_OUT>;
clock-names = "xvclk";
/* conflict with csi-ctl-gpios */
reset-gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>;
pwdn-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>;
pinctrl-names = "rockchip,camera_default";
pinctrl-0 = <&pinctrl_ov13850b>;
rockchip,camera-module-index = <0>;
rockchip,camera-module-facing = "back";
rockchip,camera-module-name = "CMK-CT0116";
rockchip,camera-module-lens-name = "Largan-50013A1";
port {
ucam_out0: endpoint {
remote-endpoint = <&mipi_in_ucam0>;
data-lanes = <1 2>;
};
};
};
ov13850f: ov13850f@10 {
compatible = "ovti,ov13850";
status = "okay";
reg = <0x10>;
clocks = <&cru SCLK_CIF_OUT>;
clock-names = "xvclk";
/* conflict with csi-ctl-gpios */
reset-gpios = <&gpio2 27 GPIO_ACTIVE_HIGH>;
pwdn-gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
//pinctrl-names = "rockchip,camera_default";
//pinctrl-0 = <&pinctrl_ov13850f>;
rockchip,camera-module-index = <1>;
rockchip,camera-module-facing = "front";
rockchip,camera-module-name = "CMK-CT0116";
rockchip,camera-module-lens-name = "Largan-50013A1";
port {
ucam_out1: endpoint {
remote-endpoint = <&mipi_in_ucam1>;
data-lanes = <1 2>;
};
};
};
};
&pinctrl {
camera {
pinctrl_ov13850b: pinctrl-ov13850b {
rockchip,pins =
/* cif_clkout */
<2 RK_PB3 3 &pcfg_pull_none>,
<1 RK_PA3 0 &pcfg_pull_none>,
<2 RK_PD4 0 &pcfg_pull_none>;
};
pinctrl_ov13850f: pinctrl-ov13850f {
rockchip,pins =
/* cif_clkout */
<2 RK_PB3 3 &pcfg_pull_none>,
<2 RK_PD3 0 &pcfg_pull_none>,
<2 RK_PB4 0 &pcfg_pull_none>;
};
};
};

40
rk3399/rp-pcie.dtsi Executable file
View File

@@ -0,0 +1,40 @@
/**
* rpdzkj configure for pcie
*
* Only pcie related configuration is placed here.
*/
/ {
vcc3v3_pcie: vcc3v3-pcie-regulator {
compatible = "regulator-fixed";
enable-active-high;
regulator-always-on;
regulator-boot-on;
gpio = <&gpio1 20 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&pcie_drv>;
regulator-name = "vcc3v3_pcie";
};
};
&pcie0 {
ep-gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
num-lanes = <4>;
pinctrl-names = "default";
pinctrl-0 = <&pcie_clkreqn_cpm>;
phy-supply = <&vcc3v3_pcie>;
status = "okay";
};
&pcie_phy {
status = "okay";
};
&pinctrl {
pcie {
pcie_drv: pcie-drv {
rockchip,pins =
<1 20 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

View File

@@ -0,0 +1,259 @@
&i2c0 {
status = "okay";
i2c-scl-rising-time-ns = <168>;
i2c-scl-falling-time-ns = <4>;
clock-frequency = <400000>;
vdd_cpu_b: syr827@40 {
compatible = "silergy,syr827";
reg = <0x40>;
vin-supply = <&vcc_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel1_gpio>;
vsel-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_cpu_b";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_gpu: syr828@41 {
compatible = "silergy,syr828";
reg = <0x41>;
vin-supply = <&vcc_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel2_gpio>;
vsel-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_gpu";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
rk808: pmic@1b {
compatible = "rockchip,rk808";
reg = <0x1b>;
interrupt-parent = <&gpio1>;
interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
rockchip,system-power-controller;
wakeup-source;
#clock-cells = <1>;
// clock-output-names = "xin32k", "rk808-clkout2";
clock-output-names = "rk808-clkout1", "rk808-clkout2"; //wifi
vcc1-supply = <&vcc_sys>;
vcc2-supply = <&vcc_sys>;
vcc3-supply = <&vcc_sys>;
vcc4-supply = <&vcc_sys>;
vcc6-supply = <&vcc_sys>;
vcc7-supply = <&vcc_sys>;
vcc8-supply = <&vcc3v3_sys>;
vcc9-supply = <&vcc_sys>;
vcc10-supply = <&vcc_sys>;
vcc11-supply = <&vcc_sys>;
vcc12-supply = <&vcc3v3_sys>;
vddio-supply = <&vcc1v8_pmu>;
regulators {
vdd_center: DCDC_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_center";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_cpu_l: DCDC_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_cpu_l";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc_ddr: DCDC_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc_ddr";
regulator-state-mem {
regulator-on-in-suspend;
};
};
vcc_1v8: DCDC_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc_1v8";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vcc1v8_dvp: LDO_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_dvp";
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;
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc1v8_pmu: LDO_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_pmu";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vcc_sdio: LDO_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc_sdio";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3300000>;
};
};
vcca3v0_codec: LDO_REG5 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcca3v0_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <3000000>;
};
};
vcc_1v5: LDO_REG6 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <1500000>;
regulator-name = "vcc_1v5";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1500000>;
};
};
vcca1v8_codec: LDO_REG7 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcca1v8_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <1800000>;
};
};
vcc_3v0: LDO_REG8 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcc_3v0";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc3v3_s3: vcc_lan: SWITCH_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s3";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc3v3_s0: SWITCH_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s0";
regulator-state-mem {
regulator-off-in-suspend;
};
};
};
};
};
&pinctrl {
pmic {
pmic_int_l: pmic-int-l {
rockchip,pins =
<1 21 RK_FUNC_GPIO &pcfg_pull_up>;
};
pmic_dvs2: pmic-dvs2 {
rockchip,pins =
<1 5 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>;
};
};
};

View File

@@ -0,0 +1,253 @@
&i2c0 {
status = "okay";
i2c-scl-rising-time-ns = <168>;
i2c-scl-falling-time-ns = <4>;
clock-frequency = <400000>;
vdd_cpu_b: syr827@40 {
compatible = "silergy,syr827";
reg = <0x40>;
vin-supply = <&vcc5v0_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel1_gpio>;
vsel-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_cpu_b";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_gpu: syr828@41 {
compatible = "silergy,syr828";
reg = <0x41>;
vin-supply = <&vcc5v0_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel2_gpio>;
vsel-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_gpu";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
rk808: pmic@1b {
compatible = "rockchip,rk808";
reg = <0x1b>;
interrupt-parent = <&gpio1>;
interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
rockchip,system-power-controller;
wakeup-source;
#clock-cells = <1>;
//clock-output-names = "xin32k", "rk808-clkout2";
clock-output-names = "rk808-clkout1", "rk808-clkout2"; //wifi
/*
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 = <&vcc_3v0>;
*/
vcc1-supply = <&vcc5v0_sys>;
vcc2-supply = <&vcc5v0_sys>;
vcc3-supply = <&vcc5v0_sys>;
vcc4-supply = <&vcc5v0_sys>;
vcca-supply = <&vcc5v0_sys>;
vcc6-supply = <&vcc5v0_sys>;
vcc7-supply = <&vcc5v0_sys>;
vcc8-supply = <&vcc3v3_sys>;
vcc9-supply = <&vcc5v0_sys>;
vcc10-supply = <&vcc5v0_sys>;
vcc11-supply = <&vcc5v0_sys>;
vcc12-supply = <&vcc3v3_sys>;
vddio-supply = <&vcc1v8_pmu>;
regulators {
vdd_center: DCDC_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_center";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_cpu_l: DCDC_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_cpu_l";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc_ddr: DCDC_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc_ddr";
regulator-state-mem {
regulator-on-in-suspend;
};
};
vcc_1v8: DCDC_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc_1v8";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vcc1v8_dvp: LDO_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_dvp";
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;
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc1v8_pmu: LDO_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_pmu";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vccio_sd: LDO_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vccio_sd";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcca3v0_codec: LDO_REG5 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcca3v0_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <3000000>;
};
};
vcc_1v5: LDO_REG6 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <1500000>;
regulator-name = "vcc_1v5";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1500000>;
};
};
vcca1v8_codec: LDO_REG7 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcca1v8_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <1800000>;
};
};
vcc_3v0: LDO_REG8 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcc_3v0";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc3v3_s3: SWITCH_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s3";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc3v3_s0: SWITCH_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s0";
regulator-state-mem {
regulator-off-in-suspend;
};
};
};
};
};

View File

@@ -0,0 +1,252 @@
&i2c0 {
status = "okay";
i2c-scl-rising-time-ns = <168>;
i2c-scl-falling-time-ns = <4>;
clock-frequency = <400000>;
vdd_cpu_b: syr827@40 {
compatible = "silergy,syr827";
reg = <0x40>;
vin-supply = <&vcc5v0_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel1_gpio>;
vsel-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_cpu_b";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_gpu: syr828@41 {
compatible = "silergy,syr828";
reg = <0x41>;
vin-supply = <&vcc5v0_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel2_gpio>;
vsel-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_gpu";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
rk808: pmic@1b {
compatible = "rockchip,rk808";
reg = <0x1b>;
interrupt-parent = <&gpio1>;
interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
rockchip,system-power-controller;
wakeup-source;
#clock-cells = <1>;
// clock-output-names = "xin32k", "rk808-clkout2";
clock-output-names = "rk808-clkout1", "rk808-clkout2"; //wifi
/*
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 = <&vcc_3v0>;
*/
vcc1-supply = <&vcc5v0_sys>;
vcc2-supply = <&vcc5v0_sys>;
vcc3-supply = <&vcc5v0_sys>;
vcc4-supply = <&vcc5v0_sys>;
vcca-supply = <&vcc5v0_sys>;
vcc6-supply = <&vcc5v0_sys>;
vcc7-supply = <&vcc5v0_sys>;
vcc8-supply = <&vcc3v3_sys>;
vcc9-supply = <&vcc5v0_sys>;
vcc10-supply = <&vcc5v0_sys>;
vcc11-supply = <&vcc5v0_sys>;
vcc12-supply = <&vcc3v3_sys>;
vddio-supply = <&vcc1v8_pmu>;
regulators {
vdd_center: DCDC_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_center";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_cpu_l: DCDC_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_cpu_l";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc_ddr: DCDC_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc_ddr";
regulator-state-mem {
regulator-on-in-suspend;
};
};
vcc_1v8: DCDC_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc_1v8";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vcc1v8_dvp: LDO_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_dvp";
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;
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc1v8_pmu: LDO_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_pmu";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vccio_sd: LDO_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vccio_sd";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3300000>;
};
};
vcca3v0_codec: LDO_REG5 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcca3v0_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <3000000>;
};
};
vcc_1v5: LDO_REG6 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <1500000>;
regulator-name = "vcc_1v5";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1500000>;
};
};
vcca1v8_codec: LDO_REG7 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcca1v8_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <1800000>;
};
};
vcc_3v0: LDO_REG8 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcc_3v0";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc3v3_s3: SWITCH_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s3";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc3v3_s0: SWITCH_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s0";
regulator-state-mem {
regulator-off-in-suspend;
};
};
};
};
};

252
rk3399/rp-pmu-rk808-rp.dtsi Normal file
View File

@@ -0,0 +1,252 @@
&i2c0 {
status = "okay";
i2c-scl-rising-time-ns = <168>;
i2c-scl-falling-time-ns = <4>;
clock-frequency = <400000>;
vdd_cpu_b: syr827@40 {
compatible = "silergy,syr827";
reg = <0x40>;
vin-supply = <&vcc5v0_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel1_gpio>;
vsel-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_cpu_b";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_gpu: syr828@41 {
compatible = "silergy,syr828";
reg = <0x41>;
vin-supply = <&vcc5v0_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel2_gpio>;
vsel-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_gpu";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
rk808: pmic@1b {
compatible = "rockchip,rk808";
reg = <0x1b>;
interrupt-parent = <&gpio1>;
interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
rockchip,system-power-controller;
wakeup-source;
#clock-cells = <1>;
// clock-output-names = "xin32k", "rk808-clkout2";
clock-output-names = "rk808-clkout1", "rk808-clkout2"; //wifi
/*
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 = <&vcc_3v0>;
*/
vcc1-supply = <&vcc5v0_sys>;
vcc2-supply = <&vcc5v0_sys>;
vcc3-supply = <&vcc5v0_sys>;
vcc4-supply = <&vcc5v0_sys>;
vcca-supply = <&vcc5v0_sys>;
vcc6-supply = <&vcc5v0_sys>;
vcc7-supply = <&vcc5v0_sys>;
vcc8-supply = <&vcc3v3_sys>;
vcc9-supply = <&vcc5v0_sys>;
vcc10-supply = <&vcc5v0_sys>;
vcc11-supply = <&vcc5v0_sys>;
vcc12-supply = <&vcc3v3_sys>;
vddio-supply = <&vcc1v8_pmu>;
regulators {
vdd_center: DCDC_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_center";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_cpu_l: DCDC_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_cpu_l";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc_ddr: DCDC_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc_ddr";
regulator-state-mem {
regulator-on-in-suspend;
};
};
vcc_1v8: DCDC_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc_1v8";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vcc1v8_dvp: LDO_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_dvp";
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;
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc1v8_pmu: LDO_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_pmu";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vccio_sd: LDO_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vccio_sd";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3300000>;
};
};
vcca3v0_codec: LDO_REG5 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcca3v0_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <3000000>;
};
};
vcc_1v5: LDO_REG6 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <1500000>;
regulator-name = "vcc_1v5";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1500000>;
};
};
vcca1v8_codec: LDO_REG7 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcca1v8_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <1800000>;
};
};
vcc_3v0: LDO_REG8 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcc_3v0";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc3v3_s3: SWITCH_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s3";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc3v3_s0: SWITCH_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s0";
regulator-state-mem {
regulator-off-in-suspend;
};
};
};
};
};

259
rk3399/rp-pmu-rk808.dtsi Executable file
View File

@@ -0,0 +1,259 @@
&i2c0 {
status = "okay";
i2c-scl-rising-time-ns = <168>;
i2c-scl-falling-time-ns = <4>;
clock-frequency = <400000>;
vdd_cpu_b: syr827@40 {
compatible = "silergy,syr827";
reg = <0x40>;
vin-supply = <&vcc_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel1_gpio>;
vsel-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_cpu_b";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_gpu: syr828@41 {
compatible = "silergy,syr828";
reg = <0x41>;
vin-supply = <&vcc_sys>;
regulator-compatible = "fan53555-reg";
pinctrl-names = "default";
pinctrl-0 = <&vsel2_gpio>;
vsel-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
regulator-name = "vdd_gpu";
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1500000>;
regulator-ramp-delay = <1000>;
fcs,suspend-voltage-selector = <1>;
regulator-always-on;
regulator-boot-on;
regulator-initial-state = <3>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
rk808: pmic@1b {
compatible = "rockchip,rk808";
reg = <0x1b>;
interrupt-parent = <&gpio1>;
interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
rockchip,system-power-controller;
wakeup-source;
#clock-cells = <1>;
//clock-output-names = "xin32k", "rk808-clkout2";
clock-output-names = "rk808-clkout1", "rk808-clkout2"; //wifi
vcc1-supply = <&vcc_sys>;
vcc2-supply = <&vcc_sys>;
vcc3-supply = <&vcc_sys>;
vcc4-supply = <&vcc_sys>;
vcc6-supply = <&vcc_sys>;
vcc7-supply = <&vcc_sys>;
vcc8-supply = <&vcc3v3_sys>;
vcc9-supply = <&vcc_sys>;
vcc10-supply = <&vcc_sys>;
vcc11-supply = <&vcc_sys>;
vcc12-supply = <&vcc3v3_sys>;
vddio-supply = <&vcc1v8_pmu>;
regulators {
vdd_center: DCDC_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_center";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vdd_cpu_l: DCDC_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1350000>;
regulator-ramp-delay = <6001>;
regulator-name = "vdd_cpu_l";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc_ddr: DCDC_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc_ddr";
regulator-state-mem {
regulator-on-in-suspend;
};
};
vcc_1v8: DCDC_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc_1v8";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vcc1v8_dvp: LDO_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_dvp";
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;
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc1v8_pmu: LDO_REG3 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc1v8_pmu";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1800000>;
};
};
vcc_sdio: LDO_REG4 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc_sdio";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <3000000>;
};
};
vcca3v0_codec: LDO_REG5 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcca3v0_codec";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc_1v5: LDO_REG6 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <1500000>;
regulator-name = "vcc_1v5";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <1500000>;
};
};
vcca1v8_codec: LDO_REG7 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcca1v8_codec";
regulator-state-mem {
regulator-off-in-suspend;
// regulator-suspend-microvolt = <1800000>;
};
};
vcc_3v0: LDO_REG8 {
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcc_3v0";
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-microvolt = <3000000>;
};
};
vcc3v3_s3: vcc_lan: SWITCH_REG1 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s3";
regulator-state-mem {
regulator-off-in-suspend;
};
};
vcc3v3_s0: SWITCH_REG2 {
regulator-always-on;
regulator-boot-on;
regulator-name = "vcc3v3_s0";
regulator-state-mem {
regulator-off-in-suspend;
};
};
};
};
};
&pinctrl {
pmic {
pmic_int_l: pmic-int-l {
rockchip,pins =
<1 21 RK_FUNC_GPIO &pcfg_pull_up>;
};
pmic_dvs2: pmic-dvs2 {
rockchip,pins =
<1 5 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>;
};
};
};

View File

@@ -0,0 +1,288 @@
/ {
panel: panel {
compatible = "simple-panel";
backlight = <&backlight>;
power-supply = <&vcc3v3_sys>;
enable-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
prepare-delay-ms = <20>;
enable-delay-ms = <20>;
//reset = <&gpio1 0 GPIO_ACTIVE_HIGH>;
reset-delay-ms = <200>;
//for king/rp/rd board cannot enable boot logo
pinctrl-names = "default";
pinctrl-0 = <&pwr_en>;
display-timings {
native-mode = <&timing0>;
timing0: timing0 {//EDP 13.3
clock-frequency = <150000000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <12>;
hsync-len = <16>;
hback-porch = <48>;
vfront-porch = <8>;
vsync-len = <4>;
vback-porch = <8>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
timing1: timing1 {// EDP 15.6 LP156WF6
clock-frequency = <138000000>;
hactive = <1920>;
vactive = <1080>;
hfront-porch = <48>;
hsync-len = <32>;
hback-porch = <80>;
vfront-porch = <3>;
vsync-len = <5>;
vback-porch = <23>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
ports {
panel_in: endpoint {
remote-endpoint = <&edp_out>;
};
};
};
backlight: backlight {
status = "okay";
compatible = "pwm-backlight";
pwms = <&pwm0 0 25000 1>;
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 = <255>;
};
//bill
rpdzkj_config {
compatible = "rp_config";
user_version = "rpdzkj";
system_rotate = "0";
back_camera_rotate = "0";
front_camera_rotate = "0";
lcd_density = "160";
language = "zh-CN"; //zh-CN //en-US
time_zone = "Asia/Shanghai"; //Asia/Shanghai = +8 //Europe/London = +0
not_navigation_bar = "false";
not_status_bar = "false";
default_launcher = "true";
has_root = "true"; //true//false
usb_not_permission = "true";
usb_camera_only_front = "false";
gps_use = "false";
gps_serial_port = "/dev/ttyS4"; //UART4
status = "okay";
};
};
&hdmi {
#address-cells = <1>;
#size-cells = <0>;
#sound-dai-cells = <0>;
ddc-i2c-scl-high-time-ns = <9625>;
ddc-i2c-scl-low-time-ns = <10000>;
status = "okay";
};
&display_subsystem {
status = "okay";
ports = <&vopb_out>, <&vopl_out>;
logo-memory-region = <&drm_logo>;
route {
route_hdmi: route-hdmi {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopl_out_hdmi>;
};
route_dsi: route-dsi {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_dsi>;
};
route_dsi1: route-dsi1 {
status = "disabled";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "fullscreen";
charge_logo,mode = "center";
connect = <&vopl_out_dsi1>;
};
route_edp: route-edp {
status = "okay";
logo,uboot = "logo.bmp";
logo,kernel = "logo_kernel.bmp";
logo,mode = "center";
charge_logo,mode = "center";
connect = <&vopb_out_edp>;
};
};
};
&pwm0 {
status = "okay";
};
&edp {
status = "okay";
force-hpd;
ports {
port@1 {
reg = <1>;
edp_out: endpoint {
remote-endpoint = <&panel_in>;
};
};
};
};
&vopb {
assigned-clocks = <&cru DCLK_VOP0_DIV>;
assigned-clock-parents = <&cru PLL_CPLL>;
//assigned-clock-parents = <&cru PLL_VPLL>;
status = "okay";
};
&vopb_mmu {
status = "okay";
};
&vopl {
assigned-clocks = <&cru DCLK_VOP1_DIV>;
assigned-clock-parents = <&cru PLL_VPLL>;
//assigned-clock-parents = <&cru PLL_CPLL>;
status = "okay";
};
&vopl_mmu {
status = "okay";
};
&edp_in_vopl {
status = "disabled";
};
&edp_in_vopb {
status = "okay";
};
&hdmi_in_vopb {
status = "disabled";
};
&hdmi_in_vopl {
status = "okay";
};
&route_edp {
status = "okay";
//status = "disabled";
};
&route_hdmi {
status = "okay";
//status = "disabled";
};
&i2c4 {
status = "okay";
goodix_ts@5d {
compatible = "goodix,gt9xx";
reg = <0x5d>;
gtp_resolution_x = <1920>;
gtp_resolution_y = <1080>;
gtp_int_tarigger = <1>;
gtp_change_x2y = <0>;
gtp_overturn_x = <0>;
gtp_overturn_y = <0>;
gtp_send_cfg = <1>;
goodix_rst_gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
goodix_irq_gpio = <&gpio1 22 IRQ_TYPE_EDGE_RISING>;
goodix,cfg-group0 = [
64 80 07 38 04 0A 3D 00 01 C8 28 0F
55 37 03 05 00 00 00 00 00 00 00 18
1A 1E 14 90 30 AA 25 27 0F 0A 00 00
00 5A 03 11 00 00 00 00 00 00 00 00
00 25 00 19 37 94 D5 02 08 14 00 04
9B 1B 00 8E 1F 00 80 25 00 76 2B 00
6E 32 00 6E 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 10 00 00 00 00
00 00 00 00 19 18 17 16 15 14 11 10
0F 0E 0D 0C 09 08 07 06 05 04 01 00
00 00 00 00 00 00 00 00 00 00 00 02
04 06 07 08 0A 0C 0D 0E 0F 10 11 12
13 14 19 1B 1C 1E 1F 20 21 22 23 24
25 26 27 28 29 2A 00 00 00 00 00 00
00 00 00 00 B7 01];
};
};
&pinctrl{
pwr_5v {
pwr_en: pwr-en {
rockchip,pins = //<1 13 RK_FUNC_GPIO &pcfg_pull_up>,
<4 30 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};

323
rk3399/rp-rk3399-board.dtsi Executable file
View File

@@ -0,0 +1,323 @@
#include "dt-bindings/pwm/pwm.h"
#include "dt-bindings/input/input.h"
#include "../rk3399.dtsi"
#include "../rk3399-opp.dtsi"
#include "../rk3399-linux.dtsi"
#include <dt-bindings/sensor-dev.h>
/ {
chosen {
stdout-path = "serial2:1500000n8";
};
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>;
};
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>;
};
vcc3v0_sd: vcc3v0-sd {
status = "disabled";
compatible = "regulator-fixed";
enable-active-high;
gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&sdmmc0_pwr_h>;
regulator-always-on;
regulator-max-microvolt = <3000000>;
regulator-min-microvolt = <3000000>;
regulator-name = "vcc3v0_sd";
vin-supply = <&vcc3v3_sys>;
};
vcc3v3_sys: vcc3v3-sys {
compatible = "regulator-fixed";
regulator-name = "vcc3v3_sys";
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&vcc_sys>;
};
vcc_sys: vcc-sys {
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>;
};
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>;
};
spdif-sound {
status = "disabled";
compatible = "simple-audio-card";
simple-audio-card,name = "ROCKCHIP,SPDIF";
simple-audio-card,cpu {
sound-dai = <&spdif>;
};
simple-audio-card,codec {
sound-dai = <&spdif_out>;
};
};
spdif_out: spdif-out {
status = "disabled";
compatible = "linux,spdif-dit";
#sound-dai-cells = <0>;
};
};
&pwm2 {
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>;
};
&cpu_thermal {
trips {
cpu_hot: cpu_hot {
hysteresis = <10000>;
temperature = <55000>;
type = "active";
};
};
cooling-maps {
map2 {
//cooling-device =
// <&fan0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
trip = <&cpu_hot>;
};
};
};
&emmc_phy {
status = "okay";
};
&gpu {
mali-supply = <&vdd_gpu>;
status = "okay";
};
&dfi {
status = "disabled";
};
&dmc {
status = "disabled";
center-supply = <&vdd_center>;
upthreshold = <40>;
downdifferential = <20>;
system-status-freq = <
/*system status freq(KHz)*/
SYS_STATUS_NORMAL 800000
SYS_STATUS_REBOOT 528000
SYS_STATUS_SUSPEND 200000
SYS_STATUS_VIDEO_1080P 200000
SYS_STATUS_VIDEO_4K 600000
SYS_STATUS_VIDEO_4K_10B 800000
SYS_STATUS_PERFORMANCE 800000
SYS_STATUS_BOOST 600000
SYS_STATUS_DUALVIEW 600000
SYS_STATUS_ISP 600000
>;
vop-bw-dmc-freq = <
/* min_bw(MB/s) max_bw(MB/s) freq(KHz) */
0 762 200000
763 1893 400000
1894 3012 528000
3013 99999 800000
>;
auto-freq-en = <1>;
auto-min-freq = <200000>;
};
&spdif {
status = "disabled";
pinctrl-0 = <&spdif_bus>;
i2c-scl-rising-time-ns = <450>;
i2c-scl-falling-time-ns = <15>;
#sound-dai-cells = <0>;
};
&i2c4 {
status = "okay";
};
&sdmmc {
broken-cd;
bus-width = <4>;
cap-mmc-highspeed;
cap-sd-highspeed;
sd-uhs-sdr104;
clock-frequency = <150000000>;
disable-wp;
max-frequency = <150000000>;
pinctrl-names = "default";
pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
vmmc-supply = <&vcc3v0_sd>;
vqmmc-supply = <&vcc_sdio>;
status = "disabled";
};
&saradc {
// vref-supply = <&vcca1v8_s3>;
status = "okay";
};
&sdhci {
bus-width = <8>;
mmc-hs400-1_8v;
mmc-hs400-enhanced-strobe;
non-removable;
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";
};
&uart4 {
status = "disabled";
};
&uart3 {
status = "disabled";
};
&uart2 {
status = "disabled";
};
&uart1 {
status = "disabled";
};
&uart0 {
status = "disabled";
};
&fiq_debugger {
rockchip,serial-id = <2>;
rockchip,wake-irq = <0>;
rockchip,irq-mode-enable = <1>; /* If enable uart uses irq instead of fiq */
rockchip,baudrate = <115200>; /* Only 115200 and 1500000 */
interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH 0>;
pinctrl-names = "default";
pinctrl-0 = <&uart2c_xfer>;
};
&hdmi{
status = "disabled";
};
&hdmi_sound {
status = "disabled";
};
&i2s2 {
status = "disabled";
};
&route_hdmi {
status = "disabled";
};
&hdmi_in_vopl {
status = "disabled";
};
&hdmi_in_vopb {
status = "disabled";
};
&rockchip_suspend {
status = "okay";
rockchip,sleep-debug-en = <1>;
rockchip,sleep-mode-config = <
(0
| RKPM_SLP_ARMPD
| RKPM_SLP_PERILPPD
| RKPM_SLP_DDR_RET
| RKPM_SLP_PLLPD
| RKPM_SLP_CENTER_PD
| RKPM_SLP_AP_PWROFF
)
>;
rockchip,wakeup-config = <
(0
| RKPM_GPIO_WKUP_EN
| RKPM_PWM_WKUP_EN
)
>;
rockchip,pwm-regulator-config = <
(0
| PWM2_REGULATOR_EN
)
>;
rockchip,power-ctrl =
<&gpio1 17 GPIO_ACTIVE_HIGH>,
<&gpio1 14 GPIO_ACTIVE_HIGH>;
};

211
rk3399/rp-rk3399.dts Executable file
View File

@@ -0,0 +1,211 @@
/dts-v1/;
#include "rp-rk3399-board.dtsi"
#include "rp-audio-rt5651.dtsi"
#include "rp-pmu-rk808.dtsi"
#include "rp-usb2-host0.dtsi"
#include "rp-usb2-host1.dtsi"
//#include "rp-usb3-otg-typeA.dtsi"
#include "rp-usb3-otg-typeC.dtsi"
#include "rp-usb3_1-host.dtsi"
#include "rp-gpio-key.dtsi"
#include "rp-adc-key.dtsi"
#include "rp-mipi-ov13850-camera.dtsi"
//#include "rp-hdmiin.dtsi"
#include "rp-wifi-sdio.dtsi"
#include "rp-bt-uart0.dtsi"
#include "rp-sdcard-mmc1.dtsi"
#include "rp-gmac.dtsi"
#include "rp-lcd-hdmi.dtsi"
//#include "rp-lcd-mipi-5-720-1280.dtsi"
#include "rp-lcd-mipi-5-720-1280-v2.dtsi"
//#include "rp-lcd-mipi-5-720-1280-v2-boxTP.dtsi"
//#include "rp-lcd-mipi-5.5-720-1280.dtsi"
//#include "rp-lcd-mipi-5.5-1080-1920.dtsi"
//#include "rp-lcd-mipi-5.5-720-1280-v2.dtsi"
//#include "rp-lcd-mipi-7-1024-600.dtsi"
//#include "rp-lcd-mipi-7-800-1280.dtsi"
//#include "rp-lcd-mipi-7-1200-1920.dtsi"
//#include "rp-lcd-mipi-8-800-1280.dtsi"
//#include "rp-lcd-mipi-8-800-1280-new.dtsi"
//#include "rp-lcd-mipi-10-800-1280.dtsi"
//#include "rp-lcd-mipi-10-1920-1200.dtsi"
//#include "rp-lcd-edp-13.3-1920-1080.dtsi"
/ {
model = "rp-rk3399";
compatible = "rockchip,rk3399-excavator-linux", "rockchip,rk3399";
fan_gpio_control {
compatible = "fan_gpio_control";
gpio-pin = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
thermal-zone = "cpu-thermal";
threshold-temp = <60000>; //60C
running-time = <10000>; //10s
status = "okay";
};
rp_power{
compatible = "rp_power";
rp_not_deep_sleep = <1>;
status = "okay";
/*
* #define GPIO_FUNCTION_OUTPUT 0
* #define GPIO_FUNCTION_INPUT 1
* #define GPIO_FUNCTION_IRQ 2
* #define GPIO_FUNCTION_FLASH 3
* #define GPIO_FUNCTION_OUTPUT_CTRL 4 //output and creat proc ctrl
*
* you can define the gpio function as above
* on gpio_function = <>;
*
*If you want to set the uboot to high level, add the lower properties
* regulator_uboot_on
*/
vddio_en {
gpio_num = <&gpio4 RK_PD6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
power_en {
gpio_num = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
gsm_power_en {
gpio_num = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
uart5_en {
gpio_num = <&gpio4 RK_PD5 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
hub_rst {
gpio_num = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <4>;
regulator_uboot_on;
};
//fan_open {
// gpio_num = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
// gpio_function = <4>;
// regulator_uboot_on;
//};
run_led {
gpio_num = <&gpio4 RK_PD0 GPIO_ACTIVE_HIGH>;
gpio_function = <3>;
regulator_uboot_on;
};
};
rp_gpio{
status = "okay";
compatible = "rp_gpio";
base_value = <0>; //3288_5.1 = 0 3288_7.1.2 = 992 3288_ubuntu = 992 3399_7.1.2 = 1000 3399_ubuntu = 0
gpio4c5 {
gpio_num = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>;
gpio_function = <0>; //0:output1:input
};
};
};
&spi1 {
status = "disabled";
status = "okay";
max-freq = <50000000>;
spi_test:spi_test@0 {
status = "okay";
compatible = "rockchip,spidev";
reg = <0>;
spi-max-frequency = <4000000>;
spi-cpha;
spi-cpol;
cs-gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_LOW>;
};
};
&io_domains {
status = "okay";
bt656-supply = <&vcc_1v8>; /* bt656_gpio2ab_ms */
audio-supply = <&vcca1v8_codec>; /* audio_gpio3d4a_ms */
sdmmc-supply = <&vcc_sdio>; /* sdmmc_gpio4b_ms */
gpio1830-supply = <&vcc_3v0>; /* gpio1833_gpio4cd_ms */
};
&pmu_io_domains {
status = "okay";
pmu1830-supply = <&vcc_1v8>; //king usb
};
//used to bluetooth
&uart0 {
status = "okay";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 0>, <&dmac_peri 1>;
};
//conflicts to ethernet
&uart1 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 2>, <&dmac_peri 3>;
};
//conflicts to debugger
&uart2 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 4>, <&dmac_peri 5>;
};
//conflicts to ethernet
&uart3 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 6>, <&dmac_peri 7>;
};
&uart4 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart4_xfer>;
dma-names = "tx", "rx";
dmas = <&dmac_peri 8>, <&dmac_peri 9>;
};
&fiq_debugger {
rockchip,serial-id = <2>; //uart2
rockchip,wake-irq = <0>;
rockchip,irq-mode-enable = <1>;
compatible = "rockchip,fiq-debugger";
rockchip,baudrate = <115200>;
pinctrl-names = "default";
pinctrl-0 = <&uart2c_xfer>;
};

65
rk3399/rp-sdcard-mmc1.dtsi Executable file
View File

@@ -0,0 +1,65 @@
/{
vcc3v0_sd: vcc3v0-sd {
status = "okay";
compatible = "regulator-fixed";
enable-active-high;
gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&sdmmc0_pwr_h>;
regulator-always-on;
regulator-boot-on;
regulator-max-microvolt = <3000000>;
regulator-min-microvolt = <3000000>;
regulator-name = "vcc3v0_sd";
vin-supply = <&vcc3v3_sys>;
};
};
&sdmmc {
broken-cd;
bus-width = <4>;
cap-mmc-highspeed;
cap-sd-highspeed;
sd-uhs-sdr104;
clock-frequency = <150000000>;
disable-wp;
max-frequency = <150000000>;
pinctrl-names = "default";
pinctrl-0 = <&sdmmc_clk_rp &sdmmc_cmd_rp &sdmmc_cd_rp &sdmmc_bus4_rp>;
vmmc-supply = <&vcc3v0_sd>;
vqmmc-supply = <&vcc_sdio>;
status = "okay";
};
&pinctrl {
sd {
sdmmc0_pwr_h: sdmmc0-pwr-h {
rockchip,pins =
<0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
};
sdmmc_bus4_rp: sdmmc-bus4-rp {
rockchip,pins =
<4 RK_PB0 1 &pcfg_pull_up_8ma>,
<4 RK_PB1 1 &pcfg_pull_up_8ma>,
<4 RK_PB2 1 &pcfg_pull_up_8ma>,
<4 RK_PB3 1 &pcfg_pull_up_8ma>;
};
sdmmc_clk_rp: sdmmc-clk-rp {
rockchip,pins =
<4 RK_PB4 1 &pcfg_pull_none_12ma>;
};
sdmmc_cmd_rp: sdmmc-cmd-rp {
rockchip,pins =
<4 RK_PB5 1 &pcfg_pull_up_8ma>;
};
sdmmc_cd_rp: sdmmc-cd-rp {
rockchip,pins =
<0 RK_PA7 1 &pcfg_pull_up_8ma>;
};
};
};

27
rk3399/rp-spdif.dtsi Executable file
View File

@@ -0,0 +1,27 @@
/{
spdif-sound {
status = "okay";
compatible = "simple-audio-card";
simple-audio-card,name = "ROCKCHIP,SPDIF";
simple-audio-card,cpu {
sound-dai = <&spdif>;
};
simple-audio-card,codec {
sound-dai = <&spdif_out>;
};
};
};
&spdif {
status = "okay";
pinctrl-0 = <&spdif_bus>; //<4 RK_PC5 1 &pcfg_pull_none>;
i2c-scl-rising-time-ns = <450>;
i2c-scl-falling-time-ns = <15>;
#sound-dai-cells = <0>;
};
&spdif_out {
status = "okay";
compatible = "linux,spdif-dit";
#sound-dai-cells = <0>;
};

18
rk3399/rp-spi1-uart.dtsi Executable file
View File

@@ -0,0 +1,18 @@
&spi1 {
status = "okay";
spi_wk2xxx: spi_wk2xxx@0{
status = "okay";
compatible = "spi-wk2xxx";
reg = <0>;
spi-max-frequency = <10000000>;
reset-gpio = <&gpio4 29 GPIO_ACTIVE_HIGH>;
irq-gpio = <&gpio1 20 IRQ_TYPE_EDGE_FALLING>;
cs-gpio = <&gpio1 10 GPIO_ACTIVE_HIGH>;
};
};
&uart4 {
status = "disabled";
};

45
rk3399/rp-uarts.dtsi Executable file
View File

@@ -0,0 +1,45 @@
//used to bluetooth
&uart0 {
status = "okay";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 0>, <&dmac_peri 1>;
};
//conflicts to ethernet
&uart1 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 2>, <&dmac_peri 3>;
};
//conflicts to debugger
&uart2 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 4>, <&dmac_peri 5>;
};
//conflicts to ethernet
&uart3 {
status = "disabled";
//dma-names = "tx", "rx";
//dmas = <&dmac_peri 6>, <&dmac_peri 7>;
};
&uart4 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart4_xfer>;
dma-names = "tx", "rx";
dmas = <&dmac_peri 8>, <&dmac_peri 9>;
};
&fiq_debugger {
rockchip,serial-id = <2>; //uart2
rockchip,wake-irq = <0>;
rockchip,irq-mode-enable = <1>;
compatible = "rockchip,fiq-debugger";
rockchip,baudrate = <115200>;
pinctrl-names = "default";
pinctrl-0 = <&uart2c_xfer>;
};

77
rk3399/rp-usb-typea.dtsi Executable file
View File

@@ -0,0 +1,77 @@
&cdn_dp {
status = "disabled";
phys = <&tcphy0_dp>;
};
&tcphy0 {
status = "okay";
};
&tcphy1 {
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";
};
};
&usbdrd3_0 {
status = "okay";
};
&usbdrd3_1 {
status = "okay";
};
&usbdrd_dwc3_0 {
status = "okay";
dr_mode = "device";
usb3-power-gpio = <&gpio0 6 GPIO_ACTIVE_HIGH>; //4 26
};
&usbdrd_dwc3_1 {
status = "okay";
dr_mode = "host";
};
&usb_host0_ehci {
status = "okay";
};
&usb_host0_ohci {
status = "okay";
};
&usb_host1_ehci {
status = "okay";
};
&usb_host1_ohci {
status = "okay";
};

177
rk3399/rp-usb-typec.dtsi Executable file
View File

@@ -0,0 +1,177 @@
#include "dt-bindings/usb/pd.h"
/ {
vcc5v0_usb: vcc5v0-usb {
compatible = "regulator-fixed";
regulator-name = "vcc5v0_usb";
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
vbus_typec: vbus5v0-typec {
compatible = "regulator-fixed";
regulator-name = "vbus_typec";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
enable-active-high;
gpio = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>;
vin-supply = <&vcc5v0_usb>;
pinctrl-names = "default";
pinctrl-0 = <&typec5v_pwren>;
};
};
&i2c4 {
status = "okay";
usbc0: fusb302@22 {
compatible = "fcs,fusb302";
reg = <0x22>;
interrupt-parent = <&gpio1>;
interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&usbc0_int>;
vbus-supply = <&vbus_typec>;
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
usbc0_role_sw: endpoint@0 {
remote-endpoint = <&dwc3_0_role_switch>;
};
};
};
usb_con: connector {
compatible = "usb-c-connector";
label = "USB-C";
data-role = "dual";
power-role = "dual";
try-power-role = "sink";
op-sink-microwatt = <1000000>;
sink-pdos =
<PDO_FIXED(5000, 2500, PDO_FIXED_USB_COMM)>;
source-pdos =
<PDO_FIXED(5000, 1500, PDO_FIXED_USB_COMM)>;
altmodes {
#address-cells = <1>;
#size-cells = <0>;
altmode@0 {
reg = <0>;
svid = <0xff01>;
vdo = <0xffffffff>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
usbc0_orien_sw: endpoint {
remote-endpoint = <&usbdp_phy0_orientation_switch>;
};
};
};
};
};
};
&u2phy0 {
status = "okay";
u2phy0_otg: otg-port {
status = "okay";
};
u2phy0_host: host-port {
phy-supply = <&vcc5v0_usb>;
status = "okay";
};
};
&u2phy1 {
status = "okay";
u2phy1_otg: otg-port {
status = "okay";
};
u2phy1_host: host-port {
status = "okay";
};
};
&tcphy0 {
status = "okay";
svid = <0xff01>;
orientation-switch;
port {
#address-cells = <1>;
#size-cells = <0>;
usbdp_phy0_orientation_switch: endpoint@0 {
reg = <0>;
remote-endpoint = <&usbc0_orien_sw>;
};
};
};
&usbdrd3_0 {
status = "okay";
};
&usbdrd_dwc3_0 {
status = "okay";
usb-role-switch;
port {
#address-cells = <1>;
#size-cells = <0>;
dwc3_0_role_switch: endpoint@0 {
reg = <0>;
remote-endpoint = <&usbc0_role_sw>;
};
};
};
&usb_host0_ehci {
status = "okay";
};
&usb_host0_ohci {
status = "okay";
};
&usb_host1_ehci {
status = "okay";
};
&usb_host1_ohci {
status = "okay";
};
&pinctrl {
usb-typec {
usbc0_int: usbc0-int {
rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
};
typec5v_pwren: typec5v-pwren {
rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

21
rk3399/rp-usb2-host0.dtsi Executable file
View File

@@ -0,0 +1,21 @@
//USB2.0-host0
&u2phy0 {
status = "okay";
u2phy0_host: host-port {
status = "okay";
};
};
&usb_host0_ehci {
status = "okay";
phys = <&u2phy0_host>;
phy-names = "usb";
};
&usb_host0_ohci {
status = "okay";
phys = <&u2phy0_host>;
phy-names = "usb";
};

21
rk3399/rp-usb2-host1.dtsi Executable file
View File

@@ -0,0 +1,21 @@
//USB2.0-host1
&u2phy1 {
status = "okay";
u2phy1_host: host-port {
status = "okay";
};
};
&usb_host1_ehci {
status = "okay";
phys = <&u2phy1_host>;
phy-names = "usb";
};
&usb_host1_ohci {
status = "okay";
phys = <&u2phy1_host>;
phy-names = "usb";
};

72
rk3399/rp-usb3-otg-typeA.dtsi Executable file
View File

@@ -0,0 +1,72 @@
//USB3.0-otg-typec
/ {
vcc5v0_usb: vcc5v0-usb {
compatible = "regulator-fixed";
regulator-name = "vcc5v0_usb";
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
vcc_otg_vbus: otg-vbus-regulator {
compatible = "regulator-fixed";
regulator-name = "vcc_otg_vbus";
//regulator-min-microvolt = <5000000>;
//regulator-max-microvolt = <5000000>;
enable-active-low;
//regulator-always-on;
gpio = <&gpio4 RK_PD2 GPIO_ACTIVE_LOW>;
vin-supply = <&vcc5v0_usb>;
pinctrl-names = "default";
pinctrl-0 = <&otg_vbus_drv>;
};
};
&pinctrl {
usb{
otg_vbus_drv: otg-vbus-drv {
rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};
&u2phy0 {
status = "okay";
u2phy0_otg: otg-port {
vbus-supply = <&vcc_otg_vbus>;
status = "okay";
};
};
&tcphy0{
status = "okay";
tcphy0_usb3: usb3-port {
#phy-cells = <0>;
};
};
&cdn_dp {
compatible = "rockchip,rk3399-cdn-dp";
phys = <&tcphy0_dp>, <&tcphy1_dp>;
status = "disabled";
};
&usbdrd3_0{
status = "okay";
};
&usbdrd_dwc3_0 {
dr_mode = "otg"; //device or host
extcon = <&u2phy0>;
phys = <&u2phy0_otg>, <&tcphy0_usb3>;
phy-names = "usb2-phy", "usb3-phy";
status = "okay";
};

153
rk3399/rp-usb3-otg-typeC.dtsi Executable file
View File

@@ -0,0 +1,153 @@
//USB3.0-otg-typec
#include "dt-bindings/usb/pd.h"
/ {
vcc5v0_usb: vcc5v0-usb {
compatible = "regulator-fixed";
regulator-name = "vcc5v0_usb";
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
vbus_typec: vbus5v0-typec {
compatible = "regulator-fixed";
regulator-name = "vbus_typec";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
enable-active-high;
gpio = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>;
vin-supply = <&vcc5v0_usb>;
pinctrl-names = "default";
pinctrl-0 = <&typec5v_pwren>;
};
};
&i2c4 {
status = "okay";
usbc0: fusb302@22 {
compatible = "fcs,fusb302";
reg = <0x22>;
interrupt-parent = <&gpio1>;
interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&usbc0_int>;
vbus-supply = <&vbus_typec>;
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
usbc0_role_sw: endpoint@0 {
remote-endpoint = <&dwc3_0_role_switch>;
};
};
};
usb_con: connector {
compatible = "usb-c-connector";
label = "USB-C";
data-role = "dual";
power-role = "dual";
try-power-role = "sink";
op-sink-microwatt = <1000000>;
sink-pdos =
<PDO_FIXED(5000, 2500, PDO_FIXED_USB_COMM)>;
source-pdos =
<PDO_FIXED(5000, 1500, PDO_FIXED_USB_COMM)>;
altmodes {
#address-cells = <1>;
#size-cells = <0>;
altmode@0 {
reg = <0>;
svid = <0xff01>;
vdo = <0xffffffff>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
usbc0_orien_sw: endpoint {
remote-endpoint = <&usbdp_phy0_orientation_switch>;
};
};
};
};
};
};
&u2phy0 {
status = "okay";
u2phy0_otg: otg-port {
status = "okay";
};
};
&tcphy0 {
status = "okay";
svid = <0xff01>;
orientation-switch;
tcphy0_dp: dp-port {
#phy-cells = <0>;
};
tcphy0_usb3: usb3-port {
#phy-cells = <0>;
};
port {
#address-cells = <1>;
#size-cells = <0>;
usbdp_phy0_orientation_switch: endpoint@0 {
reg = <0>;
remote-endpoint = <&usbc0_orien_sw>;
};
};
};
&usbdrd3_0 {
status = "okay";
};
&usbdrd_dwc3_0 {
status = "okay";
usb-role-switch;
phys = <&u2phy0_otg>, <&tcphy0_usb3>;
phy-names = "usb2-phy", "usb3-phy";
port {
#address-cells = <1>;
#size-cells = <0>;
dwc3_0_role_switch: endpoint@0 {
reg = <0>;
remote-endpoint = <&usbc0_role_sw>;
};
};
};
&cdn_dp {
status = "disabled";
};
&pinctrl {
usb-typec {
usbc0_int: usbc0-int {
rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
};
typec5v_pwren: typec5v-pwren {
rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

37
rk3399/rp-usb3_1-host.dtsi Executable file
View File

@@ -0,0 +1,37 @@
//USB3.1 HOST
&u2phy1 {
status = "okay";
u2phy1_otg: otg-port {
status = "okay";
};
};
&usbdrd3_1 {
status = "okay";
};
&tcphy1 {
status = "okay";
tcphy1_dp: dp-port {
#phy-cells = <0>;
};
tcphy1_usb3: usb3-port {
#phy-cells = <0>;
};
};
&cdn_dp {
compatible = "rockchip,rk3399-cdn-dp";
phys = <&tcphy0_dp>, <&tcphy1_dp>;
status = "disabled";
};
&usbdrd_dwc3_1 {
status = "okay";
dr_mode = "host";
phy-names = "usb2-phy", "usb3-phy";
phys = <&u2phy1_otg>, <&tcphy1_usb3>;
};

72
rk3399/rp-wifi-sdio.dtsi Executable file
View File

@@ -0,0 +1,72 @@
/ {
/*sdio_pwrseq: sdio-pwrseq {
compatible = "mmc-pwrseq-simple";
clocks = <&rk808 1>;
clock-names = "ext_clock";
pinctrl-names = "default";
pinctrl-0 = <&wifi_enable_h>;
/*
* On the module itself this is one of these (depending
* on the actual card populated):
* - SDIO_RESET_L_WL_REG_ON
* - PDN (power down when low)
*/
/* reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; /* GPIO0_B2 */
// };
wireless_wlan: wireless-wlan {
compatible = "wlan-platdata";
rockchip,grf = <&grf>;
wifi_chip_type = "ap6210";
sdio_vref = <1800>;
pinctrl-names = "default";
pinctrl-0 = <&wifi_host_wake_irq>, <&wifi_enable_h>;
WIFI,host_wake_irq = <&gpio0 RK_PA3 GPIO_ACTIVE_HIGH>; /* GPIO0_a3 */
WIFI,poweren_gpio = <&gpio0 RK_PB2 GPIO_ACTIVE_HIGH>;
status = "okay";
};
};
&sdio0 {
max-frequency = <150000000>;
no-sd;
no-mmc;
bus-width = <4>;
disable-wp;
cap-sd-highspeed;
cap-sdio-irq;
keep-power-in-suspend;
//mmc-pwrseq = <&sdio_pwrseq>;
non-removable;
num-slots = <1>;
pinctrl-names = "default";
pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
sd-uhs-sdr104;
status = "okay";
};
/*&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_xfer &uart0_cts>;
status = "okay";
};
*/
&pinctrl {
/*sdio-pwrseq {
wifi_enable_h: wifi-enable-h {
rockchip,pins =
<0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
};
*/
wireless-wlan {
wifi_host_wake_irq: wifi-host-wake-irq {
rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_down>;
};
wifi_enable_h: wifi-enable-h {
rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
};