kiddin9 2 jaren geleden
bovenliggende
commit
599008e09c

+ 4 - 3
.github/workflows/Openwrt-AutoBuild.yml

@@ -69,7 +69,7 @@ jobs:
         elif [ ${{matrix.target}} == "x86_generic" ]; then
             echo "ARCH=linux/amd32" >> $GITHUB_ENV
             echo "MTARGET=x86_generic" >> $GITHUB_ENV
-        elif [[ ${{matrix.target}} =~ (armvirt_64|ipq807x_generic|mediatek_mt7622|mediatek_mt7981|mediatek_gl_mt7981|mediatek_gl_mt7986|mediatek_filogic|bcm27xx_bcm2710|ipq60xx_generic|ipq807x_ipq60xx|bcm4908_generic|sunxi_cortexa53) ]]; then
+        elif [[ ${{matrix.target}} =~ (armvirt_64|ipq807x_generic|mediatek_mt7622|mediatek_mt7981|mediatek_gl_mt7981|mediatek_filogic|bcm27xx_bcm2710|ipq60xx_generic|ipq807x_ipq60xx|bcm4908_generic|sunxi_cortexa53) ]]; then
             echo "MTARGET=aarch64_cortex-a53" >> $GITHUB_ENV
         elif [[ ${{matrix.target}} =~ (ramips_mt7621|ramips_mt7620|ramips_mt76x8) ]]; then
             echo "MTARGET=mipsel_24kc" >> $GITHUB_ENV
@@ -95,7 +95,7 @@ jobs:
           echo "ARCH=linux/arm64" >> $GITHUB_ENV
           if [[ ${{matrix.target}} == "bcm27xx_bcm2711" ]]; then
             echo "MTARGET=aarch64_cortex-a72" >> $GITHUB_ENV
-          elif [[ ${{matrix.target}} == "rockchip_armv8" ]]; then
+          elif [[ ${{matrix.target}} == "rockchip_armv8" || ${{matrix.target}} == "rockchip_rk3588_armv8" ]]; then
             echo "MTARGET=aarch64_generic" >> $GITHUB_ENV
           fi
         fi
@@ -276,6 +276,7 @@ jobs:
         cd openwrt; kernel_v="$(make --file=info.mk kernel_version)"; cd -
         cp -rf openwrt/bin/targets/*/*/*{combined,sysupgrade}* ./firmware/${{matrix.target}}/ || true
         cd openwrt/bin/targets/*/*/
+        tar -cf targets.tar .*
         mv -f profiles.json profiles.json.b || true
         cp $GITHUB_WORKSPACE/openwrt/.config ${{matrix.target}}.config || true
         cp $GITHUB_WORKSPACE/openwrt/build_dir/target-*/linux-*/linux-*/.config ${{matrix.target}}_kernel.config || true
@@ -313,7 +314,7 @@ jobs:
       with:
         name: ${{ env.VERSION }}_${{matrix.target}}
         path: |
-          openwrt/bin/targets/
+          openwrt/bin/targets/*/*/targets.tar
 
     - name: Upload firmware to cowtransfer
       if: env.UPLOAD_FIRMWARE_TO_COWTRANSFER == 'true'

+ 1 - 1
devices/common/diy.sh

@@ -20,7 +20,7 @@ sed -i '/$(curdir)\/compile:/c\$(curdir)/compile: package/opkg/host/compile' pac
 sed -i 's/$(TARGET_DIR)) install/$(TARGET_DIR)) install --force-overwrite --force-depends/' package/Makefile
 sed -i "s/DEFAULT_PACKAGES:=/DEFAULT_PACKAGES:=luci-app-advanced luci-app-firewall luci-app-gpsysupgrade luci-app-opkg luci-app-upnp luci-app-autoreboot \
 luci-app-wizard luci-base luci-compat luci-lib-ipkg luci-lib-fs \
-coremark wget-ssl curl autocore htop nano zram-swap kmod-lib-zstd kmod-tcp-bbr bash openssh-sftp-server block-mount resolveip ds-lite swconfig /" include/target.mk
+coremark wget-ssl curl autocore htop nano zram-swap kmod-lib-zstd kmod-tcp-bbr bash openssh-sftp-server block-mount resolveip ds-lite swconfig luci-app-fan /" include/target.mk
 sed -i "s/procd-ujail//" include/target.mk
 
 sed -i "s/^.*vermagic$/\techo '1' > \$(LINUX_DIR)\/.vermagic/" include/kernel-defaults.mk

+ 0 - 37
devices/ipq50xx_arm/.config

@@ -6,40 +6,3 @@ CONFIG_TARGET_ALL_PROFILES=y
 
 CONFIG_PACKAGE_luci-ssl=y # uhttpd服务
 
-CONFIG_PACKAGE_perf=n
-
-CONFIG_PACKAGE_kmod-netem=n
-CONFIG_PACKAGE_kmod-sched=n
-CONFIG_PACKAGE_kmod-sched-act-vlan=n
-CONFIG_PACKAGE_kmod-sched-bpf=n
-CONFIG_PACKAGE_kmod-sched-cake=n
-CONFIG_PACKAGE_kmod-sched-connmark=n
-CONFIG_PACKAGE_kmod-sched-core=n
-CONFIG_PACKAGE_kmod-sched-ctinfo=n
-CONFIG_PACKAGE_kmod-sched-flower=n
-CONFIG_PACKAGE_kmod-sched-ipset=n
-CONFIG_PACKAGE_kmod-sched-mqprio=n
-
-CONFIG_PACKAGE_kmod-qca-nss-drv-igs=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-mirror=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-qdisc=n
-
-CONFIG_PACKAGE_kmod-qca-nss-drv-capwapmgr=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-clmapmgr=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-dtlsmgr=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-eogremgr=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-gre=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-ipsecmgr=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-l2tpv2=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-lag-mgr=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-map-t=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-match=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-netlink=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-pppoe=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-pptp=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-profile=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-pvxlanmgr=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-tun6rd=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-tunipip6=n
-CONFIG_PACKAGE_kmod-qca-nss-drv-vxlanmgr=n
-

+ 2 - 2
devices/ipq50xx_arm/diy.sh

@@ -4,7 +4,7 @@ shopt -s extglob
 
 SHELL_FOLDER=$(dirname $(readlink -f "$0"))
 
-rm -rf package/feeds/kiddin9/rtl* feeds/kiddin9/{shortcut-fe,fullconenat-nft} package/kernel/mt76 package/kernel/exfat package/feeds/packages/fuse* package/feeds/luci/ucode-mod-html package/feeds/luci/rpcd-mod-luci
+rm -rf package/feeds/kiddin9/rtl* feeds/kiddin9/{shortcut-fe,fullconenat-nft,dnsmasq,fibocom_QMI_WWAN} package/kernel/mt76 package/kernel/exfat package/feeds/packages/{fuse*,gl-mifi-mcu,jool,siit,libpfring,xr_usb_serial_common,xtables-addons} package/feeds/luci/ucode-mod-html package/feeds/luci/rpcd-mod-luci package/kernel/nat46 package/kernel/ath10k-ct package/devel/perf
 
 rm -rf devices/common/patches/{fix.patch,iptables.patch,kernel-defaults.patch,targets.patch}
 
@@ -14,4 +14,4 @@ svn co https://github.com/openwrt/openwrt/branches/openwrt-23.05/toolchain/musl
 svn co https://github.com/openwrt/openwrt/branches/openwrt-23.05/package/utils/e2fsprogs package/utils/e2fsprogs
 svn co https://github.com/openwrt/openwrt/branches/openwrt-23.05/package/libs/libselinux package/libs/libselinux
 svn co https://github.com/openwrt/openwrt/branches/openwrt-23.05/package/utils/ucode package/utils/ucode
-#ln -sf $(pwd)/feeds/luci/modules/luci-base package/feeds/kiddin9/
+#ln -sf $(pwd)/feeds/luci/modules/luci-base package/feeds/kiddin9/

+ 20 - 1
devices/ipq60xx_generic/patches/fix.patch

@@ -119,4 +119,23 @@
 +	DEVICE_TITLE := Qihoo 360 V6
  	DEVICE_PACKAGES := ath11k-wifi-qihoo-v6 kmod-usb3 kmod-usb-phy-msm
  endef
- TARGET_DEVICES += qihoo_v6
+ TARGET_DEVICES += qihoo_v6
+
+--- a/target/linux/ipq60xx/files-4.4/arch/arm64/boot/dts/qcom/qcom-ipq6018-zn-m2.dts
++++ b/target/linux/ipq60xx/files-4.4/arch/arm64/boot/dts/qcom/qcom-ipq6018-zn-m2.dts
+@@ -70,3 +70,15 @@
+ 		};
+ 	};
+ };
++
++&qusb_phy_0 {
++status = "ok";
++};
++
++&ssphy_0 {
++status = "ok";
++};
++
++&usb3 {
++status = "ok";
++};

+ 2 - 0
devices/ipq807x_ipq60xx/diy.sh

@@ -22,6 +22,8 @@ CONFIG_FEED_ipq807x=n
 CONFIG_FEED_wifi_ax=n
 " >> devices/common/.config
 
+sed -i "s/PKG_SOURCE_DATE:=.*/PKG_SOURCE_DATE:=2024-12-06/" package/feeds/wifi_ax/hostapd/Makefile
+
 rm -rf target/imagebuilder
 svn co https://github.com/openwrt/openwrt/branches/openwrt-21.02/target/imagebuilder target/imagebuilder
 

+ 1 - 0
devices/mediatek_filogic/.config

@@ -8,4 +8,5 @@ CONFIG_TARGET_DEVICE_mediatek_filogic_DEVICE_tplink_tl-xdr4288=y
 CONFIG_TARGET_DEVICE_mediatek_filogic_DEVICE_tplink_tl-xdr6086=y
 CONFIG_TARGET_DEVICE_mediatek_filogic_DEVICE_tplink_tl-xdr6088=y
 CONFIG_TARGET_DEVICE_mediatek_filogic_DEVICE_glinet_gl-mt3000=y
+CONFIG_TARGET_DEVICE_mediatek_filogic_DEVICE_h3c_magic-nx30-pro=y
 CONFIG_PACKAGE_luci-ssl=y # uhttpd服务

+ 1 - 1
devices/mediatek_filogic/diy.sh

@@ -2,4 +2,4 @@
 
 shopt -s extglob
 
-#sh -c "curl -sfL https://patch-diff.githubusercontent.com/raw/openwrt/openwrt/pull/11115.patch | patch -d './' -p1 --forward"
+sh -c "curl -sfL https://patch-diff.githubusercontent.com/raw/openwrt/openwrt/pull/12820.patch | patch -d './' -p1 --forward"

+ 1 - 1
devices/rockchip_armv8/.config

@@ -4,7 +4,7 @@ CONFIG_TARGET_rockchip_armv8=y
 CONFIG_TARGET_MULTI_PROFILE=y
 CONFIG_TARGET_ALL_PROFILES=y
 
-CONFIG_PACKAGE_kmod-rtl8821cu=n
+CONFIG_PACKAGE_kmod-rtl8821cu=m
 CONFIG_PACKAGE_kmod-rtl88x2bu=m
 CONFIG_PACKAGE_kmod-pcie_mhi=m
 

+ 4 - 6
devices/rockchip_armv8/diy.sh

@@ -6,13 +6,11 @@ SHELL_FOLDER=$(dirname $(readlink -f "$0"))
 rm -rf package/boot/uboot-rockchip
 svn export --force https://github.com/coolsnowwolf/lede/trunk/package/boot/uboot-rockchip package/boot/uboot-rockchip
 svn export --force https://github.com/coolsnowwolf/lede/trunk/package/boot/arm-trusted-firmware-rockchip-vendor package/boot/arm-trusted-firmware-rockchip-vendor
-
-rm -rf target/linux/generic target/linux/rockchip/!(Makefile)
-
-svn co https://github.com/coolsnowwolf/lede/trunk/target/linux/generic target/linux/generic
+rm -rf target/linux/rockchip/!(Makefile|patches-5.15)
 svn co https://github.com/coolsnowwolf/lede/trunk/target/linux/rockchip target/linux/rockchip
-
-curl -sfL https://raw.githubusercontent.com/coolsnowwolf/lede/master/include/kernel-5.15 -o include/kernel-5.15
+rm -rf target/linux/rockchip/{.svn,patches-5.15/.svn}
+svn co https://github.com/coolsnowwolf/lede/trunk/target/linux/rockchip/patches-5.15 target/linux/rockchip/patches-5.15
+rm -rf target/linux/rockchip/patches-5.15/{002-net-usb*,204-rockchip-rk3328*,003-dt-bindings*,006-rockchip-rk3399*,072-v6.2-net-phy*,073-v6.2-net-phy*,074-v6.3-net-phy*,075-v6.3-net-phy*,076-v6.3-net-phy*,077-v6.3-net-phy*,078-v6.3-net-phy*,079-v6.3-net-phy*}
 
 curl -sfL https://raw.githubusercontent.com/coolsnowwolf/lede/master/package/kernel/linux/modules/video.mk -o package/kernel/linux/modules/video.mk
 

+ 19 - 0
devices/rockchip_armv8/patches/fix.patch

@@ -54,3 +54,22 @@ index 57d5b0f8d9be..73d9f52caf99 100644
  +CONFIG_SYSRESET=y
  +CONFIG_USB=y
  +CONFIG_USB_XHCI_HCD=y
+
+--- a/target/linux/rockchip/armv8/base-files/etc/board.d/01_leds
++++ b/target/linux/rockchip/armv8/base-files/etc/board.d/01_leds
+@@ -9,13 +9,13 @@ boardname="${board##*,}"
+ board_config_update
+ 
+ case $board in
+-friendlyarm,nanopi-r2c|\
+-friendlyarm,nanopi-r2s|\
+ xunlong,orangepi-r1-plus|\
+ xunlong,orangepi-r1-plus-lts)
+ 	ucidef_set_led_netdev "wan" "WAN" "$boardname:green:wan" "eth0"
+ 	ucidef_set_led_netdev "lan" "LAN" "$boardname:green:lan" "eth1"
+ 	;;
++friendlyarm,nanopi-r2c|\
++friendlyarm,nanopi-r2s|\
+ friendlyarm,nanopi-r4s|\
+ friendlyarm,nanopi-r4se|\
+ sharevdi,guangmiao-g4c)

+ 2 - 6
devices/rockchip_armv8/patches/r6s.patch

@@ -82,8 +82,8 @@
 
 --- a/target/linux/rockchip/armv8/base-files/etc/board.d/01_leds
 +++ a/target/linux/rockchip/armv8/base-files/etc/board.d/01_leds
-@@ -30,6 +30,19 @@ friendlyarm,nanopi-r5s)
- hinlink,opc-h68k)
+@@ -36,6 +36,15 @@ hinlink,opc-h68k|\
+ hinlink,opc-h69k)
  	ucidef_set_led_netdev "wan" "WAN" "blue:net" "eth0"
  	;;
 +friendlyarm,nanopi-r6s)
@@ -94,10 +94,6 @@
 +friendlyarm,nanopi-r6c)
 +	ucidef_set_led_netdev "wan" "WAN" "green:wan" "eth0"
 +	ucidef_set_led_netdev "lan1" "LAN1" "green:lan" "eth1"
-+	;;
-+friendlyarm,nanopc-t6)
-+	ucidef_set_led_netdev "wan" "WAN" "green:wan" "eth0"
-+	ucidef_set_led_netdev "lan1" "LAN1" "green:lan" "eth1"
 +	;;
  esac
  

+ 26 - 0
devices/rockchip_rk3588_armv8/.config

@@ -0,0 +1,26 @@
+
+CONFIG_TARGET_rockchip_rk3588=y
+CONFIG_TARGET_rockchip_rk3588_armv8=y
+CONFIG_TARGET_MULTI_PROFILE=y
+
+CONFIG_TARGET_DEVICE_rockchip_rk3588_armv8_DEVICE_friendlyelec_nanopi-r6c=y
+CONFIG_TARGET_DEVICE_rockchip_rk3588_armv8_DEVICE_friendlyelec_nanopi-r6s=y
+CONFIG_TARGET_DEVICE_rockchip_rk3588_armv8_DEVICE_friendlyelec_nanopc-t6=y
+CONFIG_TARGET_DEVICE_rockchip_rk3588_armv8_DEVICE_xunlong_orangepi-5=y
+CONFIG_TARGET_DEVICE_rockchip_rk3588_armv8_DEVICE_xunlong_orangepi-5-plus=y
+
+CONFIG_PACKAGE_kmod-rtl8821cu=m
+CONFIG_PACKAGE_kmod-rtl88x2bu=m
+CONFIG_PACKAGE_kmod-pcie_mhi=m
+
+CONFIG_PACKAGE_kmod-dax=n
+CONFIG_PACKAGE_kmod-dm=n
+CONFIG_PACKAGE_kmod-dm-raid=n
+
+CONFIG_PACKAGE_kmod-owl-loader=n
+CONFIG_PACKAGE_kmod-ath9k=n
+CONFIG_PACKAGE_kmod-ath9k-htc=n
+
+CONFIG_PACKAGE_luci-ssl=n # uhttpd服务
+CONFIG_PACKAGE_luci-ssl-nginx=y # nginx
+

+ 20 - 0
devices/rockchip_rk3588_armv8/diy.sh

@@ -0,0 +1,20 @@
+#!/bin/bash
+
+shopt -s extglob
+
+sed -i "s/BOARD:=rockchip$/BOARD:=rockchip_rk3588/" target/linux/rockchip/Makefile
+
+sed -i -e 's,kmod-r8168,kmod-r8169,g' target/linux/rockchip/image/armv8.mk
+
+sed -i 's/DEFAULT_PACKAGES +=/DEFAULT_PACKAGES += fdisk lsblk kmod-drm-rockchip/' target/linux/rockchip/Makefile
+
+echo '
+CONFIG_SENSORS_PWM_FAN=y
+' >> ./target/linux/rockchip/armv8/config-5.10
+
+mv -f target/linux/rockchip target/linux/rockchip_rk3588
+
+rm -rf package/feeds/packages/glib2 package/devel/perf package/feeds/kiddin9/{shortcut-fe,fibocom_QMI_WWAN,oaf,fast-classifier,firewall,rtl88x2bu,rtl8821cu} package/feeds/packages/bluez package/kernel/ksmbd package/feeds/routing/batman-adv
+
+#curl -sfL https://raw.githubusercontent.com/coolsnowwolf/lede/master/package/kernel/linux/modules/video.mk -o package/kernel/linux/modules/video.mk
+

+ 4 - 0
devices/rockchip_rk3588_armv8/feeds.conf

@@ -0,0 +1,4 @@
+src-git packages https://git.openwrt.org/feed/packages.git;openwrt-23.05
+src-git luci https://git.openwrt.org/project/luci.git;openwrt-23.05
+src-git routing https://git.openwrt.org/feed/routing.git;openwrt-23.05
+src-git kiddin9 https://github.com/kiddin9/openwrt-packages.git;master

+ 22 - 0
devices/rockchip_rk3588_armv8/patches/add_extra_CPU_FLAGS.patch

@@ -0,0 +1,22 @@
+--- a/include/target.mk
++++ b/include/target.mk
+@@ -259,9 +259,18 @@ ifeq ($(DUMP),1)
+     CPU_CFLAGS_arc700 = -mcpu=arc700
+     CPU_CFLAGS_archs = -mcpu=archs
+   endif
++  ifeq ($(BOARD),rockchip_rk3588)
++    CPU_CFLAGS = -O3 -pipe
++    CPU_CFLAGS_cortex-a53 = -mcpu=cortex-a53
++    CPU_CFLAGS_cortex-a55 = -march=armv8-a+crypto+crc -mcpu=cortex-a55+crypto+crc -mtune=cortex-a55
++    CPU_CFLAGS_cortex-a73 = -march=armv8-a+crypto+crc -mcpu=cortex-a73.cortex-a53+crypto+crc -mtune=cortex-a73.cortex-a53
++    ifneq ($(SOC_CFLAGS),)
++      CPU_CFLAGS_generic = $(SOC_CFLAGS)
++    endif
++  endif
+   ifneq ($(CPU_TYPE),)
+     ifndef CPU_CFLAGS_$(CPU_TYPE)
+-      $(warning CPU_TYPE "$(CPU_TYPE)" doesn't correspond to a known type)
++      $(warning CPU_TYPE "$(CPU_TYPE)" "doesn't correspond to a known type")
+     endif
+   endif
+   DEFAULT_CFLAGS=$(strip $(CPU_CFLAGS) $(CPU_CFLAGS_$(CPU_TYPE)) $(CPU_CFLAGS_$(CPU_SUBTYPE)))

+ 175 - 0
devices/rockchip_rk3588_armv8/patches/fan.patch

@@ -0,0 +1,175 @@
+From 6bd64bbc79b7a86224dea328dee07fa27f2cc06b Mon Sep 17 00:00:00 2001
+From: Lawrence-Tang <[email protected]>
+Date: Wed, 20 Oct 2021 15:00:23 +0800
+Subject: [PATCH] rockchip: add fan control for r2s/r4s
+
+---
+ .../armv8/base-files/etc/init.d/fa-fancontrol | 16 ++++
+ .../armv8/base-files/usr/bin/cputemp.sh       | 14 ++++
+ .../usr/bin/fa-fancontrol-direct.sh           | 69 +++++++++++++++++++
+ .../armv8/base-files/usr/bin/fa-fancontrol.sh | 36 ++++++++++
+ 4 files changed, 127 insertions(+)
+ create mode 100755 target/linux/rockchip_rk3588/armv8/base-files/etc/init.d/fa-fancontrol
+ create mode 100755 target/linux/rockchip_rk3588/armv8/base-files/usr/bin/cputemp.sh
+ create mode 100755 target/linux/rockchip_rk3588/armv8/base-files/usr/bin/fa-fancontrol-direct.sh
+ create mode 100755 target/linux/rockchip_rk3588/armv8/base-files/usr/bin/fa-fancontrol.sh
+
+diff --git a/target/linux/rockchip_rk3588/armv8/base-files/etc/init.d/fa-fancontrol b/target/linux/rockchip_rk3588/armv8/base-files/etc/init.d/fa-fancontrol
+new file mode 100755
+index 0000000000000..dd848927101b0
+--- /dev/null
++++ b/target/linux/rockchip_rk3588/armv8/base-files/etc/init.d/fa-fancontrol
+@@ -0,0 +1,16 @@
++#!/bin/sh /etc/rc.common
++
++START=21
++start() {
++    /usr/bin/fa-fancontrol.sh &
++}
++
++stop() {
++kill -9 $(ps -w | grep fa-fancontrol | grep -v grep | awk '{print$1}') 2>/dev/null
++}
++
++restart() {
++stop
++start
++}
++
+diff --git a/target/linux/rockchip_rk3588/armv8/base-files/usr/bin/cputemp.sh b/target/linux/rockchip_rk3588/armv8/base-files/usr/bin/cputemp.sh
+new file mode 100755
+index 0000000000000..e497269bccdcd
+--- /dev/null
++++ b/target/linux/rockchip_rk3588/armv8/base-files/usr/bin/cputemp.sh
+@@ -0,0 +1,14 @@
++#!/bin/bash
++
++while true
++do
++echo "-----------------"
++echo "Curr freq: `cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq`,`cat /sys/devices/system/cpu/cpu4/cpufreq/cpuinfo_cur_freq`"
++echo "Temp: `cat /sys/class/thermal/thermal_zone0/temp`"
++if [ -d /sys/devices/platform/pwm-fan ]; then
++    CUR=`cat /sys/devices/virtual/thermal/cooling_device0/cur_state`
++    MAX=`cat /sys/devices/virtual/thermal/cooling_device0/max_state`
++    echo "Fan Level: ${CUR}/${MAX}"
++fi
++sleep 5
++done
+diff --git a/target/linux/rockchip_rk3588/armv8/base-files/usr/bin/fa-fancontrol-direct.sh b/target/linux/rockchip_rk3588/armv8/base-files/usr/bin/fa-fancontrol-direct.sh
+new file mode 100755
+index 0000000000000..b16c994d66955
+--- /dev/null
++++ b/target/linux/rockchip_rk3588/armv8/base-files/usr/bin/fa-fancontrol-direct.sh
+@@ -0,0 +1,69 @@
++#!/bin/bash
++
++# determine fan controller
++if [ -d /sys/devices/platform/pwm-fan ]; then
++    echo "pls use /usr/bin/fa-fancontrol.sh."
++    exit 1
++fi
++
++if [ ! -d /sys/class/pwm/pwmchip1 ]; then
++    echo "this model does not support pwm."
++    exit 1
++fi
++if [ ! -d /sys/class/pwm/pwmchip1/pwm0 ]; then
++    echo 0 > /sys/class/pwm/pwmchip1/export
++fi
++sleep 1
++while [ ! -d /sys/class/pwm/pwmchip1/pwm0 ];
++do
++    sleep 1
++done
++ISENABLE=`cat /sys/class/pwm/pwmchip1/pwm0/enable`
++if [ $ISENABLE -eq 1 ]; then
++    echo 0 > /sys/class/pwm/pwmchip1/pwm0/enable
++fi
++echo 50000 > /sys/class/pwm/pwmchip1/pwm0/period
++echo 1 > /sys/class/pwm/pwmchip1/pwm0/enable
++
++# max speed run 5s
++echo 46990 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle
++sleep 5
++echo 25000 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle
++
++# declare -a CpuTemps=(55000 43000 38000 32000)
++# declare -a PwmDutyCycles=(1000 20000 30000 45000)
++
++declare -a CpuTemps=(75000 63000 58000 52000)
++declare -a PwmDutyCycles=(25000 35000 45000 46990)
++
++declare -a Percents=(100 75 50 25)
++DefaultDuty=49990
++DefaultPercents=0
++
++while true
++do
++	temp=$(cat /sys/class/thermal/thermal_zone0/temp)
++	INDEX=0
++	FOUNDTEMP=0
++	DUTY=$DefaultDuty
++	PERCENT=$DefaultPercents
++	
++	for i in 0 1 2 3; do
++		if [ $temp -gt ${CpuTemps[$i]} ]; then
++			INDEX=$i
++			FOUNDTEMP=1
++			break
++		fi	
++	done
++	if [ ${FOUNDTEMP} == 1 ]; then
++		DUTY=${PwmDutyCycles[$i]}
++		PERCENT=${Percents[$i]}
++	fi
++
++	echo $DUTY > /sys/class/pwm/pwmchip1/pwm0/duty_cycle;
++
++        # echo "temp: $temp, duty: $DUTY, ${PERCENT}%"
++        # cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_cur_freq
++
++	sleep 2s;
++done
+diff --git a/target/linux/rockchip_rk3588/armv8/base-files/usr/bin/fa-fancontrol.sh b/target/linux/rockchip_rk3588/armv8/base-files/usr/bin/fa-fancontrol.sh
+new file mode 100755
+index 0000000000000..e7c14054c80e9
+--- /dev/null
++++ b/target/linux/rockchip_rk3588/armv8/base-files/usr/bin/fa-fancontrol.sh
+@@ -0,0 +1,36 @@
++#!/bin/bash
++
++# determine fan controller
++if [ -d /sys/devices/platform/pwm-fan ]; then
++    (cd /sys/devices/virtual/thermal/thermal_zone0 && {        
++        logger -p user.info -t "pwmfan" "set the conditions for fan"
++        [ -f trip_point_3_temp ] && {
++            # select fan level 1
++            echo 50000 > trip_point_3_temp
++        }
++        [ -f trip_point_4_temp ] && {
++            # select fan level 2-4
++            echo 55000 > trip_point_4_temp
++        }
++    })
++
++    (cd /sys/devices/virtual/thermal/cooling_device0 && {
++        TYPE=`cat type`
++        if [ $TYPE = 'pwm-fan' ]; then
++            # run 5s
++            for i in `seq 1 5`; do
++                logger -p user.info -t "pwmfan" "start to spin ${i}/5"
++                echo 3 > cur_state
++                sleep 1
++            done
++            logger -p user.info -t "pwmfan" "set to auto"
++            echo 0 > cur_state
++        fi
++    })
++else
++    logger -p user.info -t "pwmfan" "not found cooling device"
++    if [ -d /sys/class/pwm ]; then
++        nohup /usr/bin/fa-fancontrol-direct.sh&
++    fi
++fi
++

+ 23 - 0
devices/rockchip_rk3588_armv8/patches/fix.patch

@@ -0,0 +1,23 @@
+--- a/package/boot/arm-trusted-firmware-rockchip/Makefile
++++ b/package/boot/arm-trusted-firmware-rockchip/Makefile
+@@ -28,7 +28,7 @@ define Package/arm-trusted-firmware-rockchip
+     SECTION:=boot
+     CATEGORY:=Boot Loaders
+     TITLE:=ARM Trusted Firmware for Rockchip
+-    DEPENDS:=@TARGET_rockchip_armv8
++    DEPENDS:=@TARGET_rockchip_rk3588_armv8
+ endef
+ 
+ define Build/Prepare
+
+--- a/package/boot/uboot-rockchip/Makefile
++++ b/package/boot/uboot-rockchip/Makefile
+@@ -16,7 +16,7 @@ include $(INCLUDE_DIR)/u-boot.mk
+ include $(INCLUDE_DIR)/package.mk
+ 
+ define U-Boot/Default
+-  BUILD_TARGET:=rockchip
++  BUILD_TARGET:=rockchip_rk3588
+   UENV:=default
+   HIDDEN:=1
+ endef

+ 2 - 0
devices/rockchip_rk3588_armv8/settings.ini

@@ -0,0 +1,2 @@
+REPO_URL="https://github.com/mj22226/openwrt"
+REPO_BRANCH="rk3588-bsp"

+ 0 - 5
devices/x86_64/diy.sh

@@ -11,13 +11,8 @@ rm -rf target/linux/x86/patches-5.15/.svn
 curl -sfL https://raw.githubusercontent.com/coolsnowwolf/lede/master/package/kernel/linux/modules/video.mk -o package/kernel/linux/modules/video.mk
 curl -sfL https://raw.githubusercontent.com/coolsnowwolf/lede/master/target/linux/x86/base-files/etc/board.d/02_network -o target/linux/x86/base-files/etc/board.d/02_network
 
-sed -i "s/ +PACKAGE_kmod-backlight:kmod-backlight//" package/kernel/linux/modules/video.mk
-
 sed -i 's/DEFAULT_PACKAGES +=/DEFAULT_PACKAGES += kmod-usb-hid kmod-mmc kmod-sdhci usbutils pciutils lm-sensors-detect kmod-alx kmod-vmxnet3 kmod-igbvf kmod-iavf kmod-bnx2x kmod-pcnet32 kmod-tulip kmod-r8125 kmod-8139cp kmod-8139too kmod-i40e kmod-drm-i915 kmod-drm-amdgpu kmod-mlx4-core kmod-mlx5-core fdisk lsblk kmod-phy-broadcom/' target/linux/x86/Makefile
 
-svn co https://github.com/openwrt/openwrt/trunk/package/kernel/mt76 package/feeds/kiddin9/mt76
-curl -sfL https://raw.githubusercontent.com/immortalwrt/immortalwrt/master/package/kernel/mt76/patches/0001-mt76-allow-VHT-rate-on-2.4GHz.patch -o package/feeds/kiddin9/mt76/patches/0001-mt76-allow-VHT-rate-on-2.4GHz.patch
-
 
 mv -f tmp/r81* feeds/kiddin9/
 sed -i 's,kmod-r8169,kmod-r8168,g' target/linux/x86/image/64.mk

+ 0 - 5
devices/x86_generic/diy.sh

@@ -10,11 +10,6 @@ rm -rf target/linux/x86/patches-5.15/.svn
 
 curl -sfL https://raw.githubusercontent.com/coolsnowwolf/lede/master/package/kernel/linux/modules/video.mk -o package/kernel/linux/modules/video.mk
 
-svn co https://github.com/openwrt/openwrt/trunk/package/kernel/mt76 package/feeds/kiddin9/mt76
-curl -sfL https://raw.githubusercontent.com/immortalwrt/immortalwrt/master/package/kernel/mt76/patches/0001-mt76-allow-VHT-rate-on-2.4GHz.patch -o package/feeds/kiddin9/mt76/patches/0001-mt76-allow-VHT-rate-on-2.4GHz.patch
-
-sed -i "s/ +PACKAGE_kmod-backlight:kmod-backlight//" package/kernel/linux/modules/video.mk
-
 sed -i 's/DEFAULT_PACKAGES +=/DEFAULT_PACKAGES += kmod-usb-hid kmod-mmc kmod-sdhci usbutils pciutils lm-sensors-detect kmod-alx kmod-vmxnet3 kmod-igbvf kmod-iavf kmod-bnx2x kmod-pcnet32 kmod-tulip kmod-r8125 kmod-8139cp kmod-8139too kmod-i40e kmod-drm-i915 kmod-drm-amdgpu kmod-mlx4-core kmod-mlx5-core fdisk lsblk/' target/linux/x86/Makefile
 
 mv -f tmp/r81* feeds/kiddin9/