diff --git a/.github/workflows/Openwrt-AutoBuild.yml b/.github/workflows/Openwrt-AutoBuild.yml index dde117208339..f29ba21cb48f 100644 --- a/.github/workflows/Openwrt-AutoBuild.yml +++ b/.github/workflows/Openwrt-AutoBuild.yml @@ -109,7 +109,7 @@ jobs: fi - name: Free disk space - uses: jlumbroso/free-disk-space@main + uses: coder-xiaomo/free-disk-space@main with: tool-cache: false android: true @@ -129,10 +129,9 @@ jobs: python3-setuptools rsync swig unzip zlib1g-dev file wget \ llvm python3-pyelftools libpython3-dev aria2 jq qemu-utils ccache rename \ libelf-dev device-tree-compiler libgmp3-dev libmpc-dev libfuse-dev - sudo rm -rf /etc/apt/sources.list.d/* /usr/share/dotnet /usr/local/lib/android /opt/ghc sudo -E apt-get -qq autoremove --purge sudo -E apt-get -qq clean - sudo timedatectl set-timezone "$TZ" + sudo timedatectl set-timezone "Asia/Shanghai" git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com" git config --global user.name "github-actions[bot]" @@ -252,7 +251,7 @@ jobs: make defconfig if [[ ! "${{matrix.target}}" =~ (amlogic_*|armsr_armv8|bcm27xx_*|rockchip_armv8|sunxi_*|x86_*) ]]; then sed -n '/# Wireless Drivers/,/# end of Wireless Drivers/p' .config | sed -e 's/=m/=n/' >>.config - sed -i "s/\(kmod-qca.*\)=m/\1=n/" .config + #sed -i "s/\(kmod-qca.*\)=m/\1=n/" .config if [[ "${{matrix.target}}" == "rockchip_rk35xx" ]]; then sed -n '/# Video Support/,/# end of Video Support/p' .config | sed -e 's/=m/=n/' >>.config fi diff --git a/devices/common/patches/getcwd-fix.patch b/devices/common/patches/getcwd-fix.patch new file mode 100644 index 000000000000..0521d0bf3345 --- /dev/null +++ b/devices/common/patches/getcwd-fix.patch @@ -0,0 +1,12 @@ +--- a/include/host-build.mk ++++ b/include/host-build.mk +@@ -61,7 +61,8 @@ HOST_CONFIGURE_VARS = \ + CPPFLAGS="$(HOST_CPPFLAGS)" \ + CXXFLAGS="$(HOST_CXXFLAGS)" \ + LDFLAGS="$(HOST_LDFLAGS)" \ +- CONFIG_SHELL="$(SHELL)" ++ CONFIG_SHELL="$(SHELL)" \ ++ gl_cv_func_getcwd_path_max=yes + + HOST_CONFIGURE_ARGS = \ + --target=$(GNU_HOST_NAME) \ diff --git a/devices/common/patches/wifi-scripts.patch b/devices/common/patches/wifi-scripts.patch index fa2e45307c61..444af300a792 100644 --- a/devices/common/patches/wifi-scripts.patch +++ b/devices/common/patches/wifi-scripts.patch @@ -1,6 +1,6 @@ --- a/package/network/config/wifi-scripts/files/lib/wifi/mac80211.uc +++ b/package/network/config/wifi-scripts/files/lib/wifi/mac80211.uc -@@ -98,13 +98,13 @@ set ${s}.channel='${channel}' +@@ -98,7 +98,7 @@ set ${s}.channel='${channel}' set ${s}.htmode='${htmode}' set ${s}.country='${country || ''}' set ${s}.num_global_macaddr='${num_global_macaddr || ''}' diff --git a/devices/qualcommax_ipq60xx/.config b/devices/qualcommax_ipq60xx/.config index 6a41fb820168..3dfec637ce6b 100644 --- a/devices/qualcommax_ipq60xx/.config +++ b/devices/qualcommax_ipq60xx/.config @@ -3,4 +3,32 @@ CONFIG_TARGET_qualcommax_ipq60xx=y CONFIG_TARGET_MULTI_PROFILE=y CONFIG_TARGET_ALL_PROFILES=y CONFIG_TARGET_DEVICE_qualcommax_ipq60xx_DEVICE_8devices_mango-dvk=n +CONFIG_NSS_FIRMWARE_VERSION_12_2=y +CONFIG_ATH11K_MEM_PROFILE_512M=y +CONFIG_IPQ_MEM_PROFILE_512=y +CONFIG_KERNEL_IPQ_MEM_PROFILE=512 +CONFIG_NSS_DRV_IGS_ENABLE=y +CONFIG_NSS_DRV_L2TP_ENABLE=y +CONFIG_NSS_DRV_LAG_ENABLE=y +CONFIG_NSS_DRV_MAPT_ENABLE=y +CONFIG_NSS_DRV_PPTP_ENABLE=y +CONFIG_NSS_DRV_PVXLAN_ENABLE=y +CONFIG_NSS_DRV_SHAPER_ENABLE=y +CONFIG_NSS_DRV_VXLAN_ENABLE=y +CONFIG_PACKAGE_kmod-qca-mcs=y +CONFIG_PACKAGE_kmod-qca-nss-drv-igs=y +CONFIG_PACKAGE_kmod-qca-nss-drv-l2tpv2=y +CONFIG_PACKAGE_kmod-qca-nss-drv-lag-mgr=y +CONFIG_PACKAGE_kmod-qca-nss-drv-map-t=y +CONFIG_PACKAGE_kmod-qca-nss-drv-pppoe=y +CONFIG_PACKAGE_kmod-qca-nss-drv-pptp=y +CONFIG_PACKAGE_kmod-qca-nss-drv-qdisc=y +CONFIG_PACKAGE_kmod-qca-nss-macsec=y +CONFIG_PACKAGE_kmod-qca-nss-drv-tunipip6=n +CONFIG_PACKAGE_kmod-qca-nss-drv-mirror=n +CONFIG_PACKAGE_kmod-qca-nss-drv-eogremgr=n +CONFIG_PACKAGE_kmod-qca-nss-drv-gre=n +CONFIG_PACKAGE_kmod-qca-nss-drv-match=n + +CONFIG_PACKAGE_perf=n diff --git a/devices/qualcommax_ipq60xx/diy.sh b/devices/qualcommax_ipq60xx/diy.sh index 4fd0959e7358..db490d706b17 100644 --- a/devices/qualcommax_ipq60xx/diy.sh +++ b/devices/qualcommax_ipq60xx/diy.sh @@ -4,13 +4,22 @@ shopt -s extglob SHELL_FOLDER=$(dirname $(readlink -f "$0")) -rm -rf package/firmware package/boot/uboot-envtools package/kernel/mac80211 target/linux/qualcommax -git_clone_path openwrt-24.10 https://github.com/LiBwrt-op/openwrt-6.x package/firmware package/boot/uboot-envtools package/kernel/mac80211 target/linux/qualcommax +rm -rf devices/common/patches/{wifi-scripts.patch,curl.patch} -git clone https://github.com/qosmio/nss-packages package/feeds/nss-packages -git clone https://github.com/qosmio/sqm-scripts-nss package/feeds/sqm-scripts-nss +wget -N https://raw.githubusercontent.com/openwrt/openwrt/refs/heads/openwrt-24.10/target/imagebuilder/files/Makefile -P target/imagebuilder/files/ +wget -N https://raw.githubusercontent.com/openwrt/openwrt/refs/heads/openwrt-24.10/package/base-files/files/sbin/sysupgrade -P package/base-files/files/sbin/ +wget -N https://github.com/openwrt/openwrt/raw/refs/heads/openwrt-24.10/package/network/config/firewall/Makefile -P package/network/config/firewall/ +wget -N https://github.com/openwrt/openwrt/raw/refs/heads/openwrt-24.10/include/target.mk -P include/ -rm -rf feeds/kiddin9/shortcut-fe +git clone https://github.com/LiBwrt/nss-packages package/feeds/nss-packages -rm -rf target/linux/generic/pending-6.6/613-netfilter_optional_tcp_window_check.patch target/linux/generic/hack-6.6/{952-add-net-conntrack-events-support-multiple-registrant.patch,953-net-patch-linux-kernel-to-support-shortcut-fe.patch} \ No newline at end of file +rm -rf feeds/kiddin9/shortcut-fe feeds/kiddin9/fibocom_QMI_WWAN feeds/kiddin9/quectel_QMI_WWAN feeds/kiddin9/xtables-wgobfs feeds/kiddin9/fullconenat-nft/ + +rm -rf package/feeds/packages/ovpn-dco package/feeds/packages/xr_usb_serial_common package/feeds/packages/openvswitch package/feeds/packages/xtables-addons + +rm -rf package/libs/libnftnl/patches/001-libnftnl-add-fullcone-expression-support.patch package/network/config/firewall4/patches/001-firewall4-Add-fullcone-support.patch + +sed -i 's/DEFAULT_PACKAGES +=/DEFAULT_PACKAGES += kmod-qca-mcs kmod-qca-nss-drv-igs kmod-qca-nss-drv-l2tpv2 kmod-qca-nss-drv-lag-mgr kmod-qca-nss-drv-map-t kmod-qca-nss-drv-pppoe kmod-qca-nss-drv-pptp kmod-qca-nss-drv-qdisc kmod-qca-nss-macsec/' target/linux/qualcommax/Makefile + +sed -i "s/LiBwrt/Kwrt/g" package/base-files/files/bin/config_generate package/base-files/image-config.in package/network/config/wifi-scripts/files/lib/wifi/mac80211.uc config/Config-images.in Config.in include/u-boot.mk include/version.mk || true \ No newline at end of file diff --git a/devices/qualcommax_ipq60xx/feeds.conf.default b/devices/qualcommax_ipq60xx/feeds.conf.default new file mode 100644 index 000000000000..5fe7c25c1dfd --- /dev/null +++ b/devices/qualcommax_ipq60xx/feeds.conf.default @@ -0,0 +1,6 @@ +src-git packages https://git.openwrt.org/feed/packages.git +src-git luci https://git.openwrt.org/project/luci.git;openwrt-24.10 +src-git routing https://git.openwrt.org/feed/routing.git +src-git telephony https://git.openwrt.org/feed/telephony.git +src-git video https://github.com/openwrt/video.git + diff --git a/devices/qualcommax_ipq60xx/patches/fix.patch b/devices/qualcommax_ipq60xx/patches/fix.patch index fca4b1ce9cc2..0612bf8a9653 100644 --- a/devices/qualcommax_ipq60xx/patches/fix.patch +++ b/devices/qualcommax_ipq60xx/patches/fix.patch @@ -12,14 +12,45 @@ --- a/package/feeds/nss-packages/qca-nss-ecm/Makefile +++ b/package/feeds/nss-packages/qca-nss-ecm/Makefile -@@ -160,10 +160,6 @@ ifneq ($(CONFIG_PACKAGE_kmod-bonding),) - ECM_MAKE_OPTS+=ECM_INTERFACE_BOND_ENABLE=y +@@ -119,10 +119,6 @@ ifneq ($(CONFIG_PACKAGE_kmod-nat46),) + ECM_MAKE_OPTS+=ECM_INTERFACE_MAP_T_ENABLE=y endif --ifneq ($(CONFIG_PACKAGE_kmod-qmi_wwan_q),) --ECM_MAKE_OPTS+=ECM_INTERFACE_RAWIP_ENABLE=y +-ifneq ($(CONFIG_PACKAGE_kmod-ipsec),) +-ECM_MAKE_OPTS+=ECM_INTERFACE_IPSEC_ENABLE=y -endif - - ifneq ($(CONFIG_NSS_FIRMWARE_VERSION_12_5),) - EXTRA_CFLAGS+=-DNSS_FIRMWARE_VERSION_12_5 + ifneq ($(CONFIG_PACKAGE_kmod-pppoe),) + ECM_MAKE_OPTS+=ECM_INTERFACE_PPPOE_ENABLE=y \ + ECM_INTERFACE_PPTP_ENABLE=y \ + +--- a/package/feeds/nss-packages/qca-nss-drv/Makefile ++++ b/package/feeds/nss-packages/qca-nss-drv/Makefile +@@ -186,10 +186,8 @@ ifndef CONFIG_NSS_DRV_IGS_ENABLE + endif + + ifndef CONFIG_NSS_DRV_IPSEC_ENABLE +-ifndef CONFIG_PACKAGE_kmod-ipsec + DRV_MAKE_OPTS += NSS_DRV_IPSEC_ENABLE=n endif +-endif + + ifndef CONFIG_NSS_DRV_IPV4_REASM_ENABLE + DRV_MAKE_OPTS += NSS_DRV_IPV4_REASM_ENABLE=n + +new file mode 100644 +index 0000000000..2456fad245 +--- /dev/null ++++ b/target/linux/qualcommax/patches-6.12/9999-fix-net_dev_struct_check.patch +@@ -0,0 +1,11 @@ ++--- a/net/core/dev.c +++++ b/net/core/dev.c ++@@ -12105,7 +12105,7 @@ static void __init net_dev_struct_check(void) ++ #ifdef CONFIG_NET_XGRESS ++ CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_tx, tcx_egress); ++ #endif ++- CACHELINE_ASSERT_GROUP_SIZE(struct net_device, net_device_read_tx, 160); +++ CACHELINE_ASSERT_GROUP_SIZE(struct net_device, net_device_read_tx, 256); ++ ++ /* TXRX read-mostly hotpath */ ++ CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_txrx, lstats); diff --git a/devices/qualcommax_ipq60xx/settings.ini b/devices/qualcommax_ipq60xx/settings.ini new file mode 100644 index 000000000000..7ef04fc72290 --- /dev/null +++ b/devices/qualcommax_ipq60xx/settings.ini @@ -0,0 +1,10 @@ +REPO_URL="https://github.com/LiBwrt-op/openwrt-6.x" +REPO_BRANCH="kernel-6.12" +CONFIG_FILE=".config" +DIY_SH="diy.sh" +FREE_UP_DISK="false" +UPLOAD_BIN_DIR_FOR_ARTIFACT="false" +UPLOAD_FIRMWARE_FOR_ARTIFACT="true" +UPLOAD_FIRMWARE_FOR_RELEASE="false" +UPLOAD_FIRMWARE_TO_COWTRANSFER="false" +UPLOAD_FIRMWARE_TO_WETRANSFER="true"