From 3cb50c9d37edb1608ba49b9960b5af2bdb9fcedc Mon Sep 17 00:00:00 2001 From: Raboneko <119771935+raboneko@users.noreply.github.com> Date: Sat, 1 Mar 2025 00:44:37 -0800 Subject: [PATCH] Fix (wl-kmod): Patches for kernels 6.13 and 6.14 (#3591) (#3605) * I don't think this is actually supposed to have an i686 build Signed-off-by: Gilver * Add: 6.14 and 6.13 patches, EL9 ifcond * Rel... Signed-off-by: Gilver --------- Signed-off-by: Gilver (cherry picked from commit 930b7a723b76a5457b7d1507f624b9db8e5f8235) Co-authored-by: Gilver --- anda/system/wl-kmod/anda.hcl | 2 +- .../wl-kmod-029_kernel_6.13_adaptation.patch | 30 ++++++++++++ .../wl-kmod-030_kernel_6.14_adaptation.patch | 46 +++++++++++++++++++ anda/system/wl-kmod/wl-kmod.spec | 6 ++- 4 files changed, 82 insertions(+), 2 deletions(-) create mode 100644 anda/system/wl-kmod/wl-kmod-029_kernel_6.13_adaptation.patch create mode 100644 anda/system/wl-kmod/wl-kmod-030_kernel_6.14_adaptation.patch diff --git a/anda/system/wl-kmod/anda.hcl b/anda/system/wl-kmod/anda.hcl index 41761c4b5a..4cf6bbe5f9 100644 --- a/anda/system/wl-kmod/anda.hcl +++ b/anda/system/wl-kmod/anda.hcl @@ -1,5 +1,5 @@ project pkg { - arches = ["x86_64", "i386"] + arches = ["x86_64"] rpm { spec = "wl-kmod.spec" } diff --git a/anda/system/wl-kmod/wl-kmod-029_kernel_6.13_adaptation.patch b/anda/system/wl-kmod/wl-kmod-029_kernel_6.13_adaptation.patch new file mode 100644 index 0000000000..6aa3b46a61 --- /dev/null +++ b/anda/system/wl-kmod/wl-kmod-029_kernel_6.13_adaptation.patch @@ -0,0 +1,30 @@ +From d38877279728c4e5711ae4dd373486bf2148ee48 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nicolas=20Vi=C3=A9ville?= +Date: Tue, 17 Dec 2024 20:19:49 +0100 +Subject: [PATCH] linuxver.h: net/lib80211.h dropped from includes for kernel + >= 6.13.x +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Nicolas ViƩville +--- + src/include/linuxver.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/include/linuxver.h b/src/include/linuxver.h +index b05bc32..bbe1d3c 100644 +--- a/src/include/linuxver.h ++++ b/src/include/linuxver.h +@@ -147,7 +147,7 @@ typedef irqreturn_t(*FN_ISR) (int irq, void *dev_id, struct pt_regs *ptregs); + #include + #endif + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) && LINUX_VERSION_CODE < KERNEL_VERSION(6, 13, 0) + #include + #endif + #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) +-- +2.47.1 + diff --git a/anda/system/wl-kmod/wl-kmod-030_kernel_6.14_adaptation.patch b/anda/system/wl-kmod/wl-kmod-030_kernel_6.14_adaptation.patch new file mode 100644 index 0000000000..cd032e9b60 --- /dev/null +++ b/anda/system/wl-kmod/wl-kmod-030_kernel_6.14_adaptation.patch @@ -0,0 +1,46 @@ +From 5c323385615ec555d628fd0dd2ae532ec91a0556 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nicolas=20Vi=C3=A9ville?= +Date: Fri, 7 Feb 2025 20:39:02 +0100 +Subject: [PATCH] wl_cfg80211_hybrid.c: new parameter for get_tx_power + introduced in "wifi: cfg80211: send MLO links tx power info in GET_INTERFACE" + for kernel >= 6.14.x +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Nicolas ViƩville +--- + src/wl/sys/wl_cfg80211_hybrid.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c +index 5ffa0b3..5a7f0c4 100644 +--- a/src/wl/sys/wl_cfg80211_hybrid.c ++++ b/src/wl/sys/wl_cfg80211_hybrid.c +@@ -101,7 +101,10 @@ static s32 wl_cfg80211_set_tx_power(struct wiphy *wiphy, + enum tx_power_setting type, s32 dbm); + #endif + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 14, 0) ++static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, ++ unsigned int link_id, s32 *dbm); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) + static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, s32 *dbm); + #else + static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm); +@@ -1225,7 +1228,10 @@ wl_cfg80211_set_tx_power(struct wiphy *wiphy, enum tx_power_setting type, s32 db + return err; + } + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 14, 0) ++static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, ++ unsigned int link_id, s32 *dbm) ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) + static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, s32 *dbm) + #else + static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm) +-- +2.48.1 + diff --git a/anda/system/wl-kmod/wl-kmod.spec b/anda/system/wl-kmod/wl-kmod.spec index cc977ee813..5fe855f427 100644 --- a/anda/system/wl-kmod/wl-kmod.spec +++ b/anda/system/wl-kmod/wl-kmod.spec @@ -10,7 +10,7 @@ Name: wl-kmod Version: 6.30.223.271 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Kernel module for Broadcom wireless devices Group: System Environment/Kernel License: Redistributable, no modification permitted @@ -45,6 +45,8 @@ Patch23: wl-kmod-025_kernel_6.5_adaptation.patch Patch24: wl-kmod-026_kernel_6.10_fix_empty_body_in_if_warning.patch Patch25: wl-kmod-027_wpa_supplicant-2.11_add_max_scan_ie_len.patch Patch26: wl-kmod-028_kernel_6.12_adaptation.patch +Patch27: wl-kmod-029_kernel_6.13_adaptation.patch +Patch28: wl-kmod-030_kernel_6.14_adaptation.patch ExclusiveArch: i686 x86_64 BuildRequires: kmodtool BuildRequires: elfutils-libelf-devel @@ -120,6 +122,8 @@ pushd %{name}-%{version}-src %endif %if %{kvr} >= 427 %endif + %if %{kvr} >= 503 + %endif %endif %endif popd