20250410在荣品的PRO-RK3566开发板使用Rockchip原厂的buildroot系统时匹配AP6256的步骤

root@rk3566-buildroot:/# cd /sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl
root@rk3566-buildroot:/sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl# ls -l
root@rk3566-buildroot:/sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl# cat pinmux-pins
root@rk3566-buildroot:/sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl# cd /sys/kernel/debug/
root@rk3566-buildroot:/sys/kernel/debug#
root@rk3566-buildroot:/sys/kernel/debug# cat gpio


20250410在荣品的PRO-RK3566开发板使用Rockchip原厂的buildroot系统时匹配AP6256的步骤
2025/4/10 14:28


缘起:使用原厂的sdk
然后找一片开发板 比如PRO-rk3566
用原厂的sdk适配好全部功能/模块
你就对这个平台rk3566熟悉的 七七八八了


直接使用荣品的DTS,适配 Rockchip原厂的buildroot系统: RK3566_Linux5.10_V1.2.0_20241022.tar.gz。
WIFI/BT模块AP6256的功能都是正常的。
定位到问题出在DTS里了。


现在开始修改DTS。


根据经验/很容易知道/很不容易得知/很艰难地找到:
Z:\RK3566_RK3568_Linux5.10_V1.2.0\kernel\arch\arm64\boot\dts\rockchip11荣品DTS+gc2093\pro-rk3566.dts
对应:
Z:\RK3566_RK3568_Linux5.10_V1.2.0\kernel\arch\arm64\boot\dts\rockchip\rk3566-evb2-lp4x-v10.dtsi


Z:\RK3566_RK3568_Linux5.10_V1.2.0\kernel\arch\arm64\boot\dts\rockchip11荣品DTS+gc2093\rk3566-evb-rpdzkj-rk809-tcs4525.dtsi
对应:
Z:\RK3566_RK3568_Linux5.10_V1.2.0\kernel\arch\arm64\boot\dts\rockchip\rk3568-evb.dtsi


匹配的过程中,出现了一个问题。
对应的代码块都移植了/全部代码块都对应上了,但是AP6256的WIFI/BT还是/都打不开。
反复比对gpio口的状态。定位在

Z:\RK3566_RK3568_Linux5.10_V1.2.0\kernel\arch\arm64\boot\dts\rockchip73\rk3566-evb2-lp4x-v10.dtsi
多了一点代码:

&sdio_pwrseq {
    reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
};


直接屏蔽掉,或者修改正确就可以了!
//&sdio_pwrseq {
//    reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
//};

扫描二维码关注公众号,回复: 17603266 查看本文章


确认问题出在 reset 引脚上了!
异常:
gpiochip2: GPIOs 64-95, parent: platform/fe750000.gpio2, gpio2:
 gpio-73  (                    |reset               ) out lo ACTIVE LOW
 gpio-85  (                    |pwdn                ) out hi 

正确:
gpiochip3: GPIOs 96-127, parent: platform/fe760000.gpio3, gpio3:
 gpio-97  (                    |headset_gpio        ) in  lo 
 gpio-125 (                    |reset               ) out hi ACTIVE LOW


刷机之后启动:
root@rk3566-buildroot:/# 
root@rk3566-buildroot:/# ifconfig
eth0      Link encap:Ethernet  HWaddr AE:41:C6:78:5D:9B  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:48 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:576 (576.0 B)  TX bytes:576 (576.0 B)

wlan0     Link encap:Ethernet  HWaddr 70:F7:54:9A:5F:9A  
          inet6 addr: fe80::72f7:54ff:fe9a:5f9a/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:446 (446.0 B)

root@rk3566-buildroot:/# 

Z:\RK3566_RK3568_Linux5.10_V1.2.0\kernel\arch\arm64\boot\dts\rockchip\rk3566-evb2-lp4x-v10.dtsi
 

// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (c) 2020 Rockchip Electronics Co., Ltd.
 *
 */

/dts-v1/;

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/display/media-bus-format.h>
#include <dt-bindings/pinctrl/rockchip.h>
#include "rk3566.dtsi"
#include "rk3566-evb.dtsi"

/ {
    model = "Rockchip RK3566 EVB2 LP4X V10 Board";
    compatible = "rockchip,rk3566-evb2-lp4x-v10", "rockchip,rk3566";

        vcc_camera: vcc-camera-regulator {
                compatible = "regulator-fixed";
                gpio = <&gpio0 RK_PC1 GPIO_ACTIVE_HIGH>;
                pinctrl-names = "default";
                pinctrl-0 = <&camera_pwr>;
                regulator-name = "vcc_camera";
                enable-active-high;
                regulator-always-on;
                regulator-boot-on;
        };

    vcc3v3_pcie: vcc3v3-pcie {
        compatible = "regulator-fixed";
        regulator-name = "vcc3v3_pcie";
        regulator-min-microvolt = <3300000>;
        regulator-max-microvolt = <3300000>;
        enable-active-high;
        gpio = <&gpio0 RK_PC2 GPIO_ACTIVE_HIGH>;
        startup-delay-us = <5000>;
        vin-supply = <&dc_12v>;
    };
};

&bt_sound {
    status = "disabled";
    simple-audio-card,cpu {
        sound-dai = <&i2s2_2ch>;
    };
};

&combphy1_usq {
    status = "okay";
};

&combphy2_psq {
    status = "okay";
};

&csi2_dphy_hw {
        status = "okay";
};

//&csi2_dphy0 {
//    status = "okay";
//    /*
//     * dphy0 only used for full mode,
//     * full mode and split mode are mutually exclusive
//     */
//    ports {
//        #address-cells = <1>;
//        #size-cells = <0>;
//
//        port@0 {
//            reg = <0>;
//            #address-cells = <1>;
//            #size-cells = <0>;
//
//            dphy0_in: endpoint@1 {
//                reg = <1>;
//                remote-endpoint = <&gc8034_out>;
//                data-lanes = <1 2 3 4>;
//            };
//
//            mipi_in_ucam1: endpoint@2 {
//                reg = <2>;
//                remote-endpoint = <&ov5695_out>;
//                data-lanes = <1 2>;
//            };
//
//            mipi_in_ucam2: endpoint@3 {
//                reg = <3>;
//                remote-endpoint = <&gc5025_out>;
//                data-lanes = <1 2>;
//            };
//        };
//
//        //port@1 {
//        //    reg = <1>;
//        //    #address-cells = <1>;
//        //    #size-cells = <0>;
//                //
//        //    dphy0_out: endpoint@1 {
//        //        reg = <1>;
//        //        remote-endpoint = <&isp0_in_dphy0>;
//        //    };
//        //};
//    };
//};

&csi2_dphy1 {
        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>;

                        csidphy_out: endpoint@0 {
                                reg = <0>;
                                remote-endpoint = <&isp0_in>;
                        };
                };
        };
};

//&csi2_dphy2 {
//    status = "disabled";
//
//    /*
//     * dphy2 only used for split mode,
//     * can be used  concurrently  with dphy1
//     * full mode and split mode are mutually exclusive
//     */
//    ports {
//        #address-cells = <1>;
//        #size-cells = <0>;
//
//        port@0 {
//            reg = <0>;
//            #address-cells = <1>;
//            #size-cells = <0>;
//
//            dphy2_in: endpoint@1 {
//                reg = <1>;
//                //remote-endpoint = <&gc5025_out>;
//                data-lanes = <1 2>;
//            };
//        };
//
//        port@1 {
//            reg = <1>;
//            #address-cells = <1>;
//            #size-cells = <0>;
//
//            dphy2_out: endpoint@1 {
//                reg = <1>;
//                remote-endpoint = <&mipi_csi2_input>;
//            };
//        };
//    };
//};

///*
// * video_phy0 needs to be enabled
// * when dsi0 is enabled
// */
//&dsi0 {
//    status = "okay";
//};
//
//&dsi0_in_vp0 {
//    status = "disabled";
//};
//
//&dsi0_in_vp1 {
//    status = "okay";
//};
//
//&dsi0_panel {
//    power-supply = <&vcc3v3_lcd0_n>;
//    reset-gpios = <&gpio3 RK_PA3 GPIO_ACTIVE_LOW>;
//    pinctrl-names = "default";
//    pinctrl-0 = <&lcd0_rst_gpio>;
//};
//
///*
// * video_phy1 needs to be enabled
// * when dsi1 is enabled
// */
//&dsi1 {
//    status = "disabled";
//};
//
//&dsi1_in_vp0 {
//    status = "disabled";
//};
//
//&dsi1_in_vp1 {
//    status = "disabled";
//};
//
//&dsi1_panel {
//    power-supply = <&vcc3v3_lcd1_n>;
//    reset-gpios = <&gpio3 RK_PA4 GPIO_ACTIVE_LOW>;
//    pinctrl-names = "default";
//    pinctrl-0 = <&lcd1_rst_gpio>;
//};

&gmac1 {
        phy-mode = "rgmii";
        clock_in_out = "input";

        snps,reset-gpio = <&gpio3 RK_PB4 GPIO_ACTIVE_LOW>;
        snps,reset-active-low;
        /* Reset time is 20ms, 100ms for rtl8211f */
        snps,reset-delays-us = <0 20000 100000>;

        assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>, <&cru CLK_MAC1_OUT>;
        assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>,<&gmac1_clkin>;
        assigned-clock-rates = <0>, <125000000>, <25000000>;

        pinctrl-names = "default";
        pinctrl-0 = <&gmac1m0_miim
                     &gmac1m0_tx_bus2
                     &gmac1m0_rx_bus2
                     &gmac1m0_rgmii_clk
                     &gmac1m0_rgmii_bus
                        &gmac1m0_clkinout
            &eth1m0_pins>;

        tx_delay = <0x3a>;
        rx_delay = <0x29>;
        phy-handle = <&rgmii_phy1>;
        status = "okay";
};

&i2c2 {
        status = "okay";
    pinctrl-name = "default";
    pinctrl-0 = <&i2c2m1_xfer>;
        gc2093: gc2093@37 {
                compatible = "galaxycore,gc2093";
                status = "okay";
                reg = <0x37>;
                clocks = <&cru CLK_CAM0_OUT>;
                clock-names = "xvclk";
                power-domains = <&power RK3568_PD_VI>;
                pinctrl-names = "default";
                pinctrl-0 = <&cam_clkout0>;
            pwdn-gpios = <&gpio2 RK_PC5 GPIO_ACTIVE_HIGH>;
            reset-gpios = <&gpio4 RK_PC0 GPIO_ACTIVE_LOW>;
                rockchip,camera-module-index = <0>;
                rockchip,camera-module-facing = "back";
                rockchip,camera-module-name = "SIDB205300385-VA";
                rockchip,camera-module-lens-name = "default";
                port {
                        ucam_out0: endpoint {
                                remote-endpoint = <&mipi_in_ucam0>;
                                data-lanes = <1 2>;
                        };
                };
        };
};

//&i2c4 {
//    /* i2c4 sda conflict with camera pwdn */
//    status = "disabled";
//
//    /*
//     * gc2145 needs to be disabled,
//     * when gmac1 is enabled;
//     * pinctrl conflicts;
//     */
//    gc2145: gc2145@3c {
//        status = "disabled";
//        compatible = "galaxycore,gc2145";
//        reg = <0x3c>;
//        clocks = <&cru CLK_CIF_OUT>;
//        clock-names = "xvclk";
//        power-domains = <&power RK3568_PD_VI>;
//        pinctrl-names = "default";
//        /* conflict with gmac1m1_rgmii_pins & cif_clk*/
//        pinctrl-0 = <&cif_clk &cif_dvp_clk &cif_dvp_bus16>;
//
//        /*avdd-supply = <&vcc2v8_dvp>;*/
//        /*dovdd-supply = <&vcc1v8_dvp>;*/
//        /*dvdd-supply = <&vcc1v8_dvp>;*/
//
//        /*reset-gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_LOW>;*/
//        pwdn-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
//        rockchip,camera-module-index = <0>;
//        rockchip,camera-module-facing = "back";
//        rockchip,camera-module-name = "CameraKing";
//        rockchip,camera-module-lens-name = "Largan";
//        port {
//            gc2145_out: endpoint {
//                remote-endpoint = <&dvp_in_bcam>;
//            };
//        };
//    };
//};

&i2s2_2ch {
    pinctrl-0 = <&i2s2m0_sclktx &i2s2m0_lrcktx &i2s2m0_sdi &i2s2m0_sdo>;
    rockchip,bclk-fs = <32>;
    status = "disabled";
};

&mdio1 {
        rgmii_phy1: phy@0 {
                compatible = "ethernet-phy-ieee802.3-c22";
                reg = <0x0>;
        clocks = <&cru CLK_MAC1_OUT>;
        };
};

///*
// * power-supply should switche to vcc3v3_lcd1_n
// * when mipi panel is connected to dsi1.
// */
//&gt1x {
//    power-supply = <&vcc3v3_lcd0_n>;
//};

//&mipi_csi2 {
//    status = "okay";
//
//    ports {
//        #address-cells = <1>;
//        #size-cells = <0>;
//
//        port@0 {
//            reg = <0>;
//            #address-cells = <1>;
//            #size-cells = <0>;
//
//            mipi_csi2_input: endpoint@1 {
//                reg = <1>;
//                remote-endpoint = <&dphy2_out>;
//                data-lanes = <1 2>;
//            };
//        };
//
//        port@1 {
//            reg = <1>;
//            #address-cells = <1>;
//            #size-cells = <0>;
//
//            mipi_csi2_output: endpoint@0 {
//                reg = <0>;
//                remote-endpoint = <&cif_mipi_in>;
//                data-lanes = <1 2>;
//            };
//        };
//    };
//};

&video_phy0 {
    status = "okay";
};

&video_phy1 {
    status = "disabled";
};

&pcie2x1 {
    reset-gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;
    vpcie3v3-supply = <&vcc3v3_pcie>;
    status = "okay";
};

&pinctrl {
        cam {
                camera_pwr: camera-pwr {
                        rockchip,pins =
                                /* camera power en */
                                <0 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
                };
        };

    sdio-pwrseq {
        wifi_enable_h: wifi-enable-h {
            rockchip,pins = <3 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
        };
    };


    wireless-wlan {
        wifi_host_wake_irq: wifi-host-wake-irq {
            rockchip,pins = <3 RK_PD4 RK_FUNC_GPIO &pcfg_pull_down>;
        };
    };

    wireless-bluetooth {
        uart1_gpios: uart1-gpios {
            rockchip,pins = <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
        };
    };

    //lcd0 {
    //    lcd0_rst_gpio: lcd0-rst-gpio {
    //        rockchip,pins = <3 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
    //    };
    //};
        //
    //lcd1 {
    //    lcd1_rst_gpio: lcd1-rst-gpio {
    //        rockchip,pins = <3 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
    //    };
    //};
};

&rkcif {
    status = "okay";
};

//&rkcif_dvp {
//    status = "disabled";
//
//    port {
//        /* Parallel bus endpoint */
//        dvp_in_bcam: endpoint {
//            remote-endpoint = <&gc2145_out>;
//            bus-width = <8>;
//            vsync-active = <0>;
//            hsync-active = <1>;
//        };
//    };
//};

//&rkcif_mipi_lvds {
//    status = "okay";
//
//    port {
//        cif_mipi_in: endpoint {
//            remote-endpoint = <&mipi_csi2_output>;
//            data-lanes = <1 2>;
//        };
//    };
//};

&rkcif_mmu {
    status = "okay";
};

&rkisp {
        status = "okay";
};

&rkisp_mmu {
        status = "okay";
};

&rkisp_vir0 {
        status = "okay";

        port {
                #address-cells = <1>;
                #size-cells = <0>;

                isp0_in: endpoint@0 {
                        reg = <0>;
                        remote-endpoint = <&csidphy_out>;
                };
        };
};

//&route_dsi0 {
//    status = "okay";
//    connect = <&vp1_out_dsi0>;
//};

&sdmmc2 {
    max-frequency = <150000000>;
    supports-sdio;
    bus-width = <4>;
    disable-wp;
    cap-sd-highspeed;
    cap-sdio-irq;
    keep-power-in-suspend;
    mmc-pwrseq = <&sdio_pwrseq>;
    non-removable;
    pinctrl-names = "default";
    pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_cmd &sdmmc2m0_clk>;
    sd-uhs-sdr104;
    status = "okay";
};

//&sdmmc1 {
//    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;
//    pinctrl-names = "default";
//    pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>;
//    sd-uhs-sdr104;
//    status = "okay";
//};

//&sdio_pwrseq {
//    reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
//};

&spdif_8ch {
    status = "okay";
    pinctrl-names = "default";
    pinctrl-0 = <&spdifm1_tx>;
};

&uart1 {
    status = "okay";
    pinctrl-names = "default";
    pinctrl-0 = <&uart1m1_xfer &uart1m1_ctsn>;
};

//&vcc3v3_lcd0_n {
//    gpio = <&gpio0 RK_PC7 GPIO_ACTIVE_HIGH>;
//    enable-active-high;
//};
//
//&vcc3v3_lcd1_n {
//    gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
//    enable-active-high;
//};

&wireless_wlan {
    pinctrl-names = "default";
    pinctrl-0 = <&wifi_host_wake_irq>;
    WIFI,host_wake_irq = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>;
};

&work_led {
    gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
};

&wireless_bluetooth {
    uart_rts_gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_LOW>;
    pinctrl-names = "default", "rts_gpio";
    pinctrl-0 = <&uart1m1_rtsn>;
    pinctrl-1 = <&uart1_gpios>;
    BT,reset_gpio    = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
    BT,wake_gpio     = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
    BT,wake_host_irq = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>;
    status = "okay";
};

 

Z:\RK3566_RK3568_Linux5.10_V1.2.0\kernel\arch\arm64\boot\dts\rockchip\rk3568-evb.dtsi

// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (c) 2020 Rockchip Electronics Co., Ltd.
 *
 */

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/pwm/pwm.h>
#include <dt-bindings/pinctrl/rockchip.h>
#include <dt-bindings/input/rk-input.h>
#include <dt-bindings/display/drm_mipi_dsi.h>
#include <dt-bindings/sensor-dev.h>

/ {

    adc_keys: adc-keys {
        compatible = "adc-keys";
        io-channels = <&saradc 0>;
        io-channel-names = "buttons";
        keyup-threshold-microvolt = <1800000>;
        poll-interval = <100>;

        vol-up-key {
            label = "volume up";
            linux,code = <KEY_VOLUMEUP>;
            press-threshold-microvolt = <1750>;
        };

        vol-down-key {
            label = "volume down";
            linux,code = <KEY_VOLUMEDOWN>;
            press-threshold-microvolt = <297500>;
        };

        menu-key {
            label = "menu";
            linux,code = <KEY_MENU>;
            press-threshold-microvolt = <980000>;
        };

        back-key {
            label = "back";
            linux,code = <KEY_BACK>;
            press-threshold-microvolt = <1305500>;
        };
    };

    audiopwmout_diff: audiopwmout-diff {
        status = "disabled";
        compatible = "simple-audio-card";
        simple-audio-card,format = "i2s";
        simple-audio-card,name = "rockchip,audiopwmout-diff";
        simple-audio-card,mclk-fs = <256>;
        simple-audio-card,bitclock-master = <&master>;
        simple-audio-card,frame-master = <&master>;
        simple-audio-card,cpu {
            sound-dai = <&i2s3_2ch>;
        };
        master: simple-audio-card,codec {
            sound-dai = <&dig_acodec>;
        };
    };

    backlight: backlight {
        compatible = "pwm-backlight";
        pwms = <&pwm4 0 25000 0>;
        brightness-levels = <
              0  20  20  21  21  22  22  23
             23  24  24  25  25  26  26  27
             27  28  28  29  29  30  30  31
             31  32  32  33  33  34  34  35
             35  36  36  37  37  38  38  39
             40  41  42  43  44  45  46  47
             48  49  50  51  52  53  54  55
             56  57  58  59  60  61  62  63
             64  65  66  67  68  69  70  71
             72  73  74  75  76  77  78  79
             80  81  82  83  84  85  86  87
             88  89  90  91  92  93  94  95
             96  97  98  99 100 101 102 103
            104 105 106 107 108 109 110 111
            112 113 114 115 116 117 118 119
            120 121 122 123 124 125 126 127
            128 129 130 131 132 133 134 135
            136 137 138 139 140 141 142 143
            144 145 146 147 148 149 150 151
            152 153 154 155 156 157 158 159
            160 161 162 163 164 165 166 167
            168 169 170 171 172 173 174 175
            176 177 178 179 180 181 182 183
            184 185 186 187 188 189 190 191
            192 193 194 195 196 197 198 199
            200 201 202 203 204 205 206 207
            208 209 210 211 212 213 214 215
            216 217 218 219 220 221 222 223
            224 225 226 227 228 229 230 231
            232 233 234 235 236 237 238 239
            240 241 242 243 244 245 246 247
            248 249 250 251 252 253 254 255
        >;
        default-brightness-level = <200>;
    };

    backlight1: backlight1 {
        compatible = "pwm-backlight";
        pwms = <&pwm5 0 25000 0>;
        brightness-levels = <
              0  20  20  21  21  22  22  23
             23  24  24  25  25  26  26  27
             27  28  28  29  29  30  30  31
             31  32  32  33  33  34  34  35
             35  36  36  37  37  38  38  39
             40  41  42  43  44  45  46  47
             48  49  50  51  52  53  54  55
             56  57  58  59  60  61  62  63
             64  65  66  67  68  69  70  71
             72  73  74  75  76  77  78  79
             80  81  82  83  84  85  86  87
             88  89  90  91  92  93  94  95
             96  97  98  99 100 101 102 103
            104 105 106 107 108 109 110 111
            112 113 114 115 116 117 118 119
            120 121 122 123 124 125 126 127
            128 129 130 131 132 133 134 135
            136 137 138 139 140 141 142 143
            144 145 146 147 148 149 150 151
            152 153 154 155 156 157 158 159
            160 161 162 163 164 165 166 167
            168 169 170 171 172 173 174 175
            176 177 178 179 180 181 182 183
            184 185 186 187 188 189 190 191
            192 193 194 195 196 197 198 199
            200 201 202 203 204 205 206 207
            208 209 210 211 212 213 214 215
            216 217 218 219 220 221 222 223
            224 225 226 227 228 229 230 231
            232 233 234 235 236 237 238 239
            240 241 242 243 244 245 246 247
            248 249 250 251 252 253 254 255
        >;
        default-brightness-level = <200>;
    };

    bt_sco: bt-sco {
        status = "disabled";
        compatible = "delta,dfbmcs320";
        #sound-dai-cells = <1>;
    };

    bt_sound: bt-sound {
        status = "disabled";
        compatible = "simple-audio-card";
        simple-audio-card,format = "dsp_a";
        simple-audio-card,bitclock-inversion;
        simple-audio-card,mclk-fs = <256>;
        simple-audio-card,name = "rockchip,bt";
        simple-audio-card,cpu {
            sound-dai = <&i2s3_2ch>;
        };
        simple-audio-card,codec {
            sound-dai = <&bt_sco 1>;
        };
    };

    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>;
    };

    hdmi_sound: hdmi-sound {
        compatible = "simple-audio-card";
        simple-audio-card,format = "i2s";
        simple-audio-card,mclk-fs = <128>;
        simple-audio-card,name = "rockchip,hdmi";
        status = "disabled";

        simple-audio-card,cpu {
                sound-dai = <&i2s0_8ch>;
        };
        simple-audio-card,codec {
                sound-dai = <&hdmi>;
        };
    };

    leds: leds {
        compatible = "gpio-leds";
        work_led: work {
            gpios = <&gpio0 RK_PC0 GPIO_ACTIVE_HIGH>;
            linux,default-trigger = "heartbeat";
        };
    };

    pdmics: dummy-codec {
        status = "disabled";
        compatible = "rockchip,dummy-codec";
        #sound-dai-cells = <0>;
    };

    pdm_mic_array: pdm-mic-array {
        status = "disabled";
        compatible = "simple-audio-card";
        simple-audio-card,name = "rockchip,pdm-mic-array";
        simple-audio-card,cpu {
            sound-dai = <&pdm>;
        };
        simple-audio-card,codec {
            sound-dai = <&pdmics>;
        };
    };

    rk809_sound: rk809-sound {
        status = "okay";
        compatible = "rockchip,multicodecs-card";
        rockchip,card-name = "rockchip-rk809";
        hp-det-gpio = <&gpio3 RK_PA1 GPIO_ACTIVE_LOW>;
        rockchip,format = "i2s";
        rockchip,mclk-fs = <256>;
        rockchip,cpu = <&i2s1_8ch>;
        rockchip,codec = <&rk809_codec>;
        pinctrl-names = "default";
        pinctrl-0 = <&hp_det>;
    };

    spdif-sound {
        status = "okay";
        compatible = "simple-audio-card";
        simple-audio-card,name = "ROCKCHIP,SPDIF";
        simple-audio-card,mclk-fs = <128>;
        simple-audio-card,cpu {
                sound-dai = <&spdif_8ch>;
        };
        simple-audio-card,codec {
                sound-dai = <&spdif_out>;
        };
    };

    spdif_out: spdif-out {
            status = "okay";
            compatible = "linux,spdif-dit";
            #sound-dai-cells = <0>;
    };

    vad_sound: vad-sound {
        status = "disabled";
        compatible = "rockchip,multicodecs-card";
        rockchip,card-name = "rockchip,rk3568-vad";
        rockchip,cpu = <&i2s1_8ch>;
        rockchip,codec = <&rk809_codec>, <&vad>;
    };

    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 = <&dc_12v>;
    };

    vcc5v0_sys: vcc5v0-sys {
        compatible = "regulator-fixed";
        regulator-name = "vcc5v0_sys";
        regulator-always-on;
        regulator-boot-on;
        regulator-min-microvolt = <5000000>;
        regulator-max-microvolt = <5000000>;
        vin-supply = <&dc_12v>;
    };

    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>;
        vin-supply = <&dc_12v>;
    };

    vcc5v0_host: vcc5v0-host-regulator {
        compatible = "regulator-fixed";
        regulator-name = "vcc5v0_host";
        regulator-boot-on;
        regulator-always-on;
        regulator-min-microvolt = <5000000>;
        regulator-max-microvolt = <5000000>;
        enable-active-high;
        gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
        vin-supply = <&vcc5v0_usb>;
        pinctrl-names = "default";
        pinctrl-0 = <&vcc5v0_host_en>;
    };

    vcc5v0_otg: vcc5v0-otg-regulator {
        compatible = "regulator-fixed";
        regulator-name = "vcc5v0_otg";
        regulator-min-microvolt = <5000000>;
        regulator-max-microvolt = <5000000>;
        enable-active-high;
        gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>;
        vin-supply = <&vcc5v0_usb>;
        pinctrl-names = "default";
        pinctrl-0 = <&vcc5v0_otg_en>;
    };

    //vcc3v3_lcd0_n: vcc3v3-lcd0-n {
    //    compatible = "regulator-fixed";
    //    regulator-name = "vcc3v3_lcd0_n";
    //    regulator-boot-on;
    //    regulator-state-mem {
    //        regulator-off-in-suspend;
    //    };
    //};
        //
    //vcc3v3_lcd1_n: vcc3v3-lcd1-n {
    //    compatible = "regulator-fixed";
    //    regulator-name = "vcc3v3_lcd1_n";
    //    regulator-boot-on;
    //    regulator-state-mem {
    //        regulator-off-in-suspend;
    //    };
    //};

    sdio_pwrseq: sdio-pwrseq {
        compatible = "mmc-pwrseq-simple";
        clocks = <&rk809 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)
         */
        post-power-on-delay-ms = <200>;
        reset-gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_LOW>;
    };

    wireless_wlan: wireless-wlan {
        compatible = "wlan-platdata";
        rockchip,grf = <&grf>;
        wifi_chip_type = "ap6398s";
        status = "okay";
    };

    wireless_bluetooth: wireless-bluetooth {
        compatible = "bluetooth-platdata";
        clocks = <&rk809 1>;
        clock-names = "ext_clock";
        //wifi-bt-power-toggle;
    uart_rts_gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_LOW>;
    pinctrl-names = "default", "rts_gpio";
    pinctrl-0 = <&uart1m1_rtsn>;
    pinctrl-1 = <&uart1_gpios>;
    BT,reset_gpio    = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
    BT,wake_gpio     = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
    BT,wake_host_irq = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>;
        status = "okay";
    };

    test-power {
        status = "okay";
    };
};

&bus_npu {
    bus-supply = <&vdd_logic>;
    pvtm-supply = <&vdd_cpu>;
    status = "okay";
};

&cpu0 {
    cpu-supply = <&vdd_cpu>;
};

&dfi {
    status = "okay";
};

&dmc {
    center-supply = <&vdd_logic>;
    status = "okay";
};

//&dsi0 {
//    status = "disabled";
//    //rockchip,lane-rate = <1000>;
//    dsi0_panel: panel@0 {
//        status = "okay";
//        compatible = "simple-panel-dsi";
//        reg = <0>;
//        backlight = <&backlight>;
//        reset-delay-ms = <60>;
//        enable-delay-ms = <60>;
//        prepare-delay-ms = <60>;
//        unprepare-delay-ms = <60>;
//        disable-delay-ms = <60>;
//        width-mm = <68>;
//        height-mm = <121>;
//        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 = [
//            23 00 02 FE 21
//            23 00 02 04 00
//            23 00 02 00 64
//            23 00 02 2A 00
//            23 00 02 26 64
//            23 00 02 54 00
//            23 00 02 50 64
//            23 00 02 7B 00
//            23 00 02 77 64
//            23 00 02 A2 00
//            23 00 02 9D 64
//            23 00 02 C9 00
//            23 00 02 C5 64
//            23 00 02 01 71
//            23 00 02 27 71
//            23 00 02 51 71
//            23 00 02 78 71
//            23 00 02 9E 71
//            23 00 02 C6 71
//            23 00 02 02 89
//            23 00 02 28 89
//            23 00 02 52 89
//            23 00 02 79 89
//            23 00 02 9F 89
//            23 00 02 C7 89
//            23 00 02 03 9E
//            23 00 02 29 9E
//            23 00 02 53 9E
//            23 00 02 7A 9E
//            23 00 02 A0 9E
//            23 00 02 C8 9E
//            23 00 02 09 00
//            23 00 02 05 B0
//            23 00 02 31 00
//            23 00 02 2B B0
//            23 00 02 5A 00
//            23 00 02 55 B0
//            23 00 02 80 00
//            23 00 02 7C B0
//            23 00 02 A7 00
//            23 00 02 A3 B0
//            23 00 02 CE 00
//            23 00 02 CA B0
//            23 00 02 06 C0
//            23 00 02 2D C0
//            23 00 02 56 C0
//            23 00 02 7D C0
//            23 00 02 A4 C0
//            23 00 02 CB C0
//            23 00 02 07 CF
//            23 00 02 2F CF
//            23 00 02 58 CF
//            23 00 02 7E CF
//            23 00 02 A5 CF
//            23 00 02 CC CF
//            23 00 02 08 DD
//            23 00 02 30 DD
//            23 00 02 59 DD
//            23 00 02 7F DD
//            23 00 02 A6 DD
//            23 00 02 CD DD
//            23 00 02 0E 15
//            23 00 02 0A E9
//            23 00 02 36 15
//            23 00 02 32 E9
//            23 00 02 5F 15
//            23 00 02 5B E9
//            23 00 02 85 15
//            23 00 02 81 E9
//            23 00 02 AD 15
//            23 00 02 A9 E9
//            23 00 02 D3 15
//            23 00 02 CF E9
//            23 00 02 0B 14
//            23 00 02 33 14
//            23 00 02 5C 14
//            23 00 02 82 14
//            23 00 02 AA 14
//            23 00 02 D0 14
//            23 00 02 0C 36
//            23 00 02 34 36
//            23 00 02 5D 36
//            23 00 02 83 36
//            23 00 02 AB 36
//            23 00 02 D1 36
//            23 00 02 0D 6B
//            23 00 02 35 6B
//            23 00 02 5E 6B
//            23 00 02 84 6B
//            23 00 02 AC 6B
//            23 00 02 D2 6B
//            23 00 02 13 5A
//            23 00 02 0F 94
//            23 00 02 3B 5A
//            23 00 02 37 94
//            23 00 02 64 5A
//            23 00 02 60 94
//            23 00 02 8A 5A
//            23 00 02 86 94
//            23 00 02 B2 5A
//            23 00 02 AE 94
//            23 00 02 D8 5A
//            23 00 02 D4 94
//            23 00 02 10 D1
//            23 00 02 38 D1
//            23 00 02 61 D1
//            23 00 02 87 D1
//            23 00 02 AF D1
//            23 00 02 D5 D1
//            23 00 02 11 04
//            23 00 02 39 04
//            23 00 02 62 04
//            23 00 02 88 04
//            23 00 02 B0 04
//            23 00 02 D6 04
//            23 00 02 12 05
//            23 00 02 3A 05
//            23 00 02 63 05
//            23 00 02 89 05
//            23 00 02 B1 05
//            23 00 02 D7 05
//            23 00 02 18 AA
//            23 00 02 14 36
//            23 00 02 42 AA
//            23 00 02 3D 36
//            23 00 02 69 AA
//            23 00 02 65 36
//            23 00 02 8F AA
//            23 00 02 8B 36
//            23 00 02 B7 AA
//            23 00 02 B3 36
//            23 00 02 DD AA
//            23 00 02 D9 36
//            23 00 02 15 74
//            23 00 02 3F 74
//            23 00 02 66 74
//            23 00 02 8C 74
//            23 00 02 B4 74
//            23 00 02 DA 74
//            23 00 02 16 9F
//            23 00 02 40 9F
//            23 00 02 67 9F
//            23 00 02 8D 9F
//            23 00 02 B5 9F
//            23 00 02 DB 9F
//            23 00 02 17 DC
//            23 00 02 41 DC
//            23 00 02 68 DC
//            23 00 02 8E DC
//            23 00 02 B6 DC
//            23 00 02 DC DC
//            23 00 02 1D FF
//            23 00 02 19 03
//            23 00 02 47 FF
//            23 00 02 43 03
//            23 00 02 6E FF
//            23 00 02 6A 03
//            23 00 02 94 FF
//            23 00 02 90 03
//            23 00 02 BC FF
//            23 00 02 B8 03
//            23 00 02 E2 FF
//            23 00 02 DE 03
//            23 00 02 1A 35
//            23 00 02 44 35
//            23 00 02 6B 35
//            23 00 02 91 35
//            23 00 02 B9 35
//            23 00 02 DF 35
//            23 00 02 1B 45
//            23 00 02 45 45
//            23 00 02 6C 45
//            23 00 02 92 45
//            23 00 02 BA 45
//            23 00 02 E0 45
//            23 00 02 1C 55
//            23 00 02 46 55
//            23 00 02 6D 55
//            23 00 02 93 55
//            23 00 02 BB 55
//            23 00 02 E1 55
//            23 00 02 22 FF
//            23 00 02 1E 68
//            23 00 02 4C FF
//            23 00 02 48 68
//            23 00 02 73 FF
//            23 00 02 6F 68
//            23 00 02 99 FF
//            23 00 02 95 68
//            23 00 02 C1 FF
//            23 00 02 BD 68
//            23 00 02 E7 FF
//            23 00 02 E3 68
//            23 00 02 1F 7E
//            23 00 02 49 7E
//            23 00 02 70 7E
//            23 00 02 96 7E
//            23 00 02 BE 7E
//            23 00 02 E4 7E
//            23 00 02 20 97
//            23 00 02 4A 97
//            23 00 02 71 97
//            23 00 02 97 97
//            23 00 02 BF 97
//            23 00 02 E5 97
//            23 00 02 21 B5
//            23 00 02 4B B5
//            23 00 02 72 B5
//            23 00 02 98 B5
//            23 00 02 C0 B5
//            23 00 02 E6 B5
//            23 00 02 25 F0
//            23 00 02 23 E8
//            23 00 02 4F F0
//            23 00 02 4D E8
//            23 00 02 76 F0
//            23 00 02 74 E8
//            23 00 02 9C F0
//            23 00 02 9A E8
//            23 00 02 C4 F0
//            23 00 02 C2 E8
//            23 00 02 EA F0
//            23 00 02 E8 E8
//            23 00 02 24 FF
//            23 00 02 4E FF
//            23 00 02 75 FF
//            23 00 02 9B FF
//            23 00 02 C3 FF
//            23 00 02 E9 FF
//            23 00 02 FE 3D
//            23 00 02 00 04
//            23 00 02 FE 23
//            23 00 02 08 82
//            23 00 02 0A 00
//            23 00 02 0B 00
//            23 00 02 0C 01
//            23 00 02 16 00
//            23 00 02 18 02
//            23 00 02 1B 04
//            23 00 02 19 04
//            23 00 02 1C 81
//            23 00 02 1F 00
//            23 00 02 20 03
//            23 00 02 23 04
//            23 00 02 21 01
//            23 00 02 54 63
//            23 00 02 55 54
//            23 00 02 6E 45
//            23 00 02 6D 36
//            23 00 02 FE 3D
//            23 00 02 55 78
//            23 00 02 FE 20
//            23 00 02 26 30
//            23 00 02 FE 3D
//            23 00 02 20 71
//            23 00 02 50 8F
//            23 00 02 51 8F
//            23 00 02 FE 00
//            23 00 02 35 00
//            05 78 01 11
//            05 1E 01 29
//        ];
//
//        panel-exit-sequence = [
//            05 00 01 28
//            05 00 01 10
//        ];
//
//        disp_timings0: display-timings {
//            native-mode = <&dsi0_timing0>;
//            dsi0_timing0: timing0 {
//                clock-frequency = <132000000>;
//                hactive = <1080>;
//                vactive = <1920>;
//                hfront-porch = <15>;
//                hsync-len = <2>;
//                hback-porch = <30>;
//                vfront-porch = <15>;
//                vsync-len = <2>;
//                vback-porch = <15>;
//                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>;
//            };
//        };
//    };
//
//};
//
//&dsi1 {
//    status = "disabled";
//    //rockchip,lane-rate = <1000>;
//    dsi1_panel: panel@0 {
//        status = "okay";
//        compatible = "simple-panel-dsi";
//        reg = <0>;
//        backlight = <&backlight1>;
//        reset-delay-ms = <60>;
//        enable-delay-ms = <60>;
//        prepare-delay-ms = <60>;
//        unprepare-delay-ms = <60>;
//        disable-delay-ms = <60>;
//        width-mm = <68>;
//        height-mm = <121>;
//        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 = [
//            23 00 02 FE 21
//            23 00 02 04 00
//            23 00 02 00 64
//            23 00 02 2A 00
//            23 00 02 26 64
//            23 00 02 54 00
//            23 00 02 50 64
//            23 00 02 7B 00
//            23 00 02 77 64
//            23 00 02 A2 00
//            23 00 02 9D 64
//            23 00 02 C9 00
//            23 00 02 C5 64
//            23 00 02 01 71
//            23 00 02 27 71
//            23 00 02 51 71
//            23 00 02 78 71
//            23 00 02 9E 71
//            23 00 02 C6 71
//            23 00 02 02 89
//            23 00 02 28 89
//            23 00 02 52 89
//            23 00 02 79 89
//            23 00 02 9F 89
//            23 00 02 C7 89
//            23 00 02 03 9E
//            23 00 02 29 9E
//            23 00 02 53 9E
//            23 00 02 7A 9E
//            23 00 02 A0 9E
//            23 00 02 C8 9E
//            23 00 02 09 00
//            23 00 02 05 B0
//            23 00 02 31 00
//            23 00 02 2B B0
//            23 00 02 5A 00
//            23 00 02 55 B0
//            23 00 02 80 00
//            23 00 02 7C B0
//            23 00 02 A7 00
//            23 00 02 A3 B0
//            23 00 02 CE 00
//            23 00 02 CA B0
//            23 00 02 06 C0
//            23 00 02 2D C0
//            23 00 02 56 C0
//            23 00 02 7D C0
//            23 00 02 A4 C0
//            23 00 02 CB C0
//            23 00 02 07 CF
//            23 00 02 2F CF
//            23 00 02 58 CF
//            23 00 02 7E CF
//            23 00 02 A5 CF
//            23 00 02 CC CF
//            23 00 02 08 DD
//            23 00 02 30 DD
//            23 00 02 59 DD
//            23 00 02 7F DD
//            23 00 02 A6 DD
//            23 00 02 CD DD
//            23 00 02 0E 15
//            23 00 02 0A E9
//            23 00 02 36 15
//            23 00 02 32 E9
//            23 00 02 5F 15
//            23 00 02 5B E9
//            23 00 02 85 15
//            23 00 02 81 E9
//            23 00 02 AD 15
//            23 00 02 A9 E9
//            23 00 02 D3 15
//            23 00 02 CF E9
//            23 00 02 0B 14
//            23 00 02 33 14
//            23 00 02 5C 14
//            23 00 02 82 14
//            23 00 02 AA 14
//            23 00 02 D0 14
//            23 00 02 0C 36
//            23 00 02 34 36
//            23 00 02 5D 36
//            23 00 02 83 36
//            23 00 02 AB 36
//            23 00 02 D1 36
//            23 00 02 0D 6B
//            23 00 02 35 6B
//            23 00 02 5E 6B
//            23 00 02 84 6B
//            23 00 02 AC 6B
//            23 00 02 D2 6B
//            23 00 02 13 5A
//            23 00 02 0F 94
//            23 00 02 3B 5A
//            23 00 02 37 94
//            23 00 02 64 5A
//            23 00 02 60 94
//            23 00 02 8A 5A
//            23 00 02 86 94
//            23 00 02 B2 5A
//            23 00 02 AE 94
//            23 00 02 D8 5A
//            23 00 02 D4 94
//            23 00 02 10 D1
//            23 00 02 38 D1
//            23 00 02 61 D1
//            23 00 02 87 D1
//            23 00 02 AF D1
//            23 00 02 D5 D1
//            23 00 02 11 04
//            23 00 02 39 04
//            23 00 02 62 04
//            23 00 02 88 04
//            23 00 02 B0 04
//            23 00 02 D6 04
//            23 00 02 12 05
//            23 00 02 3A 05
//            23 00 02 63 05
//            23 00 02 89 05
//            23 00 02 B1 05
//            23 00 02 D7 05
//            23 00 02 18 AA
//            23 00 02 14 36
//            23 00 02 42 AA
//            23 00 02 3D 36
//            23 00 02 69 AA
//            23 00 02 65 36
//            23 00 02 8F AA
//            23 00 02 8B 36
//            23 00 02 B7 AA
//            23 00 02 B3 36
//            23 00 02 DD AA
//            23 00 02 D9 36
//            23 00 02 15 74
//            23 00 02 3F 74
//            23 00 02 66 74
//            23 00 02 8C 74
//            23 00 02 B4 74
//            23 00 02 DA 74
//            23 00 02 16 9F
//            23 00 02 40 9F
//            23 00 02 67 9F
//            23 00 02 8D 9F
//            23 00 02 B5 9F
//            23 00 02 DB 9F
//            23 00 02 17 DC
//            23 00 02 41 DC
//            23 00 02 68 DC
//            23 00 02 8E DC
//            23 00 02 B6 DC
//            23 00 02 DC DC
//            23 00 02 1D FF
//            23 00 02 19 03
//            23 00 02 47 FF
//            23 00 02 43 03
//            23 00 02 6E FF
//            23 00 02 6A 03
//            23 00 02 94 FF
//            23 00 02 90 03
//            23 00 02 BC FF
//            23 00 02 B8 03
//            23 00 02 E2 FF
//            23 00 02 DE 03
//            23 00 02 1A 35
//            23 00 02 44 35
//            23 00 02 6B 35
//            23 00 02 91 35
//            23 00 02 B9 35
//            23 00 02 DF 35
//            23 00 02 1B 45
//            23 00 02 45 45
//            23 00 02 6C 45
//            23 00 02 92 45
//            23 00 02 BA 45
//            23 00 02 E0 45
//            23 00 02 1C 55
//            23 00 02 46 55
//            23 00 02 6D 55
//            23 00 02 93 55
//            23 00 02 BB 55
//            23 00 02 E1 55
//            23 00 02 22 FF
//            23 00 02 1E 68
//            23 00 02 4C FF
//            23 00 02 48 68
//            23 00 02 73 FF
//            23 00 02 6F 68
//            23 00 02 99 FF
//            23 00 02 95 68
//            23 00 02 C1 FF
//            23 00 02 BD 68
//            23 00 02 E7 FF
//            23 00 02 E3 68
//            23 00 02 1F 7E
//            23 00 02 49 7E
//            23 00 02 70 7E
//            23 00 02 96 7E
//            23 00 02 BE 7E
//            23 00 02 E4 7E
//            23 00 02 20 97
//            23 00 02 4A 97
//            23 00 02 71 97
//            23 00 02 97 97
//            23 00 02 BF 97
//            23 00 02 E5 97
//            23 00 02 21 B5
//            23 00 02 4B B5
//            23 00 02 72 B5
//            23 00 02 98 B5
//            23 00 02 C0 B5
//            23 00 02 E6 B5
//            23 00 02 25 F0
//            23 00 02 23 E8
//            23 00 02 4F F0
//            23 00 02 4D E8
//            23 00 02 76 F0
//            23 00 02 74 E8
//            23 00 02 9C F0
//            23 00 02 9A E8
//            23 00 02 C4 F0
//            23 00 02 C2 E8
//            23 00 02 EA F0
//            23 00 02 E8 E8
//            23 00 02 24 FF
//            23 00 02 4E FF
//            23 00 02 75 FF
//            23 00 02 9B FF
//            23 00 02 C3 FF
//            23 00 02 E9 FF
//            23 00 02 FE 3D
//            23 00 02 00 04
//            23 00 02 FE 23
//            23 00 02 08 82
//            23 00 02 0A 00
//            23 00 02 0B 00
//            23 00 02 0C 01
//            23 00 02 16 00
//            23 00 02 18 02
//            23 00 02 1B 04
//            23 00 02 19 04
//            23 00 02 1C 81
//            23 00 02 1F 00
//            23 00 02 20 03
//            23 00 02 23 04
//            23 00 02 21 01
//            23 00 02 54 63
//            23 00 02 55 54
//            23 00 02 6E 45
//            23 00 02 6D 36
//            23 00 02 FE 3D
//            23 00 02 55 78
//            23 00 02 FE 20
//            23 00 02 26 30
//            23 00 02 FE 3D
//            23 00 02 20 71
//            23 00 02 50 8F
//            23 00 02 51 8F
//            23 00 02 FE 00
//            23 00 02 35 00
//            05 78 01 11
//            05 1E 01 29
//        ];
//
//        panel-exit-sequence = [
//            05 00 01 28
//            05 00 01 10
//        ];
//
//        disp_timings1: display-timings {
//            native-mode = <&dsi1_timing0>;
//            dsi1_timing0: timing0 {
//                clock-frequency = <132000000>;
//                hactive = <1080>;
//                vactive = <1920>;
//                hfront-porch = <15>;
//                hsync-len = <2>;
//                hback-porch = <30>;
//                vfront-porch = <15>;
//                vsync-len = <2>;
//                vback-porch = <15>;
//                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_dsi1: endpoint {
//                    remote-endpoint = <&dsi1_out_panel>;
//                };
//            };
//        };
//    };
//
//    ports {
//        #address-cells = <1>;
//        #size-cells = <0>;
//
//        port@1 {
//            reg = <1>;
//            dsi1_out_panel: endpoint {
//                remote-endpoint = <&panel_in_dsi1>;
//            };
//        };
//    };
//
//};

&gpu {
    mali-supply = <&vdd_gpu>;
    status = "okay";
};

&hdmi {
    status = "okay";
    rockchip,phy-table =
        <92812500  0x8009 0x0000 0x0270>,
        <165000000 0x800b 0x0000 0x026d>,
        <185625000 0x800b 0x0000 0x01ed>,
        <297000000 0x800b 0x0000 0x01ad>,
        <594000000 0x8029 0x0000 0x0088>,
        <000000000 0x0000 0x0000 0x0000>;
};

&hdmi_in_vp0 {
    status = "okay";
};

&hdmi_in_vp1 {
    status = "disabled";
};

&hdmi_sound {
    status = "okay";
};

&i2c0 {
    status = "okay";

    vdd_cpu: tcs4525@1c {
        compatible = "tcs,tcs4525";
        reg = <0x1c>;
        vin-supply = <&vcc5v0_sys>;
        regulator-compatible = "fan53555-reg";
        regulator-name = "vdd_cpu";
        regulator-min-microvolt = <712500>;
        regulator-max-microvolt = <1390000>;
        regulator-init-microvolt = <900000>;
        regulator-ramp-delay = <2300>;
        fcs,suspend-voltage-selector = <1>;
        regulator-boot-on;
        regulator-always-on;
        regulator-state-mem {
            regulator-off-in-suspend;
        };
    };

    rk809: pmic@20 {
        compatible = "rockchip,rk809";
        reg = <0x20>;
        interrupt-parent = <&gpio0>;
        interrupts = <3 IRQ_TYPE_LEVEL_LOW>;

        pinctrl-names = "default", "pmic-sleep",
                "pmic-power-off", "pmic-reset";
        pinctrl-0 = <&pmic_int>;
        pinctrl-1 = <&soc_slppin_slp>, <&rk817_slppin_slp>;
        pinctrl-2 = <&soc_slppin_gpio>, <&rk817_slppin_pwrdn>;
        pinctrl-3 = <&soc_slppin_gpio>, <&rk817_slppin_rst>;

        rockchip,system-power-controller;
        wakeup-source;
        #clock-cells = <1>;
        clock-output-names = "rk808-clkout1", "rk808-clkout2";
        //fb-inner-reg-idxs = <2>;
        /* 1: rst regs (default in codes), 0: rst the pmic */
        pmic-reset-func = <0>;
        /* not save the PMIC_POWER_EN register in uboot */
        not-save-power-en = <1>;

        vcc1-supply = <&vcc3v3_sys>;
        vcc2-supply = <&vcc3v3_sys>;
        vcc3-supply = <&vcc3v3_sys>;
        vcc4-supply = <&vcc3v3_sys>;
        vcc5-supply = <&vcc3v3_sys>;
        vcc6-supply = <&vcc3v3_sys>;
        vcc7-supply = <&vcc3v3_sys>;
        vcc8-supply = <&vcc3v3_sys>;
        vcc9-supply = <&vcc3v3_sys>;

        pwrkey {
            status = "okay";
        };

        pinctrl_rk8xx: pinctrl_rk8xx {
            gpio-controller;
            #gpio-cells = <2>;

            rk817_slppin_null: rk817_slppin_null {
                pins = "gpio_slp";
                function = "pin_fun0";
            };

            rk817_slppin_slp: rk817_slppin_slp {
                pins = "gpio_slp";
                function = "pin_fun1";
            };

            rk817_slppin_pwrdn: rk817_slppin_pwrdn {
                pins = "gpio_slp";
                function = "pin_fun2";
            };

            rk817_slppin_rst: rk817_slppin_rst {
                pins = "gpio_slp";
                function = "pin_fun3";
            };
        };

        regulators {
            vdd_logic: DCDC_REG1 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <500000>;
                regulator-max-microvolt = <1350000>;
                regulator-init-microvolt = <900000>;
                regulator-ramp-delay = <6001>;
                regulator-initial-mode = <0x2>;
                regulator-name = "vdd_logic";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vdd_gpu: DCDC_REG2 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <500000>;
                regulator-max-microvolt = <1350000>;
                regulator-init-microvolt = <900000>;
                regulator-ramp-delay = <6001>;
                regulator-initial-mode = <0x2>;
                regulator-name = "vdd_gpu";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vcc_ddr: DCDC_REG3 {
                regulator-always-on;
                regulator-boot-on;
                regulator-initial-mode = <0x2>;
                regulator-name = "vcc_ddr";
                regulator-state-mem {
                    regulator-on-in-suspend;
                };
            };

            vdd_npu: DCDC_REG4 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <500000>;
                regulator-max-microvolt = <1350000>;
                regulator-init-microvolt = <900000>;
                regulator-ramp-delay = <6001>;
                regulator-initial-mode = <0x2>;
                regulator-name = "vdd_npu";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vdda0v9_image: LDO_REG1 {
                regulator-boot-on;
                regulator-always-on;
                regulator-min-microvolt = <900000>;
                regulator-max-microvolt = <900000>;
                regulator-name = "vdda0v9_image";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vdda_0v9: LDO_REG2 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <900000>;
                regulator-max-microvolt = <900000>;
                regulator-name = "vdda_0v9";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vdda0v9_pmu: LDO_REG3 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <900000>;
                regulator-max-microvolt = <900000>;
                regulator-name = "vdda0v9_pmu";
                regulator-state-mem {
                    regulator-on-in-suspend;
                    regulator-suspend-microvolt = <900000>;
                };
            };

            vccio_acodec: LDO_REG4 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <3000000>;
                regulator-max-microvolt = <3000000>;
                regulator-name = "vccio_acodec";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vccio_sd: LDO_REG5 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <1800000>;
                regulator-max-microvolt = <3300000>;
                regulator-name = "vccio_sd";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vcc3v3_pmu: LDO_REG6 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <3300000>;
                regulator-max-microvolt = <3300000>;
                regulator-name = "vcc3v3_pmu";
                regulator-state-mem {
                    regulator-on-in-suspend;
                    regulator-suspend-microvolt = <3300000>;
                };
            };

            vcca_1v8: LDO_REG7 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <1800000>;
                regulator-max-microvolt = <1800000>;
                regulator-name = "vcca_1v8";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vcca1v8_pmu: LDO_REG8 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <1800000>;
                regulator-max-microvolt = <1800000>;
                regulator-name = "vcca1v8_pmu";
                regulator-state-mem {
                    regulator-on-in-suspend;
                    regulator-suspend-microvolt = <1800000>;
                };
            };

            vcca1v8_image: LDO_REG9 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <1800000>;
                regulator-max-microvolt = <1800000>;
                regulator-name = "vcca1v8_image";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vcc_1v8: DCDC_REG5 {
                regulator-always-on;
                regulator-boot-on;
                regulator-min-microvolt = <1800000>;
                regulator-max-microvolt = <1800000>;
                regulator-name = "vcc_1v8";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vcc_3v3: SWITCH_REG1 {
                regulator-always-on;
                regulator-boot-on;
                regulator-name = "vcc_3v3";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };

            vcc3v3_sd: SWITCH_REG2 {
                regulator-always-on;
                regulator-boot-on;
                regulator-name = "vcc3v3_sd";
                regulator-state-mem {
                    regulator-off-in-suspend;
                };
            };
        };

        rk809_codec: codec {
            #sound-dai-cells = <1>;
            compatible = "rockchip,rk809-codec", "rockchip,rk817-codec";
            clocks = <&cru I2S1_MCLKOUT>;
            clock-names = "mclk";
            assigned-clocks = <&cru I2S1_MCLKOUT>, <&cru I2S1_MCLK_TX_IOE>;
            assigned-clock-rates = <12288000>;
            assigned-clock-parents = <&cru I2S1_MCLKOUT_TX>, <&cru I2S1_MCLKOUT_TX>;
            pinctrl-names = "default";
            pinctrl-0 = <&i2s1m0_mclk>;
            hp-volume = <20>;
            spk-volume = <3>;
            mic-in-differential;
            status = "okay";
        };
    };
};

//&i2c1 {
//    status = "okay";
//
//    gt1x: gt1x@14 {
//        compatible = "goodix,gt1x";
//        reg = <0x14>;
//        pinctrl-names = "default";
//        pinctrl-0 = <&touch_gpio>;
//        goodix,rst-gpio = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>;
//        goodix,irq-gpio = <&gpio0 RK_PB5 IRQ_TYPE_LEVEL_LOW>;
//    };
//};

&i2c5 {
    status = "okay";

    mxc6655xa: mxc6655xa@15 {
        status = "okay";
        compatible = "gs_mxc6655xa";
        pinctrl-names = "default";
        pinctrl-0 = <&mxc6655xa_irq_gpio>;
        reg = <0x15>;
        irq-gpio = <&gpio3 RK_PC1 IRQ_TYPE_LEVEL_LOW>;
        irq_enable = <0>;
        poll_delay_ms = <30>;
        type = <SENSOR_TYPE_ACCEL>;
        power-off-in-suspend = <1>;
        layout = <1>;
    };
};

&i2s0_8ch {
    status = "okay";
};

&i2s1_8ch {
    status = "okay";
    rockchip,clk-trcm = <1>;
    pinctrl-names = "default";
    pinctrl-0 = <&i2s1m0_sclktx
             &i2s1m0_lrcktx
             &i2s1m0_sdi0
             &i2s1m0_sdo0>;
};

&i2s3_2ch {
    pinctrl-0 = <&i2s3m0_sclk &i2s3m0_lrck &i2s3m0_sdi &i2s3m0_sdo>;
    rockchip,bclk-fs = <32>;
    status = "disabled";
};

&iep {
    status = "okay";
};

&iep_mmu {
    status = "okay";
};

&jpegd {
    status = "okay";
};

&jpegd_mmu {
    status = "okay";
};

&mpp_srv {
    status = "okay";
};

&nandc0 {
    #address-cells = <1>;
    #size-cells = <0>;
    status = "okay";

    nand@0 {
        reg = <0>;
        nand-bus-width = <8>;
        nand-ecc-mode = "hw";
        nand-ecc-strength = <16>;
        nand-ecc-step-size = <1024>;
    };
};

&pinctrl {

    headphone {
        hp_det: hp-det {
            rockchip,pins = <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_down>;
        };
    };

    mxc6655xa {
        mxc6655xa_irq_gpio: mxc6655xa_irq_gpio {
            rockchip,pins = <3 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
        };
    };

    pmic {
        pmic_int: pmic_int {
            rockchip,pins =
                <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
        };

        soc_slppin_gpio: soc_slppin_gpio {
            rockchip,pins =
                <0 RK_PA2 RK_FUNC_GPIO &pcfg_output_low>;
        };

        soc_slppin_slp: soc_slppin_slp {
            rockchip,pins =
                <0 RK_PA2 1 &pcfg_pull_none>;
        };

        soc_slppin_rst: soc_slppin_rst {
            rockchip,pins =
                <0 RK_PA2 2 &pcfg_pull_none>;
        };
    };

    touch {
        touch_gpio: touch-gpio {
            rockchip,pins =
                <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>,
                <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
        };
    };

    sdio-pwrseq {
        wifi_enable_h: wifi-enable-h {
            rockchip,pins = <3 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
        };
    };

    usb {
        vcc5v0_host_en: vcc5v0-host-en {
            rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
        };

        vcc5v0_otg_en: vcc5v0-otg-en {
            rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
        };
    };

    wireless-bluetooth {
        uart1_gpios: uart1-gpios {
            rockchip,pins = <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
        };
    };

};

 /*
  * There are 10 independent IO domains in RK3566/RK3568, including PMUIO[0:2] and VCCIO[1:7].
  * 1/ PMUIO0 and PMUIO1 are fixed-level power domains which cannot be configured;
  * 2/ PMUIO2 and VCCIO1,VCCIO[3:7] domains require that their hardware power supply voltages
  *    must be consistent with the software configuration correspondingly
  *    a/ When the hardware IO level is connected to 1.8V, the software voltage configuration
  *       should also be configured to 1.8V accordingly;
  *    b/ When the hardware IO level is connected to 3.3V, the software voltage configuration
  *       should also be configured to 3.3V accordingly;
  * 3/ VCCIO2 voltage control selection (0xFDC20140)
  *    BIT[0]: 0x0: from GPIO_0A7 (default)
  *    BIT[0]: 0x1: from GRF
  *    Default is determined by Pin FLASH_VOL_SEL/GPIO0_A7:
  *    L:VCCIO2 must supply 3.3V
  *    H:VCCIO2 must supply 1.8V
  */
&pmu_io_domains {
        status = "okay";
        pmuio2-supply = <&vcc3v3_pmu>;
        vccio1-supply = <&vccio_acodec>;
        vccio3-supply = <&vccio_sd>;
        vccio4-supply = <&vcc_3v3>;
        vccio5-supply = <&vcc_3v3>;
        vccio6-supply = <&vcc_1v8>;
        vccio7-supply = <&vcc_3v3>;
};

&pwm4 {
    status = "okay";
};

&pwm5 {
    status = "okay";
};

&pwm7 {
    status = "okay";

    compatible = "rockchip,remotectl-pwm";
    remote_pwm_id = <3>;
    handle_cpu_id = <1>;
    remote_support_psci = <0>;
    pinctrl-names = "default";
    pinctrl-0 = <&pwm7_pins>;

    ir_key1 {
        rockchip,usercode = <0x4040>;
        rockchip,key_table =
            <0xf2    KEY_REPLY>,
            <0xba    KEY_BACK>,
            <0xf4    KEY_UP>,
            <0xf1    KEY_DOWN>,
            <0xef    KEY_LEFT>,
            <0xee    KEY_RIGHT>,
            <0xbd    KEY_HOME>,
            <0xea    KEY_VOLUMEUP>,
            <0xe3    KEY_VOLUMEDOWN>,
            <0xe2    KEY_SEARCH>,
            <0xb2    KEY_POWER>,
            <0xbc    KEY_MUTE>,
            <0xec    KEY_MENU>,
            <0xbf    0x190>,
            <0xe0    0x191>,
            <0xe1    0x192>,
            <0xe9    183>,
            <0xe6    248>,
            <0xe8    185>,
            <0xe7    186>,
            <0xf0    388>,
            <0xbe    0x175>;
    };

    ir_key2 {
        rockchip,usercode = <0xff00>;
        rockchip,key_table =
            <0xf9    KEY_HOME>,
            <0xbf    KEY_BACK>,
            <0xfb    KEY_MENU>,
            <0xaa    KEY_REPLY>,
            <0xb9    KEY_UP>,
            <0xe9    KEY_DOWN>,
            <0xb8    KEY_LEFT>,
            <0xea    KEY_RIGHT>,
            <0xeb    KEY_VOLUMEDOWN>,
            <0xef    KEY_VOLUMEUP>,
            <0xf7    KEY_MUTE>,
            <0xe7    KEY_POWER>,
            <0xfc    KEY_POWER>,
            <0xa9    KEY_VOLUMEDOWN>,
            <0xa8    KEY_VOLUMEDOWN>,
            <0xe0    KEY_VOLUMEDOWN>,
            <0xa5    KEY_VOLUMEDOWN>,
            <0xab    183>,
            <0xb7    388>,
            <0xe8    388>,
            <0xf8    184>,
            <0xaf    185>,
            <0xed    KEY_VOLUMEDOWN>,
            <0xee    186>,
            <0xb3    KEY_VOLUMEDOWN>,
            <0xf1    KEY_VOLUMEDOWN>,
            <0xf2    KEY_VOLUMEDOWN>,
            <0xf3    KEY_SEARCH>,
            <0xb4    KEY_VOLUMEDOWN>,
            <0xbe    KEY_SEARCH>;
    };

    ir_key3 {
        rockchip,usercode = <0x1dcc>;
        rockchip,key_table =
            <0xee    KEY_REPLY>,
            <0xf0    KEY_BACK>,
            <0xf8    KEY_UP>,
            <0xbb    KEY_DOWN>,
            <0xef    KEY_LEFT>,
            <0xed    KEY_RIGHT>,
            <0xfc    KEY_HOME>,
            <0xf1    KEY_VOLUMEUP>,
            <0xfd    KEY_VOLUMEDOWN>,
            <0xb7    KEY_SEARCH>,
            <0xff    KEY_POWER>,
            <0xf3    KEY_MUTE>,
            <0xbf    KEY_MENU>,
            <0xf9    0x191>,
            <0xf5    0x192>,
            <0xb3    388>,
            <0xbe    KEY_1>,
            <0xba    KEY_2>,
            <0xb2    KEY_3>,
            <0xbd    KEY_4>,
            <0xf9    KEY_5>,
            <0xb1    KEY_6>,
            <0xfc    KEY_7>,
            <0xf8    KEY_8>,
            <0xb0    KEY_9>,
            <0xb6    KEY_0>,
            <0xb5    KEY_BACKSPACE>;
    };
};

&rk_rga {
    status = "okay";
};

&rkvdec {
    status = "okay";
};

&rkvdec_mmu {
    status = "okay";
};

&rkvenc {
    venc-supply = <&vdd_logic>;
    status = "okay";
};

&rkvenc_mmu {
    status = "okay";
};

&rknpu {
    rknpu-supply = <&vdd_npu>;
    status = "okay";
};

&rknpu_mmu {
    status = "okay";
};

&route_hdmi {
    status = "okay";
    connect = <&vp0_out_hdmi>;
};

&saradc {
    status = "okay";
    vref-supply = <&vcca_1v8>;
};

&sdhci {
    bus-width = <8>;
    no-sdio;
    no-sd;
    non-removable;
    max-frequency = <200000000>;
    full-pwr-cycle-in-suspend;
    status = "okay";
};

&sdmmc0 {
    max-frequency = <150000000>;
    no-sdio;
    no-mmc;
    bus-width = <4>;
    cap-mmc-highspeed;
    cap-sd-highspeed;
    disable-wp;
    sd-uhs-sdr104;
    vmmc-supply = <&vcc3v3_sd>;
    vqmmc-supply = <&vccio_sd>;
    pinctrl-names = "default";
    pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
    status = "okay";
};

&sfc {
    status = "okay";

    flash@0 {
        compatible = "spi-nand";
        reg = <0>;
        spi-max-frequency = <75000000>;
        spi-rx-bus-width = <4>;
        spi-tx-bus-width = <1>;
    };
};

&spdif_8ch {
    status = "okay";
};

&tsadc {
    status = "okay";
};

&u2phy0_host {
    phy-supply = <&vcc5v0_host>;
    status = "okay";
};

&u2phy0_otg {
    vbus-supply = <&vcc5v0_otg>;
    status = "okay";
};

&u2phy1_host {
    phy-supply = <&vcc5v0_host>;
    status = "okay";
};

&u2phy1_otg {
    phy-supply = <&vcc5v0_host>;
    status = "okay";
};

&usb2phy0 {
    status = "okay";
};

&usb2phy1 {
    status = "okay";
};

&usb_host0_ehci {
    status = "okay";
};

&usb_host0_ohci {
    status = "okay";
};

&usb_host1_ehci {
    status = "okay";
};

&usb_host1_ohci {
    status = "okay";
};

&usbdrd_dwc3 {
    dr_mode = "otg";
    extcon = <&usb2phy0>;
    status = "okay";
};

&usbdrd30 {
    status = "okay";
};

&usbhost_dwc3 {
    status = "okay";
};

&usbhost30 {
    status = "okay";
};

&vad {
    rockchip,audio-src = <&i2s1_8ch>;
    rockchip,buffer-time-ms = <128>;
    rockchip,det-channel = <0>;
    rockchip,mode = <0>;
};

&vdpu {
    status = "okay";
};

&vdpu_mmu {
    status = "okay";
};

&vepu {
    status = "okay";
};

&vepu_mmu {
    status = "okay";
};

&vop {
    status = "okay";
    assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>, <&cru DCLK_VOP2>;
    assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>, <&cru PLL_GPLL>;
};

&vop_mmu {
    status = "okay";
};
 


完整的LOG:

[BEGIN] 2025/4/10 14:57:55
DR Version V1.07 20220412
LPDDR4X, 2112MHz
channel[0] BW=16 Col=10 Bk=8 CS0 Row=16 CS1 Row=16 CS=2 Die BW=16 Size=2048MB
channel[1] BW=16 Col=10 Bk=8 CS0 Row=16 CS1 Row=16 CS=2 Die BW=16 Size=2048MB
channel[2] BW=16 Col=10 Bk=8 CS0 Row=16 CS1 Row=16 CS=2 Die BW=16 Size=2048MB
channel[3] BW=16 Col=10 Bk=8 CS0 Row=16 CS1 Row=16 CS=2 Die BW=16 Size=2048MB
change to F1: 528MHz
change to F2: 1068MHz
change to F3: 1560MHz
change to F0: 2112MHz
out
U-Boot SPL board init
U-Boot SPL 2017.09-g5f53abfa1e-221223 #zzz (Dec 26 2022 - 09:10:09)
unknown raw ID 0 0 0
unrecognized JEDEC id bytes: 00, 00, 00
Trying to boot from MMC2
MMC: no card present
mmc_init: -123, time 2
spl: mmc init failed with error: -123
Trying to boot from MMC1
SPL: A/B-slot: _a, successful: 0, tries-remain: 7
Trying fit image at 0x4000 sector
## Verified-boot: 0
## Checking atf-1 0x00040000 ... sha256(5ae6932916...) + OK
## Checking uboot 0x00200000 ... sha256(5ca6150e38...) + OK
## Checking fdt 0x00325ad0 ... sha256(6c1121228f...) + OK
## Checking atf-2 0x000f0000 ... sha256(c00c7fd75b...) + OK
## Checking atf-3 0xff100000 ... sha256(71c3a5841b...) + OK
## Checking atf-4 0xff001000 ... sha256(2301cf73be...) + OK
## Checking optee 0x08400000 ... sha256(4ed9cd20b5...) + OK
Jumping to U-Boot(0x00200000) via ARM Trusted Firmware(0x00040000)
Total: 183.348 ms

INFO:    Preloader serial: 2
NOTICE:  BL31: v2.3():v2.3-384-g45c8fcb44:derrick.huang
NOTICE:  BL31: Built : 15:14:04, Jun 18 2022
INFO:    ext 32k is not valid
INFO:    GICv3 without legacy support detected.
INFO:    ARM GICv3 driver initialized in EL3
INFO:    system boots from cpu-hwid-0
INFO:    idle_st=0x21fff, pd_st=0x11fff9, repair_st=0xfff70001
INFO:    dfs DDR fsp_params[0].freq_mhz= 2112MHz
INFO:    dfs DDR fsp_params[1].freq_mhz= 528MHz
INFO:    dfs DDR fsp_params[2].freq_mhz= 1068MHz
INFO:    dfs DDR fsp_params[3].freq_mhz= 1560MHz
INFO:    BL31: Initialising Exception Handling Framework
INFO:    BL31: Initializing runtime services
INFO:    BL31: Initializing BL32
INFO:    hdmirx_handler: dma not on, ret
I/TC: 
I/TC: OP-TEE version: 3.13.0-645-g87d94c5ef8 #xb.wang (gcc version 10.2.1 20201103 (GNU Toolchain for the A-profile Architecture 10.2-2020.11 (arm-10.16))) #1 Tue Jun 14 10:44:31 CST 2022 aarch64
I/TC: Primary CPU initializing
I/TC: Primary CPU switching to normal world boot
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0x200000
INFO:    SPSR = 0x3c9


U-Boot 2017.09 (Dec 21 2023 - 09:45:34 +0800)

Model: Forlinx OK3588-C Board
PreSerial: 2, raw, 0xfeb50000
DRAM:  7.7 GiB
Sysmem: init
Relocation Offset: edb51000
Relocation fdt: eb9fa7a8 - eb9fecd8
CR: M/C/I
mmc@fe2c0000: 1, mmc@fe2e0000: 0
Bootdev(atags): mmc 0
MMC0: HS200, 200Mhz
PartType: EFI
DM: v2
boot mode: None
FIT: no signed, no conf required
DTB: rk-kernel.dtb
HASH(c): OK
I2c0 speed: 100000Hz
vsel-gpios- not found!
en-gpios- not found!
read reg[0x03] failed, ret=-121
Failed to get chip ID!
vsel-gpios- not found!
en-gpios- not found!
vdd_cpu_big1_s0 800000 uV
I2c1 speed: 400000Hz
vsel-gpios- not found!
en-gpios- not found!
vdd_npu_s0 800000 uV
spi2: RK806: 2
ON=0x00, OFF=0x00
vdd_gpu_s0 750000 uV
vdd_cpu_lit_s0 750000 uV
vdd_log_s0 750000 uV
vdd_vdenc_s0 init 750000 uV
vdd_ddr_s0 850000 uV
Auth Success!
normal mode
Writing to mmc(0)... done
get vp0 plane mask:0x5, primary id:2, cursor_plane:-1, from dts
get vp1 plane mask:0xa, primary id:3, cursor_plane:-1, from dts
get vp2 plane mask:0x140, primary id:8, cursor_plane:-1, from dts
get vp3 plane mask:0x280, primary id:9, cursor_plane:-1, from dts
Could not find baseparameter partition
Model: Forlinx OK3588 Board
No file: 
failed to display uboot logo
No file: 
failed to display uboot logo
No file: 
failed to display uboot logo
Rockchip UBOOT DRM driver version: v1.0.1
vp0 have layer nr:2[0 2 ], primary plane: 2
vp1 have layer nr:2[1 3 ], primary plane: 3
vp2 have layer nr:2[6 8 ], primary plane: 8
vp3 have layer nr:2[7 9 ], primary plane: 9
dp@fde60000 disconnected
CLK: (uboot. arm: enter 1008000 KHz, init 1008000 KHz, kernel 0N/A)
  b0pll 24000 KHz
  b1pll 24000 KHz
  lpll 24000 KHz
  v0pll 24000 KHz
  aupll 786215 KHz
  cpll 1500000 KHz
  gpll 1188000 KHz
  npll 850000 KHz
  ppll 1100000 KHz
  aclk_center_root 702000 KHz
  pclk_center_root 100000 KHz
  hclk_center_root 396000 KHz
  aclk_center_low_root 500000 KHz
  aclk_top_root 750000 KHz
  pclk_top_root 100000 KHz
  aclk_low_top_root 396000 KHz
Net:   eth1: ethernet@fe1c0000
Hit key to stop autoboot('Spacebar'):  0 
ANDROID: reboot reason: "(none)"
No valid android hdr
Android image load failed
Android boot failed, error -1.
## Booting FIT Image at 0xe97c7d80 with size 0x02031a00
Fdt Ramdisk skip relocation
## Loading kernel from FIT Image at e97c7d80 ...
   Using 'conf' configuration
optee api revision: 2.0
TEEC: Waring: Could not find security partition
## Verified-boot: 0
   Trying 'kernel' kernel subimage
     Description:  unavailable
     Type:         Kernel Image
     Compression:  uncompressed
     Data Start:   0xe97f3d80
     Data Size:    33577472 Bytes = 32 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0x00400000
     Entry Point:  0x00400000
     Hash algo:    sha256
     Hash value:   f2e2bf0f7c21fdda5fcf42da8497bdb5aa72331571df218b148e4368ab15948b
   Verifying Hash Integrity ... sha256+ OK
## Loading fdt from FIT Image at e97c7d80 ...
   Using 'conf' configuration
   Trying 'fdt' fdt subimage
     Description:  unavailable
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0xe97c8580
     Data Size:    177665 Bytes = 173.5 KiB
     Architecture: AArch64
     Load Address: 0x0a100000
     Hash algo:    sha256
     Hash value:   314a883de96484059da63453672c2049144250901305b6868db5f5c43a79c14a
   Verifying Hash Integrity ... sha256+ OK
   Loading fdt from 0x0a100000 to 0x0a100000
   Booting using the fdt blob at 0x0a100000
   Loading Kernel Image from 0xe97f3d80 to 0x00400000 ... OK
   kernel loaded at 0x00400000, end = 0x02405a00
  'reserved-memory' dma-trans@3c000000: addr=3c000000 size=4000000
  'reserved-memory' cma: addr=10000000 size=10000000
   Using Device Tree in place at 000000000a100000, end 000000000a12e600
No file: 
No file: 
No file: 
Adding bank: 0x00200000 - 0x08400000 (size: 0x08200000)
Adding bank: 0x09400000 - 0xf0000000 (size: 0xe6c00000)
Adding bank: 0x100000000 - 0x200000000 (size: 0x100000000)
Total: 1955.65 ms

Starting kernel ...

I/TC: Secondary CPU 1 initializing
I/TC: Secondary CPU 1 switching to normal world boot
I/TC: Secondary CPU 2 initializing
I/TC: Secondary CPU 2 switching to normal world boot
I/TC: Secondary CPU 3 initializing
I/TC: Secondary CPU 3 switching to normal world boot
I/TC: Secondary CPU 4 initializing
I/TC: Secondary CPU 4 switching to normal world boot
I/TC: Secondary CPU 5 initializing
I/TC: Secondary CPU 5 switching to normal world boot
I/TC: Secondary CPU 6 initializing
I/TC: Secondary CPU 6 switching to normal world boot
I/TC: Secondary CPU 7 initializing
I/TC: Secondary CPU 7 switching to normal world boot
mount: mounting PARTLABEL=oem on /oem failed: No such file or directory
mount: mounting PARTLABEL=userdata on /userdata failed: No such file or directory
Starting syslogd: OK
Starting klogd: OK
Running sysctl: OK
/usr/bin/modetest
Populating /dev using udev: done
Initializing random number generator: OK
Saving random seed: OK
Will now mount all partitions in /etc/fstab
Note: Will skip fsck, remove /.skip_fsck to enable
Handling rootfs: /dev/mmcblk0p6 / ext4 rw,noauto 1
Handling oem: /dev/mmcblk0p7 /oem ext2 defaults 2
Mounting /dev/mmcblk0p7(ext2) on /oem 
Handling userdata: /dev/mmcblk0p8 /userdata ext2 defaults 2
Mounting /dev/mmcblk0p8(ext2) on /userdata 
Log saved to /tmp/mountall.log
Starting system message bus: done
Starting iptables: OK
Starting bluetoothd: OK
Starting network: RTNETLINK answers: No such device
RTNETLINK answers: Network is unreachable
FAIL
starting weston... done.
Starting dropbear sshd: OK
Starting lighttpd: OK
Starting matrix: /etc/init.d/S50matrix-browser: line 12: warning: setlocale: LC_ALL: cannot change locale (zh_CN.utf8): No such file or directory
Starting pulseaudio: W: [pulseaudio] main.c: This program is not intended to be run as root (unless --system is specified).
Date: 1970-01-01 CST
[08:00:05.904] weston 10.0.0
               https://wayland.freedesktop.org
               Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
               Build: v0.3-8-g8cb8c2b72+
[08:00:05.905] Command line: /usr/bin/weston
[08:00:05.905] OS: Linux, 5.10.66, #4 SMP Tue Mar 4 15:07:40 CST 2025, aarch64
[08:00:05.905] Flight recorder: enabled
[08:00:05.905] warning: XDG_RUNTIME_DIR "/var/run" is not configured
correctly.  Unix access mode must be 0700 (current mode is 0755),
and must be owned by the user UID 0 (current owner is UID 0).
Refer to your distribution on how to get it, or
http://www.freedesktop.org/wiki/Specifications/basedir-spec
on how to implement it.
[08:00:05.905] Using config file '/etc/xdg/weston/weston.ini'
[08:00:05.906] Output repaint window is -1 ms maximum.
[08:00:05.906] Loading module '/usr/lib/libweston-10/drm-backend.so'
[08:00:05.909] initializing drm backend
[08:00:05.909] Entering mirror mode.
[08:00:05.909] Trying weston_launch launcher...
[08:00:05.909] could not get launcher fd from env
[08:00:05.909] Trying direct launcher...
[08:00:05.911] using /dev/dri/card0
[08:00:05.911] DRM: does not support atomic modesetting
[08:00:05.911] DRM: does not support GBM modifiers
[08:00:05.911] DRM: supports picture aspect ratio
[08:00:05.913] Loading module '/usr/lib/libweston-10/gl-renderer.so'
[08:00:05.915] EGL client extensions: EGL_EXT_client_extensions
               EGL_EXT_platform_base EGL_KHR_client_get_all_proc_addresses
               EGL_KHR_platform_gbm EGL_KHR_platform_wayland
               EGL_EXT_platform_wayland
arm_release_ver of this libmali is 'g6p0-01eac0', rk_so_ver is '6'.
[08:00:05.929] EGL version: 1.4 Valhall-"g6p0-01eac0"
[08:00:05.929] EGL vendor: ARM
[08:00:05.929] EGL client APIs: OpenGL_ES
[08:00:05.929] EGL extensions: EGL_WL_bind_wayland_display
               EGL_NV_context_priority_realtime EGL_KHR_partial_update
               EGL_KHR_config_attribs EGL_KHR_image EGL_KHR_image_base
               EGL_KHR_fence_sync EGL_KHR_wait_sync EGL_KHR_gl_colorspace
               EGL_KHR_get_all_proc_addresses EGL_IMG_context_priority
               EGL_KHR_no_config_context EGL_EXT_image_dma_buf_import
               EGL_EXT_image_dma_buf_import_modifiers EGL_EXT_yuv_surface
               EGL_EXT_pixel_format_float EGL_ARM_pixmap_multisample_discard
               EGL_KHR_gl_texture_2D_image EGL_KHR_gl_renderbuffer_image
               EGL_KHR_create_context EGL_KHR_surfaceless_context
               EGL_KHR_gl_texture_cubemap_image EGL_EXT_image_gl_colorspace
               EGL_EXT_create_context_robustness
[08:00:05.929] warning: Disabling render GPU timeline and explicit synchronization due to missing EGL_ANDROID_native_fence_sync extension
[08:00:05.930] EGL_KHR_surfaceless_context available
[08:00:05.948] GL version: OpenGL ES 3.2 v1.g6p0-01eac0.ba52c908d926792b8f5fe28f383a2b03
[08:00:05.948] GLSL version: OpenGL ES GLSL ES 3.20
[08:00:05.948] GL vendor: ARM
[08:00:05.948] GL renderer: Mali-LODX
[08:00:05.949] GL extensions: GL_ARM_rgba8 GL_ARM_mali_shader_binary
               GL_OES_depth24 GL_OES_depth_texture
               GL_OES_depth_texture_cube_map GL_OES_packed_depth_stencil
               GL_OES_rgb8_rgba8 GL_EXT_read_format_bgra
               GL_OES_compressed_paletted_texture
               GL_OES_compressed_ETC1_RGB8_texture GL_OES_standard_derivatives
               GL_OES_EGL_image GL_OES_EGL_image_external
               GL_OES_EGL_image_external_essl3 GL_OES_EGL_sync
               GL_OES_texture_npot GL_OES_vertex_half_float
               GL_OES_required_internalformat GL_OES_vertex_array_object
               GL_OES_mapbuffer GL_EXT_texture_format_BGRA8888
               GL_EXT_texture_rg GL_EXT_texture_type_2_10_10_10_REV
               GL_OES_fbo_render_mipmap GL_OES_element_index_uint
               GL_EXT_shadow_samplers GL_OES_texture_compression_astc
               GL_KHR_texture_compression_astc_ldr
               GL_KHR_texture_compression_astc_hdr
               GL_KHR_texture_compression_astc_sliced_3d
               GL_EXT_texture_compression_astc_decode_mode
               GL_EXT_texture_compression_astc_decode_mode_rgb9e5 GL_KHR_debug
               GL_EXT_occlusion_query_boolean GL_EXT_disjoint_timer_query
               GL_EXT_blend_minmax GL_EXT_discard_framebuffer
               GL_OES_get_program_binary GL_OES_texture_3D
               GL_EXT_texture_storage GL_EXT_multisampled_render_to_texture
               GL_EXT_multisampled_render_to_texture2
               GL_OES_surfaceless_context GL_OES_texture_stencil8
               GL_EXT_shader_pixel_local_storage
               GL_ARM_shader_framebuffer_fetch
               GL_ARM_shader_framebuffer_fetch_depth_stencil
               GL_ARM_mali_program_binary GL_EXT_sRGB
               GL_EXT_sRGB_write_control GL_EXT_texture_sRGB_decode
               GL_EXT_texture_sRGB_R8 GL_EXT_texture_sRGB_RG8
               GL_KHR_blend_equation_advanced
               GL_KHR_blend_equation_advanced_coherent
               GL_OES_texture_storage_multisample_2d_array
               GL_OES_shader_image_atomic GL_EXT_robustness
               GL_EXT_draw_buffers_indexed GL_OES_draw_buffers_indexed
               GL_EXT_texture_border_clamp GL_OES_texture_border_clamp
               GL_EXT_texture_cube_map_array GL_OES_texture_cube_map_array
               GL_OES_sample_variables GL_OES_sample_shading
               GL_OES_shader_multisample_interpolation GL_EXT_shader_io_blocks
               GL_OES_shader_io_blocks GL_EXT_tessellation_shader
               GL_OES_tessellation_shader GL_EXT_primitive_bounding_box
               GL_OES_primitive_bounding_box GL_EXT_geometry_shader
               GL_OES_geometry_shader GL_ANDROID_extension_pack_es31a
               GL_EXT_gpu_shader5 GL_OES_gpu_shader5 GL_EXT_texture_buffer
               GL_OES_texture_buffer GL_EXT_copy_image GL_OES_copy_image
               GL_EXT_shader_non_constant_global_initializers
               GL_EXT_color_buffer_half_float GL_EXT_unpack_subimage
               GL_EXT_color_buffer_float GL_EXT_float_blend GL_EXT_YUV_target
               GL_OVR_multiview GL_OVR_multiview2
               GL_OVR_multiview_multisampled_render_to_texture
               GL_KHR_robustness GL_KHR_robust_buffer_access_behavior
               GL_EXT_draw_elements_base_vertex
               GL_OES_draw_elements_base_vertex GL_EXT_buffer_storage
               GL_EXT_texture_filter_anisotropic GL_OES_texture_float_linear
               GL_ARM_texture_unnormalized_coordinates
               GL_EXT_shader_framebuffer_fetch
[08:00:06.054] GL ES 3.2 - renderer features:
               read-back format: BGRA
               wl_shm sub-image to texture: yes
               EGL Wayland extension: yes
[08:00:06.054] couldn't fstat launcher tty: Bad file descriptor
[08:00:06.065] event2  - adc-keys: is tagged by udev as: Keyboard
[08:00:06.065] event2  - adc-keys: device is a keyboard
[08:00:06.066] event1  - rockchip,dp1 rockchip,dp1: is tagged by udev as: Switch
[08:00:06.116] event1  - not using input device '/dev/input/event1'
[08:00:06.117] event0  - rk805 pwrkey: is tagged by udev as: Keyboard
[08:00:06.117] event0  - rk805 pwrkey: device is a keyboard
[08:00:06.118] event3  - rockchip-hdmi0 rockchip-hdmi0: is tagged by udev as: Switch
[08:00:06.173] event3  - not using input device '/dev/input/event3'
[08:00:06.202] libinput: configuring device "adc-keys".
[08:00:06.202] libinput: configuring device "rk805 pwrkey".
[08:00:06.202] DRM: head 'HDMI-A-1' updated, connector 409 is disconnected.
[08:00:06.202] DRM: head 'HDMI-A-1' found, connector 409 is disconnected.
[08:00:06.202] DRM: head 'DSI-1' updated, connector 419 is connected, EDID make 'unknown', model 'unknown', serial 'unknown'
[08:00:06.202] DRM: head 'DSI-1' found, connector 419 is connected, EDID make 'unknown', model 'unknown', serial 'unknown'
[08:00:06.202] DRM: head 'DSI-2' updated, connector 422 is connected, EDID make 'unknown', model 'unknown', serial 'unknown'
[08:00:06.203] DRM: head 'DSI-2' found, connector 422 is connected, EDID make 'unknown', model 'unknown', serial 'unknown'
[08:00:06.203] DRM: head 'DP-1' updated, connector 425 is disconnected.
[08:00:06.203] DRM: head 'DP-1' found, connector 425 is disconnected.
[08:00:06.203] Registered plugin API 'weston_drm_output_api_v1' of size 24
[08:00:06.203] Color manager: no-op
[08:00:06.203] Output 'DSI-1' using color profile: built-in default sRGB SDR profile
[08:00:06.203] Chosen EGL config details: id:   9 rgba: 8 8 8 0 buf: 24 dep:  0 stcl: 0 int: 0-1 type: win|pbf|swap_preserved vis_id: XRGB8888 (0x34325258)
[08:00:06.203] Output DSI-1 (crtc 102) video modes:
               [email protected], preferred, current, 45.0 MHz
[08:00:06.203] associating input device event2 with output DSI-1 (none by udev)
[08:00:06.203] associating input device event0 with output DSI-1 (none by udev)
[08:00:06.203] Output 'DSI-1' enabled with head(s) DSI-1
[08:00:06.203] Output 'DSI-2' using color profile: built-in default sRGB SDR profile
[08:00:06.203] Chosen EGL config details: id:   9 rgba: 8 8 8 0 buf: 24 dep:  0 stcl: 0 int: 0-1 type: win|pbf|swap_preserved vis_id: XRGB8888 (0x34325258)
[08:00:06.204] Output DSI-2 (crtc 119) video modes:
               [email protected], preferred, current, 45.0 MHz
[08:00:06.204] Output DSI-2 changed to mirror output
[08:00:06.204] Output 'DSI-2' enabled with head(s) DSI-2
[08:00:06.204] Compositor capabilities:
               arbitrary surface rotation: yes
               screen capture uses y-flip: yes
               cursor planes: yes
               arbitrary resolutions: no
               view mask clipping: yes
               explicit sync: no
               color operations: yes
               presentation clock: CLOCK_MONOTONIC, id 1
               presentation clock resolution: 0.000000001 s
[08:00:06.204] Loading module '/usr/lib/weston/desktop-shell.so'
[08:00:06.206] launching '/usr/libexec/weston-keyboard'
[08:00:06.207] Note: support for the deprecated wl_shell interface is disabled. If a legacy client still needs it, it can be re-enabled by passing -Ddeprecated-wl-shell=true to Meson when building Weston.
[08:00:06.207] launching '/usr/libexec/weston-desktop-shell'
could not load cursor 'dnd-move'
could not load cursor 'dnd-copy'
could not load cursor 'dnd-none'
could not load cursor 'dnd-move'
could not load cursor 'dnd-copy'
could not load cursor 'dnd-none'
xkbcommon: ERROR: couldn't find a Compose file for locale "C" (mapped to "C")
could not create XKB compose table for locale 'C'.  Disabiling compose
QStandardPaths: runtime directory '/var/run' is not a directory, but a symbolic link to a directory permissions 0755 owned by UID 0 GID 0
xkbcommon: ERROR: couldn't find a Compose file for locale "C" (mapped to "C")
could not create XKB compose table for locale 'C'.  Disabiling compose
Failure: No such entity
OK
Starting sshd: OK
Debug: configfs_init
mkdir: cannot create directory '/sys/kernel/config/usb_gadget/rockchip/functions/uac1.gs0': No such file or directory
mkdir: cannot create directory '/sys/kernel/config/usb_gadget/rockchip/functions/uac2.gs0': No such file or directory
mkdir: cannot create directory '/sys/kernel/config/usb_gadget/rockchip/functions/mtp.gs0': No such file or directory
mkdir: cannot create directory '/sys/kernel/config/usb_gadget/rockchip/functions/rndis.gs0': No such file or directory
mkdir: cannot create directory '/sys/kernel/config/usb_gadget/rockchip/functions/acm.gs6': No such file or directory
mkdir: cannot create directory '/sys/kernel/config/usb_gadget/rockchip/functions/hid.usb0': No such file or directory
Starting vsftpd: OK
Starting dnsmasq: 
dnsmasq: unknown interface uap0
FAIL
Starting input-event-daemon: input-event-daemon: Start parsing /etc/input-event-daemon.conf...
input-event-daemon: Adding device: /dev/input/event0...
input-event-daemon: Adding device: /dev/input/event1...
input-event-daemon: Adding device: /dev/input/event2...
input-event-daemon: Adding device: /dev/input/event3...
input-event-daemon: Start listening on 4 devices...
done
root@ok3588:/# [08:00:11.999] Detected a monitor change on head 'DSI-1', not bothering to do anything about it.
[08:00:11.999] Detected a monitor change on head 'DSI-2', not bothering to do anything about it.
[08:00:22.380] DRM: head 'HDMI-A-1' updated, connector 409 is connected, EDID make 'GSM', model '27MP35', serial 'unknown'
[08:00:22.380] Detected a monitor change on head 'DSI-1', not bothering to do anything about it.
[08:00:22.380] Detected a monitor change on head 'DSI-2', not bothering to do anything about it.
[08:00:22.380] Output 'HDMI-A-1' using color profile: built-in default sRGB SDR profile
[08:00:22.381] Chosen EGL config details: id:   9 rgba: 8 8 8 0 buf: 24 dep:  0 stcl: 0 int: 0-1 type: win|pbf|swap_preserved vis_id: XRGB8888 (0x34325258)
[08:00:22.381] Output HDMI-A-1 (crtc 68) video modes:
               [email protected], preferred, current, 148.5 MHz
               [email protected] 16:9, 148.5 MHz
               [email protected] 16:9, 148.4 MHz
               [email protected], 74.2 MHz
               [email protected] 16:9, 74.2 MHz
               [email protected] 16:9, 74.2 MHz
               [email protected] 16:9, 148.5 MHz
               [email protected] 16:9, 74.2 MHz
               [email protected], 119.0 MHz
               [email protected], 101.0 MHz
               [email protected], 108.0 MHz
               [email protected], 135.0 MHz
               [email protected], 108.0 MHz
               [email protected], 88.8 MHz
               [email protected], 71.0 MHz
               [email protected], 108.0 MHz
               [email protected], 74.2 MHz
               [email protected] 16:9, 74.2 MHz
               [email protected] 16:9, 74.2 MHz
               [email protected] 16:9, 74.2 MHz
               [email protected], 78.8 MHz
               [email protected], 65.0 MHz
               [email protected], 49.5 MHz
               [email protected], 40.0 MHz
               [email protected] 16:9, 27.0 MHz
               [email protected] 4:3, 27.0 MHz
               [email protected] 16:9, 27.0 MHz
               [email protected], 27.0 MHz
               [email protected] 16:9, 27.0 MHz
               [email protected], 31.5 MHz
               [email protected] 4:3, 25.2 MHz
               [email protected], 25.2 MHz
               [email protected] 4:3, 25.2 MHz
               [email protected], 28.3 MHz
[08:00:22.382] Output HDMI-A-1 changed to mirror output
[08:00:22.382] Output 'HDMI-A-1' enabled with head(s) HDMI-A-1
[08:00:23.518] Detected a monitor change on head 'HDMI-A-1', not bothering to do anything about it.
[08:00:23.518] Detected a monitor change on head 'DSI-1', not bothering to do anything about it.
[08:00:23.519] Detected a monitor change on head 'DSI-2', not bothering to do anything about it.
[08:00:24.660] Detected a monitor change on head 'HDMI-A-1', not bothering to do anything about it.
[08:00:24.660] Detected a monitor change on head 'DSI-1', not bothering to do anything about it.
[08:00:24.660] Detected a monitor change on head 'DSI-2', not bothering to do anything about it.

root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# ls -l
total 1708
-rw-r--r--   1 root root 1674382 Jan  1  1970 RED1280IR1024.mp4
drwxr-xr-x   2 root root    4096 Mar  9  2023 bin
-rw-r--r--   1 root root     351 Mar  9  2023 busybox.fragment
lrwxrwxrwx   1 root root       8 Mar  9  2023 data -> userdata
drwxr-xr-x  14 root root    3820 Jan  1 08:00 dev
drwxr-xr-x  23 root root    4096 Jan  1 08:00 etc
drwxr-xr-x   4 root root    4096 Jan  1 08:00 home
drwxr-xr-x   6 root root    4096 Aug 17  2023 lib
lrwxrwxrwx   1 root root       3 Mar  9  2023 lib64 -> lib
lrwxrwxrwx   1 root root      11 Mar  9  2023 linuxrc -> bin/busybox
drwx------   2 root root   16384 Mar  9  2023 lost+found
drwxr-xr-x  14 root root    4096 Mar  9  2023 media
lrwxrwxrwx   1 root root      23 Mar  9  2023 misc -> /dev/block/by-name/misc
drwxr-xr-x   4 root root    4096 Mar  9  2023 mnt
drwxr-xr-x   3 root root    4096 Mar  4  2025 oem
drwxr-xr-x   2 root root    4096 Mar  9  2023 opt
dr-xr-xr-x 250 root root       0 Jan  1 08:00 proc
drwx------   2 root root    4096 Mar  9  2023 root
drwxr-xr-x   7 root root     340 Jan  1 08:00 run
drwxr-xr-x   2 root root    4096 Sep 14  2023 sbin
lrwxrwxrwx   1 root root      10 Mar  9  2023 sdcard -> mnt/sdcard
dr-xr-xr-x  14 root root       0 Jan  1 08:00 sys
drwxrwxrwt   7 root root     400 Jan  1 08:00 tmp
lrwxrwxrwx   1 root root       9 Mar  9  2023 udisk -> mnt/udisk
drwxr-xr-x   5 root root    4096 Jan  1 08:00 userdata
drwxr-xr-x  11 root root    4096 Sep 14  2023 usr
drwxr-xr-x   5 root root    4096 Mar  9  2023 var
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# lsusb
Bus 005 Device 001: ID 1d6b:0002
Bus 003 Device 001: ID 1d6b:0001
Bus 001 Device 001: ID 1d6b:0002
Bus 008 Device 001: ID 1d6b:0003
Bus 006 Device 001: ID 1d6b:0003
Bus 004 Device 001: ID 1d6b:0001
Bus 002 Device 001: ID 1d6b:0002
Bus 007 Device 001: ID 1d6b:0002
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# ls -l /dev/video*
-rw-r--r-- 1 root root       4 Jan  1 08:00 /dev/video-dec0
-rw-r--r-- 1 root root       4 Jan  1 08:00 /dev/video-enc0
crw-rw---- 1 root video 81,  0 Jan  1 08:00 /dev/video0
crw-rw---- 1 root video 81,  1 Jan  1 08:00 /dev/video1
crw-rw---- 1 root video 81,  2 Jan  1 08:00 /dev/video2
crw-rw---- 1 root video 81,  3 Jan  1 08:00 /dev/video3
crw-rw---- 1 root video 81,  4 Jan  1 08:00 /dev/video4
crw-rw---- 1 root video 81,  5 Jan  1 08:00 /dev/video5
crw-rw---- 1 root video 81,  6 Jan  1 08:00 /dev/video6
crw-rw---- 1 root video 81,  7 Jan  1 08:00 /dev/video7
crw-rw---- 1 root video 81, 11 Jan  1 08:00 /dev/video8
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# lsusb
Bus 005 Device 001: ID 1d6b:0002
Bus 003 Device 001: ID 1d6b:0001
Bus 001 Device 001: ID 1d6b:0002
Bus 008 Device 002: ID 04b4:02f7
Bus 008 Device 001: ID 1d6b:0003
Bus 006 Device 001: ID 1d6b:0003
Bus 004 Device 001: ID 1d6b:0001
Bus 002 Device 001: ID 1d6b:0002
Bus 007 Device 001: ID 1d6b:0002
root@ok3588:/# 
root@ok3588:/# ls -l /dev/video*
-rw-r--r-- 1 root root       4 Jan  1 08:00 /dev/video-dec0
-rw-r--r-- 1 root root       4 Jan  1 08:00 /dev/video-enc0
crw-rw---- 1 root video 81,  0 Jan  1 08:00 /dev/video0
crw-rw---- 1 root video 81,  1 Jan  1 08:00 /dev/video1
crw-rw---- 1 root video 81, 13 Jan  1 08:01 /dev/video10
crw-rw---- 1 root video 81,  2 Jan  1 08:00 /dev/video2
crw-rw---- 1 root video 81,  3 Jan  1 08:00 /dev/video3
crw-rw---- 1 root video 81,  4 Jan  1 08:00 /dev/video4
crw-rw---- 1 root video 81,  5 Jan  1 08:00 /dev/video5
crw-rw---- 1 root video 81,  6 Jan  1 08:00 /dev/video6
crw-rw---- 1 root video 81,  7 Jan  1 08:00 /dev/video7
crw-rw---- 1 root video 81, 11 Jan  1 08:00 /dev/video8
crw-rw---- 1 root video 81, 12 Jan  1 08:01 /dev/video9
root@ok3588:/# 
 t. ! queue ! waylandsinkh264parse ! qtmux ! filesink location=RED1280IR1024.mp4 
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Redistribute latency...
Redistribute latency...
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 0:00:09.636617468
Setting pipeline to NULL ...
Freeing pipeline ...
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# v4l2-ctl --list-devices
rk_hdmirx (fdee0000.hdmirx-controller):
    /dev/video8

rkcif-mipi-lvds2 (platform:rkcif):
    /dev/media0

rkcif (platform:rkcif-mipi-lvds2):
    /dev/video0
    /dev/video1
    /dev/video2
    /dev/video3
    /dev/video4
    /dev/video5
    /dev/video6
    /dev/video7

JKY: JKY (usb-xhci-hcd.5.auto-1):
    /dev/video9
    /dev/video10
    /dev/media1

root@ok3588:/# 
root@ok3588:/# v4l2-ctl --list-formats-ext -d /dev/video9
ioctl: VIDIOC_ENUM_FMT
    Type: Video Capture

    [0]: 'YUYV' (YUYV 4:2:2)
        Size: Discrete 1280x1024
            Interval: Discrete 0.033s (30.000 fps)
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# v4l2-ctl -V -d /dev/video9
Format Video Capture:
    Width/Height      : 1280/1024
    Pixel Format      : 'YUYV' (YUYV 4:2:2)
    Field             : None
    Bytes per Line    : 2560
    Size Image        : 2621440
    Colorspace        : Default
    Transfer Function : Default (maps to Rec. 709)
    YCbCr/HSV Encoding: Default (maps to ITU-R 601)
    Quantization      : Default (maps to Limited Range)
    Flags             : 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# lsusb
Bus 005 Device 001: ID 1d6b:0002
Bus 003 Device 001: ID 1d6b:0001
Bus 001 Device 001: ID 1d6b:0002
Bus 008 Device 001: ID 1d6b:0003
Bus 006 Device 001: ID 1d6b:0003
Bus 004 Device 001: ID 1d6b:0001
Bus 002 Device 001: ID 1d6b:0002
Bus 007 Device 001: ID 1d6b:0002
root@ok3588:/# 
root@ok3588:/# ls -l /dev/video*
-rw-r--r-- 1 root root       4 Jan  1 08:00 /dev/video-dec0
-rw-r--r-- 1 root root       4 Jan  1 08:00 /dev/video-enc0
crw-rw---- 1 root video 81,  0 Jan  1 08:00 /dev/video0
crw-rw---- 1 root video 81,  1 Jan  1 08:00 /dev/video1
crw-rw---- 1 root video 81,  2 Jan  1 08:00 /dev/video2
crw-rw---- 1 root video 81,  3 Jan  1 08:00 /dev/video3
crw-rw---- 1 root video 81,  4 Jan  1 08:00 /dev/video4
crw-rw---- 1 root video 81,  5 Jan  1 08:00 /dev/video5
crw-rw---- 1 root video 81,  6 Jan  1 08:00 /dev/video6
crw-rw---- 1 root video 81,  7 Jan  1 08:00 /dev/video7
crw-rw---- 1 root video 81, 11 Jan  1 08:00 /dev/video8
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# ls -l /dev/video*
-rw-r--r-- 1 root root       4 Jan  1 08:00 /dev/video-dec0
-rw-r--r-- 1 root root       4 Jan  1 08:00 /dev/video-enc0
crw-rw---- 1 root video 81,  0 Jan  1 08:00 /dev/video0
crw-rw---- 1 root video 81,  1 Jan  1 08:00 /dev/video1
crw-rw---- 1 root video 81, 13 Jan  1 08:09 /dev/video10
crw-rw---- 1 root video 81,  2 Jan  1 08:00 /dev/video2
crw-rw---- 1 root video 81,  3 Jan  1 08:00 /dev/video3
crw-rw---- 1 root video 81,  4 Jan  1 08:00 /dev/video4
crw-rw---- 1 root video 81,  5 Jan  1 08:00 /dev/video5
crw-rw---- 1 root video 81,  6 Jan  1 08:00 /dev/video6
crw-rw---- 1 root video 81,  7 Jan  1 08:00 /dev/video7
crw-rw---- 1 root video 81, 11 Jan  1 08:00 /dev/video8
crw-rw---- 1 root video 81, 12 Jan  1 08:09 /dev/video9
root@ok3588:/# 
root@ok3588:/# lsusb
Bus 005 Device 001: ID 1d6b:0002
Bus 003 Device 001: ID 1d6b:0001
Bus 001 Device 001: ID 1d6b:0002
Bus 008 Device 001: ID 1d6b:0003
Bus 006 Device 001: ID 1d6b:0003
Bus 004 Device 001: ID 1d6b:0001
Bus 002 Device 001: ID 1d6b:0002
Bus 007 Device 002: ID 04b4:02f7
Bus 007 Device 001: ID 1d6b:0002
root@ok3588:/# 
root@ok3588:/# v4l2-ctl --list-devices
rk_hdmirx (fdee0000.hdmirx-controller):
    /dev/video8

rkcif-mipi-lvds2 (platform:rkcif):
    /dev/media0

rkcif (platform:rkcif-mipi-lvds2):
    /dev/video0
    /dev/video1
    /dev/video2
    /dev/video3
    /dev/video4
    /dev/video5
    /dev/video6
    /dev/video7

JKY: JKY (usb-xhci-hcd.5.auto-1):
    /dev/video9
    /dev/video10
    /dev/media1

root@ok3588:/# 
root@ok3588:/# v4l2-ctl --list-formats-ext -d /dev/video9
ioctl: VIDIOC_ENUM_FMT
    Type: Video Capture

    [0]: 'YUYV' (YUYV 4:2:2)
        Size: Discrete 1280x1024
            Interval: Discrete 0.033s (30.000 fps)
root@ok3588:/# 
root@ok3588:/# v4l2-ctl -V -d /dev/video9
Format Video Capture:
    Width/Height      : 1280/1024
    Pixel Format      : 'YUYV' (YUYV 4:2:2)
    Field             : None
    Bytes per Line    : 2560
    Size Image        : 2621440
    Colorspace        : Default
    Transfer Function : Default (maps to Rec. 709)
    YCbCr/HSV Encoding: Default (maps to ITU-R 601)
    Quantization      : Default (maps to Limited Range)
    Flags             : 
root@ok3588:/# 
 t. ! queue ! waylandsinkh264parse ! qtmux ! filesink location=RED1280IR1024.mp4 
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 0:00:02.989064467
Setting pipeline to NULL ...
Freeing pipeline ...
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 
root@ok3588:/# 

[END] 2025/4/10 15:09:37
 

猜你喜欢

转载自blog.csdn.net/wb4916/article/details/147118858
今日推荐