From a63a5f70e5cf05f6bce4cda2e0dd67462e1d76a5 Mon Sep 17 00:00:00 2001
From: Joan Bruguera <joanbrugueram@gmail.com>
Date: Mon, 29 Aug 2022 00:06:53 +0200
Subject: [PATCH] Tentative patch for broadcom-wl 6.30.223.271 driver for Linux 6.1-rc1

Applies on top of all the patches applied to broadcom-wl-dkms 6.30.223.271-35 on Arch Linux
---
 src/wl/sys/wl_cfg80211_hybrid.c | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c
index 4fef22a..50d1e34 100644
--- a/src/wl/sys/wl_cfg80211_hybrid.c
+++ b/src/wl/sys/wl_cfg80211_hybrid.c
@@ -105,20 +105,25 @@ static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wd
 static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm);
 #endif
 
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
+#define MAYBE_INT_LINK_ID int link_id,
+#else
+#define MAYBE_INT_LINK_ID
+#endif
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 38)
 static s32 wl_cfg80211_config_default_key(struct wiphy *wiphy,
-           struct net_device *dev, u8 key_idx, bool unicast, bool multicast);
+           struct net_device *dev, MAYBE_INT_LINK_ID u8 key_idx, bool unicast, bool multicast);
 #else
 static s32 wl_cfg80211_config_default_key(struct wiphy *wiphy,
            struct net_device *dev, u8 key_idx);
 #endif
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
 static s32 wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
-           u8 key_idx, bool pairwise, const u8 *mac_addr, struct key_params *params);
+           MAYBE_INT_LINK_ID u8 key_idx, bool pairwise, const u8 *mac_addr, struct key_params *params);
 static s32 wl_cfg80211_del_key(struct wiphy *wiphy, struct net_device *dev,
-           u8 key_idx, bool pairwise, const u8 *mac_addr);
+           MAYBE_INT_LINK_ID u8 key_idx, bool pairwise, const u8 *mac_addr);
 static s32 wl_cfg80211_get_key(struct wiphy *wiphy, struct net_device *dev,
-           u8 key_idx, bool pairwise, const u8 *mac_addr,
+           MAYBE_INT_LINK_ID u8 key_idx, bool pairwise, const u8 *mac_addr,
            void *cookie, void (*callback) (void *cookie, struct key_params *params));
 #else
 static s32 wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
@@ -1165,7 +1170,7 @@ static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm)
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 38)
 static s32
 wl_cfg80211_config_default_key(struct wiphy *wiphy,
-	struct net_device *dev, u8 key_idx, bool unicast, bool multicast)
+	struct net_device *dev, MAYBE_INT_LINK_ID u8 key_idx, bool unicast, bool multicast)
 #else
 static s32
 wl_cfg80211_config_default_key(struct wiphy *wiphy,
@@ -1190,7 +1195,7 @@ wl_cfg80211_config_default_key(struct wiphy *wiphy,
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
 static s32
 wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
-                    u8 key_idx, bool pairwise, const u8 *mac_addr, struct key_params *params)
+                    MAYBE_INT_LINK_ID u8 key_idx, bool pairwise, const u8 *mac_addr, struct key_params *params)
 #else
 static s32
 wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
@@ -1311,7 +1316,7 @@ wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
 static s32
 wl_cfg80211_del_key(struct wiphy *wiphy, struct net_device *dev,
-                    u8 key_idx, bool pairwise, const u8 *mac_addr)
+                    MAYBE_INT_LINK_ID u8 key_idx, bool pairwise, const u8 *mac_addr)
 #else
 static s32
 wl_cfg80211_del_key(struct wiphy *wiphy, struct net_device *dev,
@@ -1354,7 +1359,7 @@ wl_cfg80211_del_key(struct wiphy *wiphy, struct net_device *dev,
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
 static s32
 wl_cfg80211_get_key(struct wiphy *wiphy, struct net_device *dev,
-                    u8 key_idx, bool pairwise, const u8 *mac_addr, void *cookie,
+                    MAYBE_INT_LINK_ID u8 key_idx, bool pairwise, const u8 *mac_addr, void *cookie,
                     void (*callback) (void *cookie, struct key_params * params))
 #else
 static s32
-- 
2.37.2

