From 992d1969fcf222b072ac338908b21805611c9b36 Mon Sep 17 00:00:00 2001
From: android <android@lingyun.com>
Date: Fri, 12 Jul 2024 15:08:07 +0800
Subject: [PATCH] Update linux SDK build shell script and patches

---
 linux_sdk/build.sh                |  110 ++++++----
 linux_sdk/patches/kernel.patch    |  226 ++++++++++++++++++++--
 linux_sdk/patches/buildroot.patch |  213 +++++++++++++++++++++
 3 files changed, 482 insertions(+), 67 deletions(-)

diff --git a/linux_sdk/build.sh b/linux_sdk/build.sh
index bbbb060..f47f981 100755
--- a/linux_sdk/build.sh
+++ b/linux_sdk/build.sh
@@ -7,7 +7,7 @@
 TOP_PATH=$(realpath $PRJ_PATH/..)
 
 # SDK build workspace
-SDK_DIR=sdk_build
+SDK_DIR=linuxsdk_build
 
 # binaries build prefix install path
 PRFX_PATH=$PRJ_PATH/install
@@ -97,72 +97,88 @@
     export SDK_PATH=`jq -r ".linux.sdk_path" $CONF_FILE`
     export DISTRO=`jq -r ".linux.distro" $CONF_FILE | tr 'A-Z' 'a-z'`
 
-	export ARCH=arm64
+    export ARCH=arm64
 
-	if [[ $BOARD =~ igkboard-rk3568 ]] ; then
-		LUNCH_BOARD=rockchip_rk3568_evb1_ddr4_v10_defconfig
-	fi
+    if [[ $BOARD =~ igkboard-rk3568 ]] ; then
+        LAUNCH_BOARD=rockchip_rk3568_evb1_ddr4_v10_defconfig
+    fi
 
-	PYTHON_VERSION=$(python --version 2>&1 | awk '{print $2}' | cut -d. -f1)
-	if [ $PYTHON_VERSION != "3" ] ; then
-		PYTHON_VERSION=$(python --version 2>&1)
-		pr_error "ERROR: This SDK build need Python3, current version is $PYTHON_VERSION"
-		pr_warn "You can use 'sudo update-alternatives --config python' command to switch it"
-		exit
-	fi
+    PYTHON_VERSION=$(python --version 2>&1 | awk '{print $2}' | cut -d. -f1)
+    if [ $PYTHON_VERSION != "3" ] ; then
+        PYTHON_VERSION=$(python --version 2>&1)
+        pr_error "ERROR: This SDK build need Python3, current version is $PYTHON_VERSION"
+        pr_warn "You can use 'sudo update-alternatives --config python' command to switch it"
+        exit
+    fi
 }
 
 function do_fetch()
 {
-	SDK_FPATH=$SDK_PATH/$SDK_VER
+    SDK_FPATH=$SDK_PATH/$SDK_VER
 
-	PATCH_FLAG="$SDK_DIR/kernel/arch/arm64/configs/rockchip_linux_defconfig"
+    SDK_FLAG=$SDK_DIR/kernel/Makefile
 
-	if [ -e $PATCH_FLAG ] ;  then
-		pr_warn "SDK source code fetched already, skip do fetch"
-		return ;
-	fi
+    cd $PRJ_PATH
 
-	if [ ! -d $SDK_DIR/.repo ] ; then
+    if [ -e $SDK_FLAG ] ;  then
+        pr_warn "SDK source code fetched already, skip do fetch"
+        return ;
+    fi
 
-		SDK_FILE=`ls $SDK_FPATH/*.tar.bz2 | head -n 1`
+    if [ ! -d $SDK_DIR/.repo ] ; then
 
-		if [ ! -d $SDK_FPATH ] ; then
-			pr_error "ERROR: SDK package folder '$SDK_FPATH' doesn't exist!"
-			exit
-		fi
+        if [ ! -d $SDK_FPATH ] ; then
+            pr_error "ERROR: SDK package folder '$SDK_FPATH' doesn't exist!"
+            exit
+        fi
 
-		pr_info "decompress SDK tarball $SDK_FILE..."
+        SDK_FILE=`ls $SDK_FPATH/*.tar.bz2 | head -n 1`
 
-		do_unpack $SDK_FILE $SDK_DIR
-	fi
-	
-	cd $SDK_DIR
+        pr_info "decompress SDK tarball $SDK_FILE..."
+        do_unpack $SDK_FILE $SDK_DIR
+    fi
 
-	if [ ! -e $PATCH_FLAG ] ; then
-		pr_info "repo sync to checkout source code..."
-		./.repo/repo/repo sync -l
-	fi
+    if [ ! -e $SDK_FLAG ] ; then
+        pr_info "repo sync to checkout source code..."
+        cd $SDK_DIR
+        ./.repo/repo/repo sync -l
+    fi
 
-	if ! grep -q '^CONFIG_CAN=y' $PATCH_FLAG ; then 
-		pr_info "patch for linux kernel..."
-		cd kernel
-		patch -p1 < $PRJ_PATH/patch/kernel.patch
-	fi
+}
+
+function do_patch()
+{
+    PATCH_FLAG="$SDK_DIR/kernel/arch/arm64/configs/rockchip_linux_defconfig"
+
+    cd $PRJ_PATH
+
+    if grep -q '^CONFIG_CAN=y' $PATCH_FLAG ; then
+        pr_warn "INFO: Patch for Linux SDK already"
+        return ;
+    fi
+
+    pr_info "patch for linux kernel..."
+    cd $SDK_DIR/kernel
+    patch -p1 < $PRJ_PATH/patches/kernel.patch
+    cd -
+
+    pr_info "patch for linux buildroot..."
+    cd $SDK_DIR/buildroot
+    patch -p1 < $PRJ_PATH/patches/buildroot.patch
+    cd -
 }
 
 function do_build()
 {
-	pr_info "Choose your board"
+    cd $PRJ_PATH
+    pr_info "start build $LAUNCH_BOARD..."
 
-	cd $SDK_DIR
-	
-	./build.sh lunch:${LUNCH_BOARD}
+    cd $SDK_DIR
+    ./build.sh lunch:${LAUNCH_BOARD}
+    RK_ROOTFS_SYSTEM=$DISTRO ./build.sh
 
-	RK_ROOTFS_SYSTEM=$DISTRO ./build.sh
-
-	pr_info "System image will be installed to $PRJ_PATH/$SDK_DIR/rockdev"
-	ls ./rockdev
+    pr_info "System image will be installed to $SDK_DIR/rockdev"
+    ls ./rockdev
 }
 
 #+-------------------------+
@@ -175,4 +191,6 @@
 
 do_fetch
 
+do_patch
+
 do_build
diff --git a/linux_sdk/patches/buildroot.patch b/linux_sdk/patches/buildroot.patch
new file mode 100644
index 0000000..62d8cac
--- /dev/null
+++ b/linux_sdk/patches/buildroot.patch
@@ -0,0 +1,213 @@
+diff --git a/configs/rockchip_rk3568_defconfig b/configs/rockchip_rk3568_defconfig
+index e06f067bf4..c912cc74cf 100644
+--- a/configs/rockchip_rk3568_defconfig
++++ b/configs/rockchip_rk3568_defconfig
+@@ -1,23 +1,185 @@
+-#include "base/base.config"
+-#include "chips/rk3566_rk3568_aarch64.config"
+-#include "font/chinese.config"
+-#include "fs/exfat.config"
+-#include "fs/ntfs.config"
+-#include "fs/vfat.config"
+-#include "gpu/gpu.config"
+-#include "multimedia/audio.config"
+-#include "multimedia/camera.config"
+-#include "multimedia/gst/audio.config"
+-#include "multimedia/gst/camera.config"
+-#include "multimedia/gst/rtsp.config"
+-#include "multimedia/gst/video.config"
+-#include "multimedia/mpp.config"
+-#include "wifibt/bt.config"
+-#include "wifibt/wireless.config"
+-#include "tools/benchmark.config"
+-#include "tools/common.config"
+-#include "tools/test.config"
+-#include "chromium.config"
+-#include "npu2.config"
+-#include "powermanager.config"
+-#include "weston.config"
++BR2_aarch64=y
++BR2_cortex_a55=y
++BR2_PRIMARY_SITE="http://sources.buildroot.net"
++BR2_BACKUP_SITE=""
++BR2_CCACHE=y
++BR2_TOOLCHAIN_BUILDROOT_CXX=y
++BR2_TARGET_GENERIC_HOSTNAME="rk3566_rk3568"
++BR2_TARGET_GENERIC_ISSUE="Welcome to RK3566_RK3568 Buildroot"
++BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
++BR2_ROOTFS_MERGED_USR=y
++BR2_TARGET_GENERIC_ROOT_PASSWD="rockchip"
++BR2_TARGET_SERIAL_SHELL_SH=y
++BR2_ROOTFS_OVERLAY="board/rockchip/common/base board/rockchip/rk3566_rk3568/fs-overlay/"
++BR2_ROOTFS_POST_BUILD_SCRIPT="board/rockchip/common/post-build.sh"
++BR2_LINUX_KERNEL_CUSTOM_LOCAL=y
++BR2_LINUX_KERNEL_CUSTOM_LOCAL_LOCATION="$(TOPDIR)/../kernel"
++BR2_PACKAGE_LINUX_TOOLS_PERF=y
++BR2_PACKAGE_ROCKCHIP=y
++BR2_PACKAGE_RK3566_RK3568=y
++BR2_PACKAGE_CAMERA_ENGINE=y
++BR2_PACKAGE_CAMERA_ENGINE_RKAIQ_RKISP_DEMO=y
++BR2_PACKAGE_GSTREAMER1_ROCKCHIP=y
++BR2_PACKAGE_LIBV4L_RKMPP=y
++BR2_PACKAGE_RKNPU2=y
++BR2_PACKAGE_RKSCRIPT=y
++BR2_PACKAGE_RKWIFIBT=y
++BR2_PACKAGE_RKWIFIBT_APP=y
++BR2_PACKAGE_ROCKCHIP_ALSA_CONFIG=y
++BR2_PACKAGE_ROCKCHIP_RGA=y
++BR2_PACKAGE_ROCKCHIP_MALI=y
++BR2_PACKAGE_ROCKCHIP_MPP=y
++BR2_PACKAGE_ROCKCHIP_MPP_ALLOCATOR_DRM=y
++BR2_PACKAGE_ROCKCHIP_MPP_TESTS=y
++BR2_PACKAGE_ROCKCHIP_TEST=y
++BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="board/rockchip/common/base/busybox.fragment"
++BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
++BR2_PACKAGE_ALSA_UTILS=y
++BR2_PACKAGE_ALSA_UTILS_ALSACONF=y
++BR2_PACKAGE_ALSA_UTILS_AMIXER=y
++BR2_PACKAGE_ALSA_UTILS_APLAY=y
++BR2_PACKAGE_BLUEZ_ALSA_HCITOP=y
++BR2_PACKAGE_GSTREAMER1=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_INSTALL_TOOLS=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIORATE=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIOTESTSRC=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ENCODING=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_TCP=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOTESTSRC=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEORATE=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_OGG=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_THEORA=y
++BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VORBIS=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_JPEG=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PNG=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ALPHA=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_APETAG=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUDIOPARSERS=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUPARSE=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUTODETECT=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_DEINTERLACE=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_FLV=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ID3DEMUX=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MATROSKA=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MULTIFILE=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTP=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTPMANAGER=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTSP=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_UDP=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOBOX=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOCROP=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOFILTER=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOMIXER=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MPG123=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_GDKPIXBUF=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_PULSE=y
++BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SOUPHTTPSRC=y
++BR2_PACKAGE_GST1_PLUGINS_BAD=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ADPCMDEC=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ADPCMENC=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_CAMERABIN2=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DEBUGUTILS=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVBSUBOVERLAY=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVDSPU=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_JPEGFORMAT=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MIDI=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGDEMUX=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGTSDEMUX=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGTSMUX=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGPSMUX=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ONVIF=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_RTMP=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SDP=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VIDEOPARSERS=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FAAD=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FLUIDSYNTH=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_HLS=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_KMS=y
++BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEG2ENC=y
++BR2_PACKAGE_GST1_PLUGINS_UGLY=y
++BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_ASFDEMUX=y
++BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_DVDLPCMDEC=y
++BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_DVDSUB=y
++BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_MPEG2DEC=y
++BR2_PACKAGE_PULSEAUDIO_DAEMON=y
++BR2_PACKAGE_LMBENCH=y
++BR2_PACKAGE_UNIXBENCH=y
++BR2_PACKAGE_RT_TESTS=y
++BR2_PACKAGE_STRACE=y
++BR2_PACKAGE_STRESS=y
++BR2_PACKAGE_STRESS_NG=y
++BR2_PACKAGE_WHETSTONE=y
++BR2_PACKAGE_DOSFSTOOLS=y
++BR2_PACKAGE_DOSFSTOOLS_FATLABEL=y
++BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y
++BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
++BR2_PACKAGE_E2FSPROGS=y
++BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
++BR2_PACKAGE_EXFAT=y
++BR2_PACKAGE_EXFAT_UTILS=y
++BR2_PACKAGE_FATRESIZE=y
++BR2_PACKAGE_NTFS_3G=y
++BR2_PACKAGE_NTFS_3G_NTFSPROGS=y
++BR2_PACKAGE_DEJAVU=y
++BR2_PACKAGE_FONT_AWESOME=y
++BR2_PACKAGE_SOURCE_HAN_SANS_CN=y
++BR2_PACKAGE_GLMARK2=y
++BR2_PACKAGE_WESTON=y
++BR2_PACKAGE_WESTON_SIMPLE_CLIENTS=y
++BR2_PACKAGE_WESTON_DEMO_CLIENTS=y
++BR2_PACKAGE_LINUX_FIRMWARE=y
++BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
++BR2_PACKAGE_EVTEST=y
++BR2_PACKAGE_I2C_TOOLS=y
++BR2_PACKAGE_INPUT_EVENT_DAEMON=y
++BR2_PACKAGE_PM_UTILS=y
++BR2_PACKAGE_USBMOUNT=y
++BR2_PACKAGE_ALSA_PLUGINS=y
++BR2_PACKAGE_ALSA_UCM_CONF=y
++BR2_PACKAGE_LIBMAD=y
++BR2_PACKAGE_CA_CERTIFICATES=y
++BR2_PACKAGE_AT_SPI2_CORE=y
++BR2_PACKAGE_JPEG_TURBO_JPEG6=y
++BR2_PACKAGE_LIBDRM_INSTALL_TESTS=y
++BR2_PACKAGE_LIBV4L=y
++BR2_PACKAGE_LIBV4L_UTILS=y
++BR2_PACKAGE_LIBSOUP_SSL=y
++BR2_PACKAGE_CAN_UTILS=y
++BR2_PACKAGE_CHROMIUM_WAYLAND=y
++BR2_PACKAGE_DHCPCD=y
++BR2_PACKAGE_DNSMASQ=y
++BR2_PACKAGE_DROPBEAR=y
++# BR2_PACKAGE_DROPBEAR_CLIENT is not set
++BR2_PACKAGE_GESFTPSERVER=y
++BR2_PACKAGE_HOSTAPD=y
++BR2_PACKAGE_IPROUTE2=y
++BR2_PACKAGE_IPUTILS=y
++BR2_PACKAGE_IW=y
++BR2_PACKAGE_LRZSZ=y
++BR2_PACKAGE_NTP=y
++BR2_PACKAGE_WIRELESS_TOOLS=y
++BR2_PACKAGE_WPA_SUPPLICANT=y
++BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
++BR2_PACKAGE_WPA_SUPPLICANT_AUTOSCAN=y
++BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
++BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
++BR2_PACKAGE_ANDROID_ADBD=y
++BR2_PACKAGE_COREUTILS=y
++BR2_PACKAGE_PROCPS_NG=y
++BR2_PACKAGE_PROCRANK_LINUX=y
++BR2_PACKAGE_UTIL_LINUX_MOUNT=y
++BR2_TARGET_ROOTFS_CPIO=y
++BR2_TARGET_ROOTFS_CPIO_GZIP=y
++BR2_TARGET_ROOTFS_EXT2=y
++BR2_TARGET_ROOTFS_EXT2_4=y
++BR2_TARGET_ROOTFS_EXT2_SIZE="auto"
++BR2_TARGET_ROOTFS_SQUASHFS=y
++BR2_PACKAGE_HOST_ENVIRONMENT_SETUP=y
++BR2_PACKAGE_HOST_NTFS_3G=y
++BR2_PACKAGE_HOST_PYTHON3=y
++BR2_PACKAGE_HOST_PYTHON3_SSL=y
++BR2_PACKAGE_HOST_QEMU=y
diff --git a/linux_sdk/patches/kernel.patch b/linux_sdk/patches/kernel.patch
index 037fe05..52807f9 100644
--- a/linux_sdk/patches/kernel.patch
+++ b/linux_sdk/patches/kernel.patch
@@ -1,16 +1,16 @@
 diff --git a/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi b/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi
-index f13c2387f1d2..df730a87027e 100644
+index f13c2387f1d2..9793bf3dd27e 100644
 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi
 +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi
-@@ -348,7 +348,7 @@ wireless_wlan: wireless-wlan {
+@@ -346,7 +346,7 @@ sdio_pwrseq: sdio-pwrseq {
+ 	wireless_wlan: wireless-wlan {
+ 		compatible = "wlan-platdata";
  		rockchip,grf = <&grf>;
- 		wifi_chip_type = "ap6398s";
+-		wifi_chip_type = "ap6398s";
++		wifi_chip_type = "mt7601u";
  		WIFI,poweren_gpio = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>;
--		status = "okay";
-+		status = "disabled";
+ 		status = "okay";
  	};
- 
- 	wireless_bluetooth: wireless-bluetooth {
 @@ -363,7 +363,7 @@ wireless_bluetooth: wireless-bluetooth {
  		BT,reset_gpio    = <&gpio3 RK_PA0 GPIO_ACTIVE_HIGH>;
  		BT,wake_gpio     = <&gpio3 RK_PA1 GPIO_ACTIVE_HIGH>;
@@ -38,14 +38,14 @@
 +				vactive = <1080>;
 +				hfront-porch = <48>;
 +				hsync-len = <32>;
-+				hback-porch = <147>;
++				hback-porch = <187>;
 +				vfront-porch = <3>;
 +				vsync-len = <6>;
 +				vback-porch = <51>;
  				hsync-active = <0>;
  				vsync-active = <0>;
  				de-active = <0>;
-@@ -1375,13 +1375,15 @@ rk809_codec: codec {
+@@ -1375,14 +1375,42 @@ rk809_codec: codec {
  &i2c1 {
  	status = "okay";
  
@@ -64,9 +64,47 @@
 +		reset-gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_LOW>;
 +		max-fingers = <6>;
  	};
++
++/*
++	i2c-hid-dev@40 {
++		compatible = "hid-over-i2c";
++		reg = <0x40>;
++		hid-descr-addr = <0x0001>;
++		pinctrl-names = "default";
++		pinctrl-0 = <&touch_gpio>;
++		interrupt-parent = <&gpio0>;
++		interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
++		post-power-on-delay-ms = <70>;
++	};
++
++
++
++      	gt9271@14 {
++        	compatible = "goodix,gt9271";
++        	reg = <0x14>;
++		pinctrl-names = "default";
++                pinctrl-0 = <&touch_gpio>;
++                interrupt-parent = <&gpio0>;
++                interrupts = <13 0>;
++      		reset-gpio = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>;
++		irq-gpio = <&gpio0 RK_PB5 IRQ_TYPE_LEVEL_LOW>;
++	};
++*/
  };
  
-@@ -1545,9 +1547,9 @@ &pmu_io_domains {
+ &i2c5 {
+@@ -1496,8 +1524,8 @@ soc_slppin_rst: soc_slppin_rst {
+ 	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>;
++				<0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>,
++				<0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
+ 		};
+ 	};
+ 
+@@ -1545,9 +1573,9 @@ &pmu_io_domains {
  	pmuio2-supply = <&vcc3v3_pmu>;
  	vccio1-supply = <&vccio_acodec>;
  	vccio3-supply = <&vccio_sd>;
@@ -78,14 +116,109 @@
  	vccio7-supply = <&vcc_3v3>;
  };
  
+@@ -1560,7 +1588,7 @@ &pwm5 {
+ };
+ 
+ &pwm7 {
+-	status = "okay";
++	status = "disabled";
+ 
+ 	compatible = "rockchip,remotectl-pwm";
+ 	remote_pwm_id = <3>;
 diff --git a/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10-linux.dts b/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10-linux.dts
-index b6b618bb561a..36cd17a68309 100644
+index b6b618bb561a..238ab7d55580 100644
 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10-linux.dts
 +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10-linux.dts
-@@ -15,3 +15,50 @@ &vp0 {
- &vp1 {
- 	cursor-win-id = <ROCKCHIP_VOP2_CLUSTER1>;
+@@ -3,15 +3,151 @@
+  * Copyright (c) 2020 Rockchip Electronics Co., Ltd.
+  *
+  */
+-
++#include <dt-bindings/display/media-bus-format.h>
+ #include "rk3568-evb1-ddr4-v10.dtsi"
+ #include "rk3568-linux.dtsi"
+ #include <dt-bindings/display/rockchip_vop.h>
++/*
++/ {
++        panel-lvds0 {
++                compatible = "simple-panel";
++		power-supply = <&vcc3v3_lcd0_n>;
++                enable-delay-ms = <20>;
++                prepare-delay-ms = <20>;
++                unprepare-delay-ms = <20>;
++                disable-delay-ms = <20>;
++                bus-format = <MEDIA_BUS_FMT_RGB888_1X7X4_SPWG>;
++		width-mm = <217>;
++                height-mm = <136>;
++
++                display-timings {
++                        native-mode = <&timing0>;
++                        timing0: timing0 {
++                                clock-frequency = <73400000>;
++                                hactive = <1280>;
++                                vactive = <800>;
++                                hback-porch = <40>;
++                                hfront-porch = <80>;
++                                vback-porch = <9>;
++                                vfront-porch = <9>;
++                                hsync-len = <40>;
++                                vsync-len = <5>;
++                                hsync-active = <0>;
++                                vsync-active = <0>;
++                                de-active = <0>;
++                                pixelclk-active = <0>;
++                        };
++                };
++
++                ports {
++                        #address-cells = <1>;
++                        #size-cells = <0>;
++                        port@0 {
++                                reg = <0>;
++                                panel_in_lvds0: endpoint {
++                                        remote-endpoint = <&lvds0_out_panel>;
++                                };
++                        };
++                };
++        };
++
++};
++&lvds0 {
++        status = "okay";
++        ports {
++                port@1 {
++                        reg = <1>;
++                        lvds0_out_panel: endpoint {
++                                remote-endpoint = <&panel_in_lvds0>;
++                        };
++                };
++        };
++};
++
++&lvds0_in_vp1 {
++        status = "okay";
++};
++
++&route_lvds{
++	status = "okay";
++	connect = <&vp1_out_lvds>;
++};
++*/
+ 
+ &vp0 {
+-	cursor-win-id = <ROCKCHIP_VOP2_CLUSTER0>;
++        cursor-win-id = <ROCKCHIP_VOP2_CLUSTER0>;
  };
+ 
+ &vp1 {
+-	cursor-win-id = <ROCKCHIP_VOP2_CLUSTER1>;
++        cursor-win-id = <ROCKCHIP_VOP2_CLUSTER1>;
++};
++
++&backlight {
++        status = "okay";
++};
++
 +
 +&uart3{
 +        dma-names = "tx", "rx";
@@ -101,9 +234,16 @@
 +        status = "okay";
 +};
 +
++&uart6 {
++        dma-name = "tx", "rx";
++        pinctrl-0 = <&uart6m1_xfer>;
++        status = "okay";
++};
++
++
 +&uart9 {
 +        pinctrl-names = "default";
-+        pinctrl-0 = <&uart9m1_xfer &rs485_ctrl>;
++        pinctrl-0 = <&uart9m1_xfer &rs485_ctrl &dout0_gpio>;
 +        status = "okay";
 +};
 +
@@ -125,6 +265,10 @@
 +        status = "okay";
 +};
 +
++&pwm15 {
++    status = "okay";
++};
++
 +&pinctrl {
 +
 +	rs485 {
@@ -132,9 +276,16 @@
 +			rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
 +		};
 +	};
-+};
++	
++        dout0 {
++                dout0_gpio: dout0-gpio {
++                        rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
++                };
++        };
++	
+ };
 diff --git a/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi b/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi
-index dc9ad4236dd3..ec5a5f7bcf6c 100644
+index dc9ad4236dd3..afaa65550717 100644
 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi
 +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi
 @@ -186,15 +186,15 @@ &dsi1_panel {
@@ -156,6 +307,15 @@
  };
  
  &edp_in_vp1 {
+@@ -250,7 +250,7 @@ &gmac1m1_rgmii_clk
+ 
+ 	tx_delay = <0x4f>;
+ 	rx_delay = <0x26>;
+-
++	
+ 	phy-handle = <&rgmii_phy1>;
+ 	status = "okay";
+ };
 @@ -259,10 +259,11 @@ &gmac1m1_rgmii_clk
   * power-supply should switche to vcc3v3_lcd1_n
   * when mipi panel is connected to dsi1.
@@ -194,6 +354,15 @@
  	connect = <&vp0_out_edp>;
  };
  
+@@ -460,7 +461,7 @@ &uart8 {
+ 	pinctrl-names = "default";
+ 	pinctrl-0 = <&uart8m0_xfer &uart8m0_ctsn>;
+ };
+-
++/*mipi_dsi下这个要调成HIGHT,但是lvds通过这个引脚来拉低打开背光所以有所区别 */
+ &vcc3v3_lcd0_n {
+ 	gpio = <&gpio0 RK_PC7 GPIO_ACTIVE_HIGH>;
+ 	enable-active-high;
 @@ -489,5 +490,5 @@ &wireless_bluetooth {
  	BT,reset_gpio    = <&gpio3 RK_PA0 GPIO_ACTIVE_HIGH>;
  	BT,wake_gpio     = <&gpio3 RK_PA2 GPIO_ACTIVE_HIGH>;
@@ -202,7 +371,7 @@
 +	status = "disabled";
  };
 diff --git a/arch/arm64/configs/rockchip_linux_defconfig b/arch/arm64/configs/rockchip_linux_defconfig
-index 688203de6bae..47da208d49e3 100644
+index 688203de6bae..dc9320a4b42f 100644
 --- a/arch/arm64/configs/rockchip_linux_defconfig
 +++ b/arch/arm64/configs/rockchip_linux_defconfig
 @@ -60,13 +60,10 @@ CONFIG_ARMV8_DEPRECATED=y
@@ -229,7 +398,15 @@
  CONFIG_BT=y
  CONFIG_BT_RFCOMM=y
  CONFIG_BT_HIDP=y
-@@ -212,8 +212,19 @@ CONFIG_STMMAC_ETH=y
+@@ -130,6 +130,7 @@ CONFIG_BT_HCIBFUSB=y
+ CONFIG_BT_HCIVHCI=y
+ CONFIG_BT_MRVL=y
+ CONFIG_BT_MRVL_SDIO=y
++CONFIG_CFG80211_WEXT=y
+ CONFIG_RFKILL=y
+ CONFIG_RFKILL_RK=y
+ CONFIG_PCI=y
+@@ -212,8 +213,23 @@ CONFIG_STMMAC_ETH=y
  CONFIG_MOTORCOMM_PHY=y
  CONFIG_ROCKCHIP_PHY=y
  CONFIG_RK630_PHY=y
@@ -246,18 +423,25 @@
  CONFIG_USB_RTL8152=y
 +CONFIG_USB_USBNET=y
 +CONFIG_USB_NET_CDC_MBIM=y
++CONFIG_HOSTAP=y
++CONFIG_HOSTAP_FIRMWARE=y
++CONFIG_HOSTAP_FIRMWARE_NVRAM=y
++CONFIG_MT7601U=y
  CONFIG_WL_ROCKCHIP=y
  CONFIG_WIFI_BUILD_MODULE=y
  CONFIG_AP6XXX=m
-@@ -230,6 +241,7 @@ CONFIG_INPUT_TOUCHSCREEN=y
+@@ -228,8 +244,10 @@ CONFIG_MOUSE_CYAPA=y
+ CONFIG_MOUSE_ELAN_I2C=y
+ CONFIG_INPUT_TOUCHSCREEN=y
  CONFIG_TOUCHSCREEN_ATMEL_MXT=y
++CONFIG_TOUCHSCREEN_GOODIX=y
  CONFIG_TOUCHSCREEN_GSL3673=y
  CONFIG_TOUCHSCREEN_GT1X=y
 +CONFIG_TOUCHSCREEN_ILI210X=y
  CONFIG_TOUCHSCREEN_ELAN=y
  CONFIG_TOUCHSCREEN_USB_COMPOSITE=y
  CONFIG_ROCKCHIP_REMOTECTL=y
-@@ -628,7 +640,6 @@ CONFIG_CRYPTO_USER_API_HASH=y
+@@ -628,7 +646,6 @@ CONFIG_CRYPTO_USER_API_HASH=y
  CONFIG_CRYPTO_USER_API_SKCIPHER=y
  CONFIG_CRYPTO_DEV_ROCKCHIP=y
  CONFIG_CRYPTO_DEV_ROCKCHIP_DEV=y

--
Gitblit v1.9.1