From 36314c12c0df4370de1850b90db4c42c918907cd Mon Sep 17 00:00:00 2001 From: Evgeniy Didin Date: Wed, 4 Apr 2018 13:52:24 +0300 Subject: mac80211: add RedPine RS9113 module support RedPine RS9113 wireless module requires rsi91x driver to be built and linux-firmware/rsi/rs9113_wlan_qspi.rps to be installed. Also we add patch for successful compilation of rsi91x driver. Signed-off-by: Evgeniy Didin Cc: Alexey Brodkin Cc: Hauke Mehrtens Cc: John Crispin --- ...kbuild-reported-build-errors-with-CONFIG_PM-off | 93 ++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 package/kernel/mac80211/patches/970-rsi-fix-kbuild-reported-build-errors-with-CONFIG_PM-off (limited to 'package/kernel/mac80211/patches') diff --git a/package/kernel/mac80211/patches/970-rsi-fix-kbuild-reported-build-errors-with-CONFIG_PM-off b/package/kernel/mac80211/patches/970-rsi-fix-kbuild-reported-build-errors-with-CONFIG_PM-off new file mode 100644 index 0000000000..3b139ee326 --- /dev/null +++ b/package/kernel/mac80211/patches/970-rsi-fix-kbuild-reported-build-errors-with-CONFIG_PM-off @@ -0,0 +1,93 @@ +From e6b3b2ed3d270b3c7080c9cf7d28636dc74b0387 Mon Sep 17 00:00:00 2001 +From: Amitkumar Karwar +Date: Wed, 1 Nov 2017 17:42:45 +0530 +Subject: rsi: fix kbuild reported build errors with CONFIG_PM off + +Some wowlan related code was outside CONFIG_PM flag which caused these +build errors. They are fixed by moving that code under CONFIG_PM flag. + +Reported-by: kbuild test robot +Fixes: ef71ed0608c ("rsi: sdio: Add WOWLAN support for S5 shutdown state") +Fixes: a24e35fcee0 ("rsi: sdio: Add WOWLAN support for S4 hibernate state") +Fixes: e1ced6422a3 ("rsi: sdio: add WOWLAN support for S3 suspend state") +Signed-off-by: Amitkumar Karwar +Signed-off-by: Kalle Valo +--- + drivers/net/wireless/rsi/rsi_91x_mac80211.c | 5 ++++- + drivers/net/wireless/rsi/rsi_91x_mgmt.c | 2 ++ + drivers/net/wireless/rsi/rsi_common.h | 2 ++ + drivers/net/wireless/rsi/rsi_mgmt.h | 2 ++ + 4 files changed, 10 insertions(+), 1 deletion(-) + +--- a/drivers/net/wireless/rsi/rsi_91x_mac80211.c ++++ b/drivers/net/wireless/rsi/rsi_91x_mac80211.c +@@ -1752,6 +1752,7 @@ static int rsi_mac80211_cancel_roc(struc + return 0; + } + ++#ifdef CONFIG_PM + static const struct wiphy_wowlan_support rsi_wowlan_support = { + .flags = WIPHY_WOWLAN_ANY | + WIPHY_WOWLAN_MAGIC_PKT | +@@ -1824,7 +1825,6 @@ int rsi_config_wowlan(struct rsi_hw *ada + } + EXPORT_SYMBOL(rsi_config_wowlan); + +-#ifdef CONFIG_PM + static int rsi_mac80211_suspend(struct ieee80211_hw *hw, + struct cfg80211_wowlan *wowlan) + { +@@ -1977,7 +1977,10 @@ int rsi_mac80211_attach(struct rsi_commo + wiphy->features |= NL80211_FEATURE_INACTIVITY_TIMER; + wiphy->reg_notifier = rsi_reg_notify; + ++#ifdef CONFIG_PM + wiphy->wowlan = &rsi_wowlan_support; ++#endif ++ + wiphy_ext_feature_set(wiphy, NL80211_EXT_FEATURE_CQM_RSSI_LIST); + + /* Wi-Fi direct parameters */ +--- a/drivers/net/wireless/rsi/rsi_91x_mgmt.c ++++ b/drivers/net/wireless/rsi/rsi_91x_mgmt.c +@@ -1597,6 +1597,7 @@ static int rsi_send_beacon(struct rsi_co + return 0; + } + ++#ifdef CONFIG_PM + int rsi_send_wowlan_request(struct rsi_common *common, u16 flags, + u16 sleep_status) + { +@@ -1630,6 +1631,7 @@ int rsi_send_wowlan_request(struct rsi_c + + return rsi_send_internal_mgmt_frame(common, skb); + } ++#endif + + /** + * rsi_handle_ta_confirm_type() - This function handles the confirm frames. +--- a/drivers/net/wireless/rsi/rsi_common.h ++++ b/drivers/net/wireless/rsi/rsi_common.h +@@ -83,7 +83,9 @@ u16 rsi_get_connected_channel(struct iee + struct rsi_hw *rsi_91x_init(void); + void rsi_91x_deinit(struct rsi_hw *adapter); + int rsi_read_pkt(struct rsi_common *common, s32 rcv_pkt_len); ++#ifdef CONFIG_PM + int rsi_config_wowlan(struct rsi_hw *adapter, struct cfg80211_wowlan *wowlan); ++#endif + struct rsi_sta *rsi_find_sta(struct rsi_common *common, u8 *mac_addr); + struct ieee80211_vif *rsi_get_vif(struct rsi_hw *adapter, u8 *mac); + void rsi_roc_timeout(struct timer_list *t); +--- a/drivers/net/wireless/rsi/rsi_mgmt.h ++++ b/drivers/net/wireless/rsi/rsi_mgmt.h +@@ -668,8 +668,10 @@ int rsi_band_check(struct rsi_common *co + int rsi_send_rx_filter_frame(struct rsi_common *common, u16 rx_filter_word); + int rsi_send_radio_params_update(struct rsi_common *common); + int rsi_set_antenna(struct rsi_common *common, u8 antenna); ++#ifdef CONFIG_PM + int rsi_send_wowlan_request(struct rsi_common *common, u16 flags, + u16 sleep_status); ++#endif + int rsi_send_ps_request(struct rsi_hw *adapter, bool enable, + struct ieee80211_vif *vif); + #endif -- cgit v1.2.3