[PATCH 04/10] staging: rtl8723bs: replace HT_CAP_AMPDU_FACTOR

2020-12-05 Thread Ross Schmidt
Replace unique HT_CAP_AMPDU_FACTOR enum with kernel provided
ieee80211_max_ampdu_length_exp enum.

Signed-off-by: Ross Schmidt 
---
 drivers/staging/rtl8723bs/core/rtw_mlme.c |  4 ++--
 drivers/staging/rtl8723bs/core/rtw_mlme_ext.c | 12 ++--
 drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c |  2 +-
 drivers/staging/rtl8723bs/hal/sdio_halinit.c  |  2 +-
 drivers/staging/rtl8723bs/include/wifi.h  |  7 ---
 5 files changed, 10 insertions(+), 17 deletions(-)

diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme.c 
b/drivers/staging/rtl8723bs/core/rtw_mlme.c
index 001cce312f05..e20e0ce4a2c5 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme.c
@@ -2580,7 +2580,7 @@ void rtw_build_wmm_ie_ht(struct adapter *padapter, u8 
*out_ie, uint *pout_len)
 unsigned int rtw_restructure_ht_ie(struct adapter *padapter, u8 *in_ie, u8 
*out_ie, uint in_len, uint *pout_len, u8 channel)
 {
u32 ielen, out_len;
-   enum HT_CAP_AMPDU_FACTOR max_rx_ampdu_factor;
+   enum ieee80211_max_ampdu_length_exp max_rx_ampdu_factor;
unsigned char *p, *pframe;
struct ieee80211_ht_cap ht_capie;
u8 cbw40_enable = 0, stbc_rx_enable = 0, rf_type = 0, operation_bw = 0;
@@ -2698,7 +2698,7 @@ unsigned int rtw_restructure_ht_ie(struct adapter 
*padapter, u8 *in_ie, u8 *out_
 
if (padapter->driver_rx_ampdu_factor != 0xFF)
max_rx_ampdu_factor =
- (enum HT_CAP_AMPDU_FACTOR)padapter->driver_rx_ampdu_factor;
+ (enum 
ieee80211_max_ampdu_length_exp)padapter->driver_rx_ampdu_factor;
else
rtw_hal_get_def_var(padapter, HW_VAR_MAX_RX_AMPDU_FACTOR,
_rx_ampdu_factor);
diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c 
b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
index 239c89ce7dc9..0743e56582ba 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
@@ -3880,7 +3880,7 @@ void issue_action_BA(struct adapter *padapter, unsigned 
char *raddr, unsigned ch
u16 reason_code;
u16 BA_timeout_value;
u16 BA_starting_seqctrl = 0;
-   enum HT_CAP_AMPDU_FACTOR max_rx_ampdu_factor;
+   enum ieee80211_max_ampdu_length_exp max_rx_ampdu_factor;
struct xmit_frame   *pmgntframe;
struct pkt_attrib   *pattrib;
u8  *pframe;
@@ -3975,18 +3975,18 @@ void issue_action_BA(struct adapter *padapter, unsigned 
char *raddr, unsigned ch
pframe = rtw_set_fixed_ie(pframe, 2, (unsigned char 
*)(), &(pattrib->pktlen));
if (padapter->driver_rx_ampdu_factor != 0xFF)
max_rx_ampdu_factor =
- (enum 
HT_CAP_AMPDU_FACTOR)padapter->driver_rx_ampdu_factor;
+ (enum 
ieee80211_max_ampdu_length_exp)padapter->driver_rx_ampdu_factor;
else
rtw_hal_get_def_var(padapter,
HW_VAR_MAX_RX_AMPDU_FACTOR, 
_rx_ampdu_factor);
 
-   if (MAX_AMPDU_FACTOR_64K == max_rx_ampdu_factor)
+   if (IEEE80211_HT_MAX_AMPDU_64K == max_rx_ampdu_factor)
BA_para_set = 
((le16_to_cpu(pmlmeinfo->ADDBA_req.BA_para_set) & 0x3f) | 0x1000); /* 64 buffer 
size */
-   else if (MAX_AMPDU_FACTOR_32K == max_rx_ampdu_factor)
+   else if (IEEE80211_HT_MAX_AMPDU_32K == 
max_rx_ampdu_factor)
BA_para_set = 
((le16_to_cpu(pmlmeinfo->ADDBA_req.BA_para_set) & 0x3f) | 0x0800); /* 32 buffer 
size */
-   else if (MAX_AMPDU_FACTOR_16K == max_rx_ampdu_factor)
+   else if (IEEE80211_HT_MAX_AMPDU_16K == 
max_rx_ampdu_factor)
BA_para_set = 
((le16_to_cpu(pmlmeinfo->ADDBA_req.BA_para_set) & 0x3f) | 0x0400); /* 16 buffer 
size */
-   else if (MAX_AMPDU_FACTOR_8K == max_rx_ampdu_factor)
+   else if (IEEE80211_HT_MAX_AMPDU_8K == 
max_rx_ampdu_factor)
BA_para_set = 
((le16_to_cpu(pmlmeinfo->ADDBA_req.BA_para_set) & 0x3f) | 0x0200); /* 8 buffer 
size */
else
BA_para_set = 
((le16_to_cpu(pmlmeinfo->ADDBA_req.BA_para_set) & 0x3f) | 0x1000); /* 64 buffer 
size */
diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c 
b/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c
index de8caa6cd418..84e963909283 100644
--- a/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c
+++ b/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c
@@ -4373,7 +4373,7 @@ u8 GetHalDefVar8723B(struct adapter *padapter, enum 
HAL_DEF_VARIABLE variable, v
/*  Stanley@BB.SD3 suggests 16K can get stable 

[PATCH 02/10] staging: rtl8723bs: replace WIFI_REASON_CODE

2020-12-05 Thread Ross Schmidt
Replace unique macros and WIFI_REASON_CODE enum with the kernel provided
ieee80211_reasoncode.

Signed-off-by: Ross Schmidt 
---
 drivers/staging/rtl8723bs/core/rtw_mlme_ext.c |  4 +--
 drivers/staging/rtl8723bs/include/wifi.h  | 36 ---
 2 files changed, 2 insertions(+), 38 deletions(-)

diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c 
b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
index ab4876507198..6dab68033941 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
@@ -1210,7 +1210,7 @@ unsigned int OnAssocReq(struct adapter *padapter, union 
recv_frame *precv_frame)
 
pstat = rtw_get_stainfo(pstapriv, GetAddr2Ptr(pframe));
if (!pstat) {
-   status = _RSON_CLS2_;
+   status = WLAN_REASON_CLASS2_FRAME_FROM_NONAUTH_STA;
goto asoc_class2_error;
}
 
@@ -1226,7 +1226,7 @@ unsigned int OnAssocReq(struct adapter *padapter, union 
recv_frame *precv_frame)
/*  check if this stat has been successfully authenticated/assocated */
if (!((pstat->state) & WIFI_FW_AUTH_SUCCESS)) {
if (!((pstat->state) & WIFI_FW_ASSOC_SUCCESS)) {
-   status = _RSON_CLS2_;
+   status = WLAN_REASON_CLASS2_FRAME_FROM_NONAUTH_STA;
goto asoc_class2_error;
} else {
pstat->state &= (~WIFI_FW_ASSOC_SUCCESS);
diff --git a/drivers/staging/rtl8723bs/include/wifi.h 
b/drivers/staging/rtl8723bs/include/wifi.h
index 8e0ec95c1339..fe9c3a4ffe7f 100644
--- a/drivers/staging/rtl8723bs/include/wifi.h
+++ b/drivers/staging/rtl8723bs/include/wifi.h
@@ -88,42 +88,6 @@ enum WIFI_FRAME_SUBTYPE {
 WIFI_QOS_DATA_NULL = (BIT(6) | WIFI_QOS_DATA_TYPE),
 };
 
-enum WIFI_REASON_CODE  {
-   _RSON_RESERVED_ = 0,
-   _RSON_UNSPECIFIED_  = 1,
-   _RSON_AUTH_NO_LONGER_VALID_ = 2,
-   _RSON_DEAUTH_STA_LEAVING_   = 3,
-   _RSON_INACTIVITY_   = 4,
-   _RSON_UNABLE_HANDLE_= 5,
-   _RSON_CLS2_ = 6,
-   _RSON_CLS3_ = 7,
-   _RSON_DISAOC_STA_LEAVING_   = 8,
-   _RSON_ASOC_NOT_AUTH_= 9,
-
-   /*  WPA reason */
-   _RSON_INVALID_IE_   = 13,
-   _RSON_MIC_FAILURE_  = 14,
-   _RSON_4WAY_HNDSHK_TIMEOUT_  = 15,
-   _RSON_GROUP_KEY_UPDATE_TIMEOUT_ = 16,
-   _RSON_DIFF_IE_  = 17,
-   _RSON_MLTCST_CIPHER_NOT_VALID_  = 18,
-   _RSON_UNICST_CIPHER_NOT_VALID_  = 19,
-   _RSON_AKMP_NOT_VALID_   = 20,
-   _RSON_UNSUPPORT_RSNE_VER_   = 21,
-   _RSON_INVALID_RSNE_CAP_ = 22,
-   _RSON_IEEE_802DOT1X_AUTH_FAIL_  = 23,
-
-   /* belowing are Realtek definition */
-   _RSON_PMK_NOT_AVAILABLE_= 24,
-   _RSON_TDLS_TEAR_TOOFAR_ = 25,
-   _RSON_TDLS_TEAR_UN_RSN_ = 26,
-};
-
-/* Reason codes (IEEE 802.11-2007, 7.3.1.7, Table 7-22) */
-/* IEEE 802.11h */
-#define WLAN_REASON_PWR_CAPABILITY_NOT_VALID 10
-#define WLAN_REASON_SUPPORTED_CHANNEL_NOT_VALID 11
-
 enum WIFI_REG_DOMAIN {
DOMAIN_FCC  = 1,
DOMAIN_IC   = 2,
-- 
2.25.1

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 07/10] staging: rtl8723bs: replace RTW_IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK

2020-12-05 Thread Ross Schmidt
Replace unique macro RTW_IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK with kernel
provided IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK.  The other
IEEE80211_ADDBA_* and IEEE_DELBA_* macros are duplicates already defined
in linux/ieee80211.h, remove them.

Signed-off-by: Ross Schmidt 
---
 drivers/staging/rtl8723bs/core/rtw_mlme_ext.c | 6 +++---
 drivers/staging/rtl8723bs/include/wifi.h  | 7 ---
 2 files changed, 3 insertions(+), 10 deletions(-)

diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c 
b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
index 0743e56582ba..166b5369b003 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
@@ -3943,7 +3943,7 @@ void issue_action_BA(struct adapter *padapter, unsigned 
char *raddr, unsigned ch
/*  TID */
BA_para_set |= (status << 2) & 
IEEE80211_ADDBA_PARAM_TID_MASK;
/*  max buffer size is 8 MSDU */
-   BA_para_set |= (8 << 6) & 
RTW_IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK;
+   BA_para_set |= (8 << 6) & 
IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK;
} else {
BA_para_set = (0x1002 | ((status & 0xf) << 2)); 
/* immediate ack & 64 buffer size */
}
@@ -3994,8 +3994,8 @@ void issue_action_BA(struct adapter *padapter, unsigned 
char *raddr, unsigned ch
if (hal_btcoex_IsBTCoexCtrlAMPDUSize(padapter) &&
padapter->driver_rx_ampdu_factor == 0xFF) {
/*  max buffer size is 8 MSDU */
-   BA_para_set &= 
~RTW_IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK;
-   BA_para_set |= (8 << 6) & 
RTW_IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK;
+   BA_para_set &= 
~IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK;
+   BA_para_set |= (8 << 6) & 
IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK;
}
 
if (pregpriv->ampdu_amsdu == 0)/* disabled */
diff --git a/drivers/staging/rtl8723bs/include/wifi.h 
b/drivers/staging/rtl8723bs/include/wifi.h
index 2e8ca191c608..c3a4a0bad0d7 100644
--- a/drivers/staging/rtl8723bs/include/wifi.h
+++ b/drivers/staging/rtl8723bs/include/wifi.h
@@ -653,13 +653,6 @@ struct ADDBA_request {
 #define IEEE80211_HT_IE_NON_GF_STA_PRSNT   0x0004
 #define IEEE80211_HT_IE_NON_HT_STA_PRSNT   0x0010
 
-/* block-ack parameters */
-#define IEEE80211_ADDBA_PARAM_POLICY_MASK 0x0002
-#define IEEE80211_ADDBA_PARAM_TID_MASK 0x003C
-#define RTW_IEEE80211_ADDBA_PARAM_BUF_SIZE_MASK 0xFFC0
-#define IEEE80211_DELBA_PARAM_TID_MASK 0xF000
-#define IEEE80211_DELBA_PARAM_INITIATOR_MASK 0x0800
-
 /*
  * A-PMDU buffer sizes
  * According to IEEE802.11n spec size varies from 8K to 64K (in powers of 2)
-- 
2.25.1

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 01/10] staging: rtl8723bs: replace unique macros and WIFI_STATUS_CODE

2020-12-05 Thread Ross Schmidt
Replace many unique macros and WIFI_STATUS_CODE enum with kernel
provided ieee80211_statuscode. A duplicate
WLAN_STATUS_ASSOC_DENIED_NOSHORT macro is also removed.

Signed-off-by: Ross Schmidt 
---
 drivers/staging/rtl8723bs/core/rtw_mlme_ext.c | 54 +--
 drivers/staging/rtl8723bs/include/ieee80211.h |  3 --
 drivers/staging/rtl8723bs/include/wifi.h  | 51 --
 3 files changed, 27 insertions(+), 81 deletions(-)

diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c 
b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
index 8c40ef43ff94..ab4876507198 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
@@ -940,13 +940,13 @@ unsigned int OnAuth(struct adapter *padapter, union 
recv_frame *precv_frame)
DBG_871X("auth rejected due to bad alg [alg =%d, auth_mib =%d] 
%02X%02X%02X%02X%02X%02X\n",
algorithm, auth_mode, sa[0], sa[1], sa[2], sa[3], 
sa[4], sa[5]);
 
-   status = _STATS_NO_SUPP_ALG_;
+   status = WLAN_STATUS_NOT_SUPPORTED_AUTH_ALG;
 
goto auth_fail;
}
 
if (rtw_access_ctrl(padapter, sa) == false) {
-   status = _STATS_UNABLE_HANDLE_STA_;
+   status = WLAN_STATUS_AP_UNABLE_TO_HANDLE_NEW_STA;
goto auth_fail;
}
 
@@ -958,7 +958,7 @@ unsigned int OnAuth(struct adapter *padapter, union 
recv_frame *precv_frame)
pstat = rtw_alloc_stainfo(pstapriv, sa);
if (pstat == NULL) {
DBG_871X(" Exceed the upper limit of supported 
clients...\n");
-   status = _STATS_UNABLE_HANDLE_STA_;
+   status = WLAN_STATUS_AP_UNABLE_TO_HANDLE_NEW_STA;
goto auth_fail;
}
 
@@ -999,7 +999,7 @@ unsigned int OnAuth(struct adapter *padapter, union 
recv_frame *precv_frame)
if ((pstat->auth_seq + 1) != seq) {
DBG_871X("(1)auth rejected because out of seq [rx_seq =%d, 
exp_seq =%d]!\n",
seq, pstat->auth_seq+1);
-   status = _STATS_OUT_OF_AUTH_SEQ_;
+   status = WLAN_STATUS_UNKNOWN_AUTH_TRANSACTION;
goto auth_fail;
}
 
@@ -1012,7 +1012,7 @@ unsigned int OnAuth(struct adapter *padapter, union 
recv_frame *precv_frame)
} else {
DBG_871X("(2)auth rejected because out of seq [rx_seq 
=%d, exp_seq =%d]!\n",
seq, pstat->auth_seq+1);
-   status = _STATS_OUT_OF_AUTH_SEQ_;
+   status = WLAN_STATUS_UNKNOWN_AUTH_TRANSACTION;
goto auth_fail;
}
} else { /*  shared system or auto authentication */
@@ -1033,7 +1033,7 @@ unsigned int OnAuth(struct adapter *padapter, union 
recv_frame *precv_frame)
 
if ((p == NULL) || (ie_len <= 0)) {
DBG_871X("auth rejected because challenge 
failure!(1)\n");
-   status = _STATS_CHALLENGE_FAIL_;
+   status = WLAN_STATUS_CHALLENGE_FAIL;
goto auth_fail;
}
 
@@ -1044,13 +1044,13 @@ unsigned int OnAuth(struct adapter *padapter, union 
recv_frame *precv_frame)
pstat->expire_to =  pstapriv->assoc_to;
} else {
DBG_871X("auth rejected because challenge 
failure!\n");
-   status = _STATS_CHALLENGE_FAIL_;
+   status = WLAN_STATUS_CHALLENGE_FAIL;
goto auth_fail;
}
} else {
DBG_871X("(3)auth rejected because out of seq [rx_seq 
=%d, exp_seq =%d]!\n",
seq, pstat->auth_seq+1);
-   status = _STATS_OUT_OF_AUTH_SEQ_;
+   status = WLAN_STATUS_UNKNOWN_AUTH_TRANSACTION;
goto auth_fail;
}
}
@@ -1059,7 +1059,7 @@ unsigned int OnAuth(struct adapter *padapter, union 
recv_frame *precv_frame)
/*  Now, we are going to issue_auth... */
pstat->auth_seq = seq + 1;
 
-   issue_auth(padapter, pstat, (unsigned short)(_STATS_SUCCESSFUL_));
+   issue_auth(padapter, pstat, (unsigned short)(WLAN_STATUS_SUCCESS));
 
if (pstat->state & WIFI_FW_AUTH_SUCCESS)
pstat->auth_seq = 0;
@@ -1178,7 +1178,7 @@ unsigned int OnAssocReq(struct adapter *padapter, union 
recv_frame *precv_frame)
int i, ie_len, wpa_ie_len, left;
unsigned char   supportRate[16];
int supportRateNum;
-   unsigned short  status = _STATS_SUCCESSFUL_;
+   unsigned short  status = WLAN_STATUS_SUCCESS;
unsigned 

[PATCH] Staging: rtl8723bs/core: add blank line after declarations

2020-12-05 Thread Brother Matthew De Angelis
Fix coding style issue.
Add blank line after variable declarations at all the locations found by
checkpatch.pl.

Signed-off-by: Brother Matthew De Angelis 
---
 drivers/staging/rtl8723bs/core/rtw_mlme.c | 7 +++
 1 file changed, 7 insertions(+)

diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme.c 
b/drivers/staging/rtl8723bs/core/rtw_mlme.c
index 351178ab78c5..07300bd2d56e 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme.c
@@ -865,6 +865,7 @@ void rtw_surveydone_event_callback(struct adapter   
*adapter, u8 *pbuf)
}
} else {
int s_ret;
+
set_fwstate(pmlmepriv, _FW_UNDER_LINKING);
pmlmepriv->to_join = false;
s_ret = 
rtw_select_and_join_from_scanned_queue(pmlmepriv);
@@ -1582,6 +1583,7 @@ void rtw_stadel_event_callback(struct adapter *adapter, 
u8 *pbuf)
 
if (mac_id >= 0) {
u16 media_status;
+
media_status = (mac_id<<8)|0; /*   MACID|OPMODE:0 means 
disconnect */
/* for STA, AP, ADHOC mode, report disconnect stauts to FW */
rtw_hal_set_hwreg(adapter, HW_VAR_H2C_MEDIA_STATUS_RPT, (u8 
*)_status);
@@ -1714,6 +1716,7 @@ void _rtw_join_timeout_handler(struct timer_list *t)
rtw_dec_to_roam(adapter);
if (rtw_to_roam(adapter) != 0) { /* try another */
int do_join_r;
+
DBG_871X("%s try another roaming\n", __func__);
do_join_r = rtw_do_join(adapter);
if (_SUCCESS != do_join_r) {
@@ -1852,12 +1855,14 @@ void rtw_dynamic_check_timer_handler(struct adapter 
*adapter)
 inline bool rtw_is_scan_deny(struct adapter *adapter)
 {
struct mlme_priv *mlmepriv = >mlmepriv;
+
return (atomic_read(>set_scan_deny) != 0) ? true : false;
 }
 
 inline void rtw_clear_scan_deny(struct adapter *adapter)
 {
struct mlme_priv *mlmepriv = >mlmepriv;
+
atomic_set(>set_scan_deny, 0);
 
DBG_871X(FUNC_ADPT_FMT"\n", FUNC_ADPT_ARG(adapter));
@@ -2614,6 +2619,7 @@ unsigned int rtw_restructure_ht_ie(struct adapter 
*padapter, u8 *in_ie, u8 *out_
p = rtw_get_ie(in_ie, _HT_ADD_INFO_IE_, , in_len);
if (p && (ielen == sizeof(struct ieee80211_ht_addt_info))) {
struct HT_info_element *pht_info = (struct 
HT_info_element *)(p+2);
+
if (pht_info->infos[0] & BIT(2)) {
switch (pht_info->infos[0] & 0x3) {
case 1:
@@ -2692,6 +2698,7 @@ unsigned int rtw_restructure_ht_ie(struct adapter 
*padapter, u8 *in_ie, u8 *out_
 
{
u32 rx_packet_offset, max_recvbuf_sz;
+
rtw_hal_get_def_var(padapter, HAL_DEF_RX_PACKET_OFFSET, 
_packet_offset);
rtw_hal_get_def_var(padapter, HAL_DEF_MAX_RECVBUF_SZ, 
_recvbuf_sz);
}
-- 
2.25.1

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[driver-core:driver-core-testing] BUILD SUCCESS 784b2c48ac12dcee27db001fb1a3c58c39380cb6

2020-12-05 Thread kernel test robot
tree/branch: 
https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git  
driver-core-testing
branch HEAD: 784b2c48ac12dcee27db001fb1a3c58c39380cb6  driver core: auxiliary 
bus: Fix auxiliary bus shutdown null auxdrv ptr

elapsed time: 722m

configs tested: 96
configs skipped: 2

The following configs have been built successfully.
More configs may be tested in the coming days.

gcc tested configs:
arm defconfig
arm64allyesconfig
arm64   defconfig
arm  allyesconfig
arm  allmodconfig
xtensa virt_defconfig
powerpc  arches_defconfig
powerpc  bamboo_defconfig
pariscgeneric-32bit_defconfig
sh   se7705_defconfig
powerpc redwood_defconfig
sh espt_defconfig
arm   h5000_defconfig
mips cobalt_defconfig
m68k   m5208evb_defconfig
arm   stm32_defconfig
powerpc pseries_defconfig
alphaallyesconfig
powerpc sbc8548_defconfig
powerpc   currituck_defconfig
powerpc canyonlands_defconfig
sh shx3_defconfig
sh   rts7751r2dplus_defconfig
sh  landisk_defconfig
m68km5407c3_defconfig
mips  ath25_defconfig
arc nsimosci_hs_defconfig
ia64 allmodconfig
ia64defconfig
ia64 allyesconfig
m68k allmodconfig
m68kdefconfig
m68k allyesconfig
nds32   defconfig
nios2allyesconfig
cskydefconfig
alpha   defconfig
xtensa   allyesconfig
h8300allyesconfig
arc defconfig
sh   allmodconfig
parisc  defconfig
s390 allyesconfig
parisc   allyesconfig
s390defconfig
i386 allyesconfig
sparcallyesconfig
sparc   defconfig
i386   tinyconfig
i386defconfig
nios2   defconfig
arc  allyesconfig
nds32 allnoconfig
c6x  allyesconfig
mips allyesconfig
mips allmodconfig
powerpc  allyesconfig
powerpc  allmodconfig
powerpc   allnoconfig
i386 randconfig-a005-20201206
i386 randconfig-a004-20201206
i386 randconfig-a001-20201206
i386 randconfig-a002-20201206
i386 randconfig-a006-20201206
i386 randconfig-a003-20201206
i386 randconfig-a014-20201206
i386 randconfig-a013-20201206
i386 randconfig-a011-20201206
i386 randconfig-a015-20201206
i386 randconfig-a012-20201206
i386 randconfig-a016-20201206
x86_64   randconfig-a004-20201206
x86_64   randconfig-a006-20201206
x86_64   randconfig-a002-20201206
x86_64   randconfig-a001-20201206
x86_64   randconfig-a005-20201206
x86_64   randconfig-a003-20201206
riscvnommu_k210_defconfig
riscvallyesconfig
riscvnommu_virt_defconfig
riscv allnoconfig
riscv   defconfig
riscv  rv32_defconfig
riscvallmodconfig
x86_64   rhel
x86_64   allyesconfig
x86_64rhel-7.6-kselftests
x86_64  defconfig
x86_64   rhel-8.3
x86_64  kexec

clang tested configs:
x86_64   randconfig-a016-20201206
x86_64   randconfig-a012-20201206
x86_64   randconfig-a014-20201206
x86_64   randconfig-a013-20201206
x86_64   randconfig-a015-20201206
x86_64   randconfig-a011-20201206

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org

[PATCH 10/10] staging: rtl8723bs: replace unique macros and ELEMENT_ID

2020-12-05 Thread Ross Schmidt
Replace unique macros and ELEMENT_ID with kernel provided ieee80211_eid
enum.

In a several cases multiple macros or constants are replaced by one
constant.

WLAN_EID_HT_CAP, _HT_CAPABILITY_IE_, and EID_HTCapability are replace by
WLAN_EID_HT_CAPABILITY.

_WPA2_IE_ID_, EID_WPA2, and _RSN_IE_2_ are replaced by WLAN_EID_RSN.

_HT_EXTRA_INFO_IE_ and _HT_ADD_INFO_IE_ are replaced by
WLAN_EID_HT_OPERATION.

WLAN_EID_GENERIC, _WPA_IE_ID_, _SSN_IE_1_, and _VENDOR_SPECIFIC_IE_ are
replaced by WLAN_EID_VENDOR_SPECIFIC.

Signed-off-by: Ross Schmidt 
---
 drivers/staging/rtl8723bs/core/rtw_ap.c   |  62 
 drivers/staging/rtl8723bs/core/rtw_cmd.c  |   4 +-
 .../staging/rtl8723bs/core/rtw_ieee80211.c|  44 +++---
 drivers/staging/rtl8723bs/core/rtw_mlme.c |  26 ++--
 drivers/staging/rtl8723bs/core/rtw_mlme_ext.c | 146 +-
 drivers/staging/rtl8723bs/core/rtw_recv.c |   4 +-
 drivers/staging/rtl8723bs/core/rtw_security.c |   2 +-
 .../staging/rtl8723bs/core/rtw_wlan_util.c|  26 ++--
 drivers/staging/rtl8723bs/core/rtw_xmit.c |  12 +-
 drivers/staging/rtl8723bs/hal/rtl8723b_cmd.c  |  20 +--
 drivers/staging/rtl8723bs/include/ieee80211.h |   8 -
 .../staging/rtl8723bs/include/rtw_security.h  |   3 -
 drivers/staging/rtl8723bs/include/wifi.h  | 108 -
 .../staging/rtl8723bs/os_dep/ioctl_cfg80211.c |   4 +-
 .../staging/rtl8723bs/os_dep/ioctl_linux.c|  14 +-
 drivers/staging/rtl8723bs/os_dep/mlme_linux.c |   2 +-
 16 files changed, 183 insertions(+), 302 deletions(-)

diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c 
b/drivers/staging/rtl8723bs/core/rtw_ap.c
index 04d5852d0d3e..b6f944b37b08 100644
--- a/drivers/staging/rtl8723bs/core/rtw_ap.c
+++ b/drivers/staging/rtl8723bs/core/rtw_ap.c
@@ -76,7 +76,7 @@ static void update_BCNTIM(struct adapter *padapter)
 
p = rtw_get_ie(
pie + _FIXED_IE_LENGTH_,
-   _TIM_IE_,
+   WLAN_EID_TIM,
_ielen,
pnetwork_mlmeext->IELength - _FIXED_IE_LENGTH_
);
@@ -100,7 +100,7 @@ static void update_BCNTIM(struct adapter *padapter)
/* get ssid_ie len */
p = rtw_get_ie(
pie + _BEACON_IE_OFFSET_,
-   _SSID_IE_,
+   WLAN_EID_SSID,
_len,
(pnetwork_mlmeext->IELength - 
_BEACON_IE_OFFSET_)
);
@@ -110,7 +110,7 @@ static void update_BCNTIM(struct adapter *padapter)
/*  get supported rates len */
p = rtw_get_ie(
pie + _BEACON_IE_OFFSET_,
-   _SUPPORTEDRATES_IE_, _len,
+   WLAN_EID_SUPP_RATES, _len,
(pnetwork_mlmeext->IELength - 
_BEACON_IE_OFFSET_)
);
if (p)
@@ -133,7 +133,7 @@ static void update_BCNTIM(struct adapter *padapter)
memcpy(pbackup_remainder_ie, premainder_ie, 
remainder_ielen);
}
 
-   *dst_ie++ = _TIM_IE_;
+   *dst_ie++ = WLAN_EID_TIM;
 
if ((pstapriv->tim_bitmap & 0xff00) && (pstapriv->tim_bitmap & 
0x00fe))
tim_ielen = 5;
@@ -301,7 +301,7 @@ void expire_timeout_chk(struct adapter *padapter)
 
/* to update bcn with tim_bitmap for 
this station */
pstapriv->tim_bitmap |= BIT(psta->aid);
-   update_beacon(padapter, _TIM_IE_, NULL, 
true);
+   update_beacon(padapter, WLAN_EID_TIM, 
NULL, true);
 
if (!pmlmeext->active_keep_alive_check)
continue;
@@ -855,7 +855,7 @@ void start_bss_network(struct adapter *padapter, u8 *pbuf)
/* set channel, bwmode */
p = rtw_get_ie(
(pnetwork->IEs + sizeof(struct ndis_802_11_fix_ie)),
-   _HT_ADD_INFO_IE_,
+   WLAN_EID_HT_OPERATION,
_len,
(pnetwork->IELength - sizeof(struct ndis_802_11_fix_ie))
);
@@ -922,7 +922,7 @@ void start_bss_network(struct adapter *padapter, u8 *pbuf)
);
 
if (pmlmeext->bstart_bss) {
-   update_beacon(padapter, _TIM_IE_, NULL, true);
+   update_beacon(padapter, WLAN_EID_TIM, NULL, true);
 
 #ifndef CONFIG_INTERRUPT_BASED_TXBCN /* other case will  tx beacon when bcn 
interrupt coming in. */
/* issue beacon frame */
@@ -1004,7 +1004,7 @@ int rtw_check_beacon_data(struct adapter *padapter, u8 
*pbuf,  int len)
/* SSID */
p = rtw_get_ie(
ie + _BEACON_IE_OFFSET_,
- 

[PATCH 03/10] staging: rtl8723bs: replace cap_* macros

2020-12-05 Thread Ross Schmidt
Replace unique cap_* macros with kernel provided WLAN_CAPABILITY_*
macros.

Signed-off-by: Ross Schmidt 
---
 drivers/staging/rtl8723bs/core/rtw_ap.c|  2 +-
 drivers/staging/rtl8723bs/core/rtw_ieee80211.c |  6 +++---
 drivers/staging/rtl8723bs/core/rtw_mlme.c  |  4 ++--
 drivers/staging/rtl8723bs/core/rtw_mlme_ext.c  | 12 ++--
 drivers/staging/rtl8723bs/include/ieee80211.h  |  4 
 drivers/staging/rtl8723bs/include/wifi.h   | 12 
 drivers/staging/rtl8723bs/os_dep/ioctl_linux.c |  4 ++--
 7 files changed, 14 insertions(+), 30 deletions(-)

diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c 
b/drivers/staging/rtl8723bs/core/rtw_ap.c
index a2b39ae56d89..984b9f5a83ac 100644
--- a/drivers/staging/rtl8723bs/core/rtw_ap.c
+++ b/drivers/staging/rtl8723bs/core/rtw_ap.c
@@ -1980,7 +1980,7 @@ void bss_cap_update_on_sta_join(struct adapter *padapter, 
struct sta_info *psta)
}
}
 
-   if (!(psta->capability & WLAN_CAPABILITY_SHORT_SLOT)) {
+   if (!(psta->capability & WLAN_CAPABILITY_SHORT_SLOT_TIME)) {
if (!psta->no_short_slot_time_set) {
psta->no_short_slot_time_set = 1;
 
diff --git a/drivers/staging/rtl8723bs/core/rtw_ieee80211.c 
b/drivers/staging/rtl8723bs/core/rtw_ieee80211.c
index 8d61be5bd250..e80b957f947f 100644
--- a/drivers/staging/rtl8723bs/core/rtw_ieee80211.c
+++ b/drivers/staging/rtl8723bs/core/rtw_ieee80211.c
@@ -314,13 +314,13 @@ int rtw_generate_ie(struct registry_priv *pregistrypriv)
/* capability info */
*(u16 *)ie = 0;
 
-   *(__le16 *)ie |= cpu_to_le16(cap_IBSS);
+   *(__le16 *)ie |= cpu_to_le16(WLAN_CAPABILITY_IBSS);
 
if (pregistrypriv->preamble == PREAMBLE_SHORT)
-   *(__le16 *)ie |= cpu_to_le16(cap_ShortPremble);
+   *(__le16 *)ie |= cpu_to_le16(WLAN_CAPABILITY_SHORT_PREAMBLE);
 
if (pdev_network->Privacy)
-   *(__le16 *)ie |= cpu_to_le16(cap_Privacy);
+   *(__le16 *)ie |= cpu_to_le16(WLAN_CAPABILITY_PRIVACY);
 
sz += 2;
ie += 2;
diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme.c 
b/drivers/staging/rtl8723bs/core/rtw_mlme.c
index 351178ab78c5..001cce312f05 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme.c
@@ -424,8 +424,8 @@ int is_same_network(struct wlan_bssid_ex *src, struct 
wlan_bssid_ex *dst, u8 fea
((!memcmp(src->Ssid.Ssid, dst->Ssid.Ssid, 
src->Ssid.SsidLength))) &&
((s_cap & WLAN_CAPABILITY_IBSS) ==
(d_cap & WLAN_CAPABILITY_IBSS)) &&
-   ((s_cap & WLAN_CAPABILITY_BSS) ==
-   (d_cap & WLAN_CAPABILITY_BSS));
+   ((s_cap & WLAN_CAPABILITY_ESS) ==
+   (d_cap & WLAN_CAPABILITY_ESS));
 
 }
 
diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c 
b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
index 6dab68033941..239c89ce7dc9 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c
@@ -4600,7 +4600,7 @@ void start_create_ibss(struct adapter *padapter)
/* update capability */
caps = rtw_get_capability((struct wlan_bssid_ex *)pnetwork);
update_capinfo(padapter, caps);
-   if (caps_IBSS) {/* adhoc master */
+   if (caps_CAPABILITY_IBSS) {/* adhoc master */
val8 = 0xcf;
rtw_hal_set_hwreg(padapter, HW_VAR_SEC_CFG, (u8 *)());
 
@@ -4655,7 +4655,7 @@ void start_clnt_join(struct adapter *padapter)
/* update capability */
caps = rtw_get_capability((struct wlan_bssid_ex *)pnetwork);
update_capinfo(padapter, caps);
-   if (caps_ESS) {
+   if (caps_CAPABILITY_ESS) {
Set_MSR(padapter, WIFI_FW_STATION_STATE);
 
val8 = (pmlmeinfo->auth_algo == dot11AuthAlgrthm_8021X) ? 0xcc 
: 0xcf;
@@ -4681,7 +4681,7 @@ void start_clnt_join(struct adapter *padapter)
(REAUTH_TO * REAUTH_LIMIT) + (REASSOC_TO*REASSOC_LIMIT) 
+ beacon_timeout);
 
pmlmeinfo->state = WIFI_FW_AUTH_NULL | WIFI_FW_STATION_STATE;
-   } else if (caps_IBSS) { /* adhoc client */
+   } else if (caps_CAPABILITY_IBSS) { /* adhoc client */
Set_MSR(padapter, WIFI_FW_ADHOC_STATE);
 
val8 = 0xcf;
@@ -5952,9 +5952,9 @@ static int rtw_auto_ap_start_beacon(struct adapter 
*adapter)
 
/* capability info */
*(u16 *)ie = 0;
-   *(u16 *)ie |= cpu_to_le16(cap_ESS);
-   *(u16 *)ie |= cpu_to_le16(cap_ShortPremble);
-   /* u16*)ie |= cpu_to_le16(cap_Privacy); */
+   *(u16 *)ie |= cpu_to_le16(WLAN_CAPABILITY_ESS);
+   *(u16 *)ie |= cpu_to_le16(WLAN_CAPABILITY_SHORT_PREAMBLE);
+   /* u16*)ie |= cpu_to_le16(WLAN_CAPABILITY_PRIVACY); */
sz += 2;
ie += 2;
 
diff --git a/drivers/staging/rtl8723bs/include/ieee80211.h 

[PATCH 09/10] staging: rtl8723bs: remove LIST_CONTAINOR

2020-12-05 Thread Ross Schmidt
Remove unnecessary macro for container_of and call it directly.

Signed-off-by: Ross Schmidt 
---
 drivers/staging/rtl8723bs/core/rtw_ap.c   | 16 +++---
 drivers/staging/rtl8723bs/core/rtw_cmd.c  |  2 +-
 drivers/staging/rtl8723bs/core/rtw_mlme.c | 18 +++
 drivers/staging/rtl8723bs/core/rtw_mlme_ext.c |  6 ++---
 drivers/staging/rtl8723bs/core/rtw_recv.c |  4 ++--
 drivers/staging/rtl8723bs/core/rtw_sta_mgt.c  | 12 +-
 drivers/staging/rtl8723bs/core/rtw_xmit.c | 22 +--
 .../staging/rtl8723bs/hal/rtl8723bs_xmit.c|  6 ++---
 .../rtl8723bs/include/osdep_service_linux.h   |  4 
 .../staging/rtl8723bs/os_dep/ioctl_cfg80211.c |  6 ++---
 .../staging/rtl8723bs/os_dep/ioctl_linux.c| 10 -
 drivers/staging/rtl8723bs/os_dep/xmit_linux.c |  2 +-
 12 files changed, 52 insertions(+), 56 deletions(-)

diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c 
b/drivers/staging/rtl8723bs/core/rtw_ap.c
index 27446156ed34..04d5852d0d3e 100644
--- a/drivers/staging/rtl8723bs/core/rtw_ap.c
+++ b/drivers/staging/rtl8723bs/core/rtw_ap.c
@@ -223,7 +223,7 @@ void expire_timeout_chk(struct adapter *padapter)
}
#endif
while (phead != plist) {
-   psta = LIST_CONTAINOR(plist, struct sta_info, auth_list);
+   psta = container_of(plist, struct sta_info, auth_list);
 
plist = get_next(plist);
 
@@ -268,7 +268,7 @@ void expire_timeout_chk(struct adapter *padapter)
}
#endif
while (phead != plist) {
-   psta = LIST_CONTAINOR(plist, struct sta_info, asoc_list);
+   psta = container_of(plist, struct sta_info, asoc_list);
plist = get_next(plist);
 #ifdef CONFIG_AUTO_AP_MODE
if (psta->isrc)
@@ -1344,7 +1344,7 @@ int rtw_acl_add_sta(struct adapter *padapter, u8 *addr)
plist = get_next(phead);
 
while (phead != plist) {
-   paclnode = LIST_CONTAINOR(plist, struct rtw_wlan_acl_node, 
list);
+   paclnode = container_of(plist, struct rtw_wlan_acl_node, list);
plist = get_next(plist);
 
if (!memcmp(paclnode->addr, addr, ETH_ALEN)) {
@@ -1405,7 +1405,7 @@ void rtw_acl_remove_sta(struct adapter *padapter, u8 
*addr)
plist = get_next(phead);
 
while (phead != plist) {
-   paclnode = LIST_CONTAINOR(plist, struct rtw_wlan_acl_node, 
list);
+   paclnode = container_of(plist, struct rtw_wlan_acl_node, list);
plist = get_next(plist);
 
if (
@@ -1912,7 +1912,7 @@ void associated_clients_update(struct adapter *padapter, 
u8 updated)
 
/* check asoc_queue */
while (phead != plist) {
-   psta = LIST_CONTAINOR(plist, struct sta_info, 
asoc_list);
+   psta = container_of(plist, struct sta_info, asoc_list);
 
plist = get_next(plist);
 
@@ -2193,7 +2193,7 @@ void rtw_sta_flush(struct adapter *padapter)
 
/* free sta asoc_queue */
while (phead != plist) {
-   psta = LIST_CONTAINOR(plist, struct sta_info, asoc_list);
+   psta = container_of(plist, struct sta_info, asoc_list);
 
plist = get_next(plist);
 
@@ -2297,7 +2297,7 @@ void rtw_ap_restore_network(struct adapter *padapter)
while (phead != plist) {
int stainfo_offset;
 
-   psta = LIST_CONTAINOR(plist, struct sta_info, asoc_list);
+   psta = container_of(plist, struct sta_info, asoc_list);
plist = get_next(plist);
 
stainfo_offset = rtw_stainfo_offset(pstapriv, psta);
@@ -2402,7 +2402,7 @@ void stop_ap_mode(struct adapter *padapter)
phead = get_list_head(pacl_node_q);
plist = get_next(phead);
while (phead != plist) {
-   paclnode = LIST_CONTAINOR(plist, struct rtw_wlan_acl_node, 
list);
+   paclnode = container_of(plist, struct rtw_wlan_acl_node, list);
plist = get_next(plist);
 
if (paclnode->valid) {
diff --git a/drivers/staging/rtl8723bs/core/rtw_cmd.c 
b/drivers/staging/rtl8723bs/core/rtw_cmd.c
index 4e1301261a01..f6160f1cca43 100644
--- a/drivers/staging/rtl8723bs/core/rtw_cmd.c
+++ b/drivers/staging/rtl8723bs/core/rtw_cmd.c
@@ -287,7 +287,7 @@ struct  cmd_obj *_rtw_dequeue_cmd(struct __queue *queue)
if (list_empty(&(queue->queue)))
obj = NULL;
else {
-   obj = LIST_CONTAINOR(get_next(&(queue->queue)), struct cmd_obj, 
list);
+   obj = container_of(get_next(&(queue->queue)), struct cmd_obj, 
list);
list_del_init(>list);
}
 
diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme.c 
b/drivers/staging/rtl8723bs/core/rtw_mlme.c
index e20e0ce4a2c5..f05fcf9892e5 100644
--- a/drivers/staging/rtl8723bs/core/rtw_mlme.c
+++ b/drivers/staging/rtl8723bs/core/rtw_mlme.c

[PATCH 05/10] staging: rtl8723bs: replace OP_MODE_* and HT_INFO_OPERATION_MODE_* macros

2020-12-05 Thread Ross Schmidt
Replace unique OP_MODE_* and HT_INFO_OPERATION_MODE_* macro families
with kernel provided IEEE80211_HT_OP_MODE_* macros.

Signed-off-by: Ross Schmidt 
---
 drivers/staging/rtl8723bs/core/rtw_ap.c  | 30 
 drivers/staging/rtl8723bs/include/wifi.h | 13 --
 2 files changed, 15 insertions(+), 28 deletions(-)

diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c 
b/drivers/staging/rtl8723bs/core/rtw_ap.c
index 984b9f5a83ac..27446156ed34 100644
--- a/drivers/staging/rtl8723bs/core/rtw_ap.c
+++ b/drivers/staging/rtl8723bs/core/rtw_ap.c
@@ -1842,28 +1842,28 @@ static int rtw_ht_operation_update(struct adapter 
*padapter)
DBG_871X("%s current operation mode = 0x%X\n",
   __func__, pmlmepriv->ht_op_mode);
 
-   if (!(pmlmepriv->ht_op_mode & 
HT_INFO_OPERATION_MODE_NON_GF_DEVS_PRESENT)
+   if (!(pmlmepriv->ht_op_mode & IEEE80211_HT_OP_MODE_NON_GF_STA_PRSNT)
&& pmlmepriv->num_sta_ht_no_gf) {
pmlmepriv->ht_op_mode |=
-   HT_INFO_OPERATION_MODE_NON_GF_DEVS_PRESENT;
+   IEEE80211_HT_OP_MODE_NON_GF_STA_PRSNT;
op_mode_changes++;
} else if ((pmlmepriv->ht_op_mode &
-   HT_INFO_OPERATION_MODE_NON_GF_DEVS_PRESENT) &&
+   IEEE80211_HT_OP_MODE_NON_GF_STA_PRSNT) &&
   pmlmepriv->num_sta_ht_no_gf == 0) {
pmlmepriv->ht_op_mode &=
-   ~HT_INFO_OPERATION_MODE_NON_GF_DEVS_PRESENT;
+   ~IEEE80211_HT_OP_MODE_NON_GF_STA_PRSNT;
op_mode_changes++;
}
 
-   if (!(pmlmepriv->ht_op_mode & 
HT_INFO_OPERATION_MODE_NON_HT_STA_PRESENT) &&
+   if (!(pmlmepriv->ht_op_mode & IEEE80211_HT_OP_MODE_NON_HT_STA_PRSNT) &&
(pmlmepriv->num_sta_no_ht || pmlmepriv->olbc_ht)) {
-   pmlmepriv->ht_op_mode |= 
HT_INFO_OPERATION_MODE_NON_HT_STA_PRESENT;
+   pmlmepriv->ht_op_mode |= IEEE80211_HT_OP_MODE_NON_HT_STA_PRSNT;
op_mode_changes++;
} else if ((pmlmepriv->ht_op_mode &
-   HT_INFO_OPERATION_MODE_NON_HT_STA_PRESENT) &&
+   IEEE80211_HT_OP_MODE_NON_HT_STA_PRSNT) &&
   (pmlmepriv->num_sta_no_ht == 0 && !pmlmepriv->olbc_ht)) {
pmlmepriv->ht_op_mode &=
-   ~HT_INFO_OPERATION_MODE_NON_HT_STA_PRESENT;
+   ~IEEE80211_HT_OP_MODE_NON_HT_STA_PRSNT;
op_mode_changes++;
}
 
@@ -1873,20 +1873,20 @@ static int rtw_ht_operation_update(struct adapter 
*padapter)
 */
new_op_mode = 0;
if (pmlmepriv->num_sta_no_ht ||
-   (pmlmepriv->ht_op_mode & 
HT_INFO_OPERATION_MODE_NON_GF_DEVS_PRESENT))
-   new_op_mode = OP_MODE_MIXED;
+   (pmlmepriv->ht_op_mode & IEEE80211_HT_OP_MODE_NON_GF_STA_PRSNT))
+   new_op_mode = IEEE80211_HT_OP_MODE_PROTECTION_NONHT_MIXED;
else if (
(le16_to_cpu(phtpriv_ap->ht_cap.cap_info) & 
IEEE80211_HT_CAP_SUP_WIDTH)
&& pmlmepriv->num_sta_ht_20mhz)
-   new_op_mode = OP_MODE_20MHZ_HT_STA_ASSOCED;
+   new_op_mode = IEEE80211_HT_OP_MODE_PROTECTION_20MHZ;
else if (pmlmepriv->olbc_ht)
-   new_op_mode = OP_MODE_MAY_BE_LEGACY_STAS;
+   new_op_mode = IEEE80211_HT_OP_MODE_PROTECTION_NONMEMBER;
else
-   new_op_mode = OP_MODE_PURE;
+   new_op_mode = IEEE80211_HT_OP_MODE_PROTECTION_NONE;
 
-   cur_op_mode = pmlmepriv->ht_op_mode & 
HT_INFO_OPERATION_MODE_OP_MODE_MASK;
+   cur_op_mode = pmlmepriv->ht_op_mode & IEEE80211_HT_OP_MODE_PROTECTION;
if (cur_op_mode != new_op_mode) {
-   pmlmepriv->ht_op_mode &= ~HT_INFO_OPERATION_MODE_OP_MODE_MASK;
+   pmlmepriv->ht_op_mode &= ~IEEE80211_HT_OP_MODE_PROTECTION;
pmlmepriv->ht_op_mode |= new_op_mode;
op_mode_changes++;
}
diff --git a/drivers/staging/rtl8723bs/include/wifi.h 
b/drivers/staging/rtl8723bs/include/wifi.h
index 9c92b5020fbc..2fb1687ecabf 100644
--- a/drivers/staging/rtl8723bs/include/wifi.h
+++ b/drivers/staging/rtl8723bs/include/wifi.h
@@ -673,12 +673,6 @@ struct ADDBA_request {
 #define WLAN_HT_CAP_SM_PS_INVALID  2
 #define WLAN_HT_CAP_SM_PS_DISABLED 3
 
-
-#define OP_MODE_PURE0
-#define OP_MODE_MAY_BE_LEGACY_STAS  1
-#define OP_MODE_20MHZ_HT_STA_ASSOCED2
-#define OP_MODE_MIXED   3
-
 #define HT_INFO_HT_PARAM_SECONDARY_CHNL_OFF_MASK   ((u8) BIT(0) | BIT(1))
 #define HT_INFO_HT_PARAM_SECONDARY_CHNL_ABOVE  ((u8) BIT(0))
 #define HT_INFO_HT_PARAM_SECONDARY_CHNL_BELOW  ((u8) BIT(0) | BIT(1))
@@ -687,13 +681,6 @@ struct ADDBA_request {
 #define HT_INFO_HT_PARAM_CTRL_ACCESS_ONLY  ((u8) BIT(4))
 #define HT_INFO_HT_PARAM_SRV_INTERVAL_GRANULARITY  ((u8) BIT(5))
 
-#define HT_INFO_OPERATION_MODE_OP_MODE_MASK 

[PATCH 08/10] staging: rtl8723bs: remove unused macros

2020-12-05 Thread Ross Schmidt
Remove many macros from wifi.h because they are unused.

Signed-off-by: Ross Schmidt 
---
 drivers/staging/rtl8723bs/include/wifi.h | 33 
 1 file changed, 33 deletions(-)

diff --git a/drivers/staging/rtl8723bs/include/wifi.h 
b/drivers/staging/rtl8723bs/include/wifi.h
index c3a4a0bad0d7..41de2605c517 100644
--- a/drivers/staging/rtl8723bs/include/wifi.h
+++ b/drivers/staging/rtl8723bs/include/wifi.h
@@ -643,39 +643,6 @@ struct ADDBA_request {
 #define IEEE80211_HT_CAP_TXBF_TX_NDP   0x0010
 #define IEEE80211_HT_CAP_TXBF_EXPLICIT_COMP_STEERING_CAP   0x0400
 
-/* 802.11n HT IE masks */
-#define IEEE80211_HT_IE_CHA_SEC_OFFSET 0x03
-#define IEEE80211_HT_IE_CHA_SEC_NONE   0x00
-#define IEEE80211_HT_IE_CHA_SEC_ABOVE  0x01
-#define IEEE80211_HT_IE_CHA_SEC_BELOW  0x03
-#define IEEE80211_HT_IE_CHA_WIDTH  0x04
-#define IEEE80211_HT_IE_HT_PROTECTION  0x0003
-#define IEEE80211_HT_IE_NON_GF_STA_PRSNT   0x0004
-#define IEEE80211_HT_IE_NON_HT_STA_PRSNT   0x0010
-
-/*
- * A-PMDU buffer sizes
- * According to IEEE802.11n spec size varies from 8K to 64K (in powers of 2)
- */
-#define IEEE80211_MIN_AMPDU_BUF 0x8
-
-#define HT_INFO_HT_PARAM_SECONDARY_CHNL_OFF_MASK   ((u8) BIT(0) | BIT(1))
-#define HT_INFO_HT_PARAM_SECONDARY_CHNL_ABOVE  ((u8) BIT(0))
-#define HT_INFO_HT_PARAM_SECONDARY_CHNL_BELOW  ((u8) BIT(0) | BIT(1))
-#define HT_INFO_HT_PARAM_REC_TRANS_CHNL_WIDTH  ((u8) BIT(2))
-#define HT_INFO_HT_PARAM_RIFS_MODE ((u8) BIT(3))
-#define HT_INFO_HT_PARAM_CTRL_ACCESS_ONLY  ((u8) BIT(4))
-#define HT_INFO_HT_PARAM_SRV_INTERVAL_GRANULARITY  ((u8) BIT(5))
-
-#define HT_INFO_STBC_PARAM_DUAL_BEACON ((u16) BIT(6))
-#define HT_INFO_STBC_PARAM_DUAL_STBC_PROTECT   ((u16) BIT(7))
-#define HT_INFO_STBC_PARAM_SECONDARY_BCN   ((u16) BIT(8))
-#define HT_INFO_STBC_PARAM_LSIG_TXOP_PROTECT_ALLOWED   ((u16) BIT(9))
-#define HT_INFO_STBC_PARAM_PCO_ACTIVE  ((u16) BIT(10))
-#define HT_INFO_STBC_PARAM_PCO_PHASE   ((u16) BIT(11))
-
-
-
 /* endif */
 
 /* ===WPS Section === */
-- 
2.25.1

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 06/10] staging: rtl8723bs: remove WLAN_HT_CAP_SM_PS_* macros

2020-12-05 Thread Ross Schmidt
The WLAN_HT_CAP_SM_PS_* macro family is already defined in
linux/ieee80211.h, remove them.

Signed-off-by: Ross Schmidt 
---
 drivers/staging/rtl8723bs/include/wifi.h | 7 ---
 1 file changed, 7 deletions(-)

diff --git a/drivers/staging/rtl8723bs/include/wifi.h 
b/drivers/staging/rtl8723bs/include/wifi.h
index 2fb1687ecabf..2e8ca191c608 100644
--- a/drivers/staging/rtl8723bs/include/wifi.h
+++ b/drivers/staging/rtl8723bs/include/wifi.h
@@ -666,13 +666,6 @@ struct ADDBA_request {
  */
 #define IEEE80211_MIN_AMPDU_BUF 0x8
 
-
-/* Spatial Multiplexing Power Save Modes */
-#define WLAN_HT_CAP_SM_PS_STATIC   0
-#define WLAN_HT_CAP_SM_PS_DYNAMIC  1
-#define WLAN_HT_CAP_SM_PS_INVALID  2
-#define WLAN_HT_CAP_SM_PS_DISABLED 3
-
 #define HT_INFO_HT_PARAM_SECONDARY_CHNL_OFF_MASK   ((u8) BIT(0) | BIT(1))
 #define HT_INFO_HT_PARAM_SECONDARY_CHNL_ABOVE  ((u8) BIT(0))
 #define HT_INFO_HT_PARAM_SECONDARY_CHNL_BELOW  ((u8) BIT(0) | BIT(1))
-- 
2.25.1

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH] vme: switch from 'pci_' to 'dma_' API

2020-12-05 Thread Christophe JAILLET
The wrappers in include/linux/pci-dma-compat.h should go away.

The patch has been generated with the coccinelle script below and has been
hand modified to replace GFP_ with a correct flag.
It has been compile tested.

When memory is allocated in 'ca91cx42_alloc_consistent()' and
'tsi148_alloc_consistent()' GFP_KERNEL can be used because both functions
are called only from 'vme_alloc_consistent()' (vme.c). This function is
only called from the 'vme_user_probe()' probe function and no lock is
taken in the between.

When memory is allocated in 'ca91cx42_crcsr_init()' and
'tsi148_crcsr_init()' GFP_KERNEL can be used because both functions
are called only from their corresponding probe function and no lock is
taken in the between.

@@
@@
-PCI_DMA_BIDIRECTIONAL
+DMA_BIDIRECTIONAL

@@
@@
-PCI_DMA_TODEVICE
+DMA_TO_DEVICE

@@
@@
-PCI_DMA_FROMDEVICE
+DMA_FROM_DEVICE

@@
@@
-PCI_DMA_NONE
+DMA_NONE

@@
expression e1, e2, e3;
@@
-pci_alloc_consistent(e1, e2, e3)
+dma_alloc_coherent(>dev, e2, e3, GFP_)

@@
expression e1, e2, e3;
@@
-pci_zalloc_consistent(e1, e2, e3)
+dma_alloc_coherent(>dev, e2, e3, GFP_)

@@
expression e1, e2, e3, e4;
@@
-pci_free_consistent(e1, e2, e3, e4)
+dma_free_coherent(>dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-pci_map_single(e1, e2, e3, e4)
+dma_map_single(>dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-pci_unmap_single(e1, e2, e3, e4)
+dma_unmap_single(>dev, e2, e3, e4)

@@
expression e1, e2, e3, e4, e5;
@@
-pci_map_page(e1, e2, e3, e4, e5)
+dma_map_page(>dev, e2, e3, e4, e5)

@@
expression e1, e2, e3, e4;
@@
-pci_unmap_page(e1, e2, e3, e4)
+dma_unmap_page(>dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-pci_map_sg(e1, e2, e3, e4)
+dma_map_sg(>dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-pci_unmap_sg(e1, e2, e3, e4)
+dma_unmap_sg(>dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-pci_dma_sync_single_for_cpu(e1, e2, e3, e4)
+dma_sync_single_for_cpu(>dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-pci_dma_sync_single_for_device(e1, e2, e3, e4)
+dma_sync_single_for_device(>dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-pci_dma_sync_sg_for_cpu(e1, e2, e3, e4)
+dma_sync_sg_for_cpu(>dev, e2, e3, e4)

@@
expression e1, e2, e3, e4;
@@
-pci_dma_sync_sg_for_device(e1, e2, e3, e4)
+dma_sync_sg_for_device(>dev, e2, e3, e4)

@@
expression e1, e2;
@@
-pci_dma_mapping_error(e1, e2)
+dma_mapping_error(>dev, e2)

@@
expression e1, e2;
@@
-pci_set_dma_mask(e1, e2)
+dma_set_mask(>dev, e2)

@@
expression e1, e2;
@@
-pci_set_consistent_dma_mask(e1, e2)
+dma_set_coherent_mask(>dev, e2)

Signed-off-by: Christophe JAILLET 
---
If needed, see post from Christoph Hellwig on the kernel-janitors ML:
   https://marc.info/?l=kernel-janitors=158745678307186=4
---
 drivers/vme/bridges/vme_ca91cx42.c | 13 +++--
 drivers/vme/bridges/vme_tsi148.c   | 13 +++--
 2 files changed, 14 insertions(+), 12 deletions(-)

diff --git a/drivers/vme/bridges/vme_ca91cx42.c 
b/drivers/vme/bridges/vme_ca91cx42.c
index ea938dc29c5e..439b0edeca08 100644
--- a/drivers/vme/bridges/vme_ca91cx42.c
+++ b/drivers/vme/bridges/vme_ca91cx42.c
@@ -1510,7 +1510,7 @@ static void *ca91cx42_alloc_consistent(struct device 
*parent, size_t size,
/* Find pci_dev container of dev */
pdev = to_pci_dev(parent);
 
-   return pci_alloc_consistent(pdev, size, dma);
+   return dma_alloc_coherent(>dev, size, dma, GFP_KERNEL);
 }
 
 static void ca91cx42_free_consistent(struct device *parent, size_t size,
@@ -1521,7 +1521,7 @@ static void ca91cx42_free_consistent(struct device 
*parent, size_t size,
/* Find pci_dev container of dev */
pdev = to_pci_dev(parent);
 
-   pci_free_consistent(pdev, size, vaddr, dma);
+   dma_free_coherent(>dev, size, vaddr, dma);
 }
 
 /*
@@ -1555,8 +1555,9 @@ static int ca91cx42_crcsr_init(struct vme_bridge 
*ca91cx42_bridge,
}
 
/* Allocate mem for CR/CSR image */
-   bridge->crcsr_kernel = pci_zalloc_consistent(pdev, VME_CRCSR_BUF_SIZE,
->crcsr_bus);
+   bridge->crcsr_kernel = dma_alloc_coherent(>dev,
+ VME_CRCSR_BUF_SIZE,
+ >crcsr_bus, 
GFP_KERNEL);
if (!bridge->crcsr_kernel) {
dev_err(>dev, "Failed to allocate memory for CR/CSR "
"image\n");
@@ -1589,8 +1590,8 @@ static void ca91cx42_crcsr_exit(struct vme_bridge 
*ca91cx42_bridge,
/* Free image */
iowrite32(0, bridge->base + VCSR_TO);
 
-   pci_free_consistent(pdev, VME_CRCSR_BUF_SIZE, bridge->crcsr_kernel,
-   bridge->crcsr_bus);
+   dma_free_coherent(>dev, VME_CRCSR_BUF_SIZE,
+ bridge->crcsr_kernel, bridge->crcsr_bus);
 }
 
 static int 

Re: [PATCH] staging: greybus: audio: Add missing unlock in gbaudio_dapm_free_controls()

2020-12-05 Thread wanghai (M)


在 2020/12/5 2:02, Vaibhav Agarwal 写道:

On Fri, Dec 4, 2020 at 2:10 PM Johan Hovold  wrote:

On Fri, Dec 04, 2020 at 10:13:50AM +0800, Wang Hai wrote:

Add the missing unlock before return from function
gbaudio_dapm_free_controls() in the error handling case.

Fixes: 510e340efe0c ("staging: greybus: audio: Add helper APIs for dynamic audio 
module")
Reported-by: Hulk Robot 
Signed-off-by: Wang Hai 
---
  drivers/staging/greybus/audio_helper.c | 1 +
  1 file changed, 1 insertion(+)

diff --git a/drivers/staging/greybus/audio_helper.c 
b/drivers/staging/greybus/audio_helper.c
index 237531ba60f3..293675dbea10 100644
--- a/drivers/staging/greybus/audio_helper.c
+++ b/drivers/staging/greybus/audio_helper.c
@@ -135,6 +135,7 @@ int gbaudio_dapm_free_controls(struct snd_soc_dapm_context 
*dapm,
   if (!w) {
   dev_err(dapm->dev, "%s: widget not found\n",
   widget->name);
+ mutex_unlock(>card->dapm_mutex);
   return -EINVAL;
   }
   widget++;

This superficially looks correct, but there seems to be another bug in
this function. It can be used free an array of widgets, but if one of
them isn't found we just leak the rest. Perhaps that return should
rather be "widget++; continue;".

Vaibhav?

Thanks Wang for sharing the patch. As already pointed by Johan, this
function indeed has another bug as well.
Pls feel free to share the patch as suggested above.

I just sent another patch

"[PATCH] staging: greybus: audio: Fix possible leak free widgets in 
gbaudio_dapm_free_controls"



Johan
.


___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH] staging: greybus: audio: Fix possible leak free widgets in gbaudio_dapm_free_controls

2020-12-05 Thread Wang Hai
In gbaudio_dapm_free_controls(), if one of the widgets is not found, an error
will be returned directly, which will cause the rest to be unable to be freed,
resulting in leak.

This patch fixes the bug. If if one of them is not found, just skip and free 
the others.

Fixes: 510e340efe0c ("staging: greybus: audio: Add helper APIs for dynamic 
audio module")
Reported-by: Hulk Robot 
Signed-off-by: Wang Hai 
---
 drivers/staging/greybus/audio_helper.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/greybus/audio_helper.c 
b/drivers/staging/greybus/audio_helper.c
index 237531ba60f3..3011b8abce38 100644
--- a/drivers/staging/greybus/audio_helper.c
+++ b/drivers/staging/greybus/audio_helper.c
@@ -135,7 +135,8 @@ int gbaudio_dapm_free_controls(struct snd_soc_dapm_context 
*dapm,
if (!w) {
dev_err(dapm->dev, "%s: widget not found\n",
widget->name);
-   return -EINVAL;
+   widget++;
+   continue;
}
widget++;
 #ifdef CONFIG_DEBUG_FS
-- 
2.17.1

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH] Staging: rtl8723bs/core fix brace coding style issues in rtw_recv.c

2020-12-05 Thread Greg KH
On Fri, Dec 04, 2020 at 04:00:43PM -0600, Brother Matthew De Angelis wrote:
> Fix all the brace code style warnings found by checkpatch.pl at the
> following lines:
> 748, 940, 1039, 1602, 1922, 1939.
> At line 940 add a semi-colon to specify a line that does not execute
> anything, as in Kernighan and Ritchie
> 
> Signed-off-by: Brother Matthew De Angelis 
> ---
>  drivers/staging/rtl8723bs/core/rtw_recv.c | 20 +++-
>  1 file changed, 7 insertions(+), 13 deletions(-)
> 
> diff --git a/drivers/staging/rtl8723bs/core/rtw_recv.c 
> b/drivers/staging/rtl8723bs/core/rtw_recv.c
> index 43e67e48d2df..22030fe6e714 100644
> --- a/drivers/staging/rtl8723bs/core/rtw_recv.c
> +++ b/drivers/staging/rtl8723bs/core/rtw_recv.c
> @@ -745,9 +745,8 @@ void count_rx_stats(struct adapter *padapter, union 
> recv_frame *prframe, struct
>  
>   padapter->mlmepriv.LinkDetectInfo.NumRxOkInPeriod++;
>  
> - if ((!MacAddr_isBcst(pattrib->dst)) && (!IS_MCAST(pattrib->dst))) {
> + if ((!MacAddr_isBcst(pattrib->dst)) && (!IS_MCAST(pattrib->dst)))
>   padapter->mlmepriv.LinkDetectInfo.NumRxUnicastOkInPeriod++;
> - }
>  
>   if (sta)
>   psta = sta;
> @@ -937,9 +936,8 @@ sint ap2sta_data_frame(struct adapter *adapter, union 
> recv_frame *precv_frame,
>   goto exit;
>   }
>  
> - if ((GetFrameSubType(ptr) & WIFI_QOS_DATA_TYPE) == 
> WIFI_QOS_DATA_TYPE) {
> - }
> -
> + if ((GetFrameSubType(ptr) & WIFI_QOS_DATA_TYPE) == 
> WIFI_QOS_DATA_TYPE)
> + ;

An if statement that does nothing should not be here at all, right?

thanks,

greg k-h
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH v3 3/6] ARM: dts: sun8i: v3s: Add node for system control

2020-12-05 Thread Samuel Holland
On 12/3/20 10:44 AM, Chen-Yu Tsai wrote:
> On Fri, Dec 4, 2020 at 12:25 AM Martin Cerveny  wrote:
>>
>> Hello.
>>
>> On Thu, 3 Dec 2020, Chen-Yu Tsai wrote:
>>
>>> Hi,
>>>
>>> On Mon, Nov 16, 2020 at 8:57 PM Martin Cerveny  
>>> wrote:

 Allwinner V3s has system control and SRAM C1 region similar to H3.

 Signed-off-by: Martin Cerveny 
 ---
  arch/arm/boot/dts/sun8i-v3s.dtsi | 14 ++
  1 file changed, 14 insertions(+)

 diff --git a/arch/arm/boot/dts/sun8i-v3s.dtsi 
 b/arch/arm/boot/dts/sun8i-v3s.dtsi
 index 0c7341676921..70193512c222 100644
 --- a/arch/arm/boot/dts/sun8i-v3s.dtsi
 +++ b/arch/arm/boot/dts/sun8i-v3s.dtsi
 @@ -161,6 +161,20 @@ syscon: system-control@1c0 {
 #address-cells = <1>;
 #size-cells = <1>;
 ranges;
 +
 +   sram_c: sram@1d0 {
 +   compatible = "mmio-sram";
 +   reg = <0x01d0 0x8>;
>>>
>>> How was this address derived? Did you check that there is actually SRAM 
>>> here?
>>
>> Yes, I did some checking (mmap). But I repeated measurement and found
>> mirrored regions:
>>
>> - SRAM_C is mirrored from 0x_4000 (primary location) to 0x01d0_4000 
>> (size 0xb000)
>>(probably exact size is 0xb0c0)
>> - rest of 0x01d0_ are discontinuously filled with R/W register sets
>>(probably some internals registers from VE) that I thought to be SRAM too
>> - register SRAM_CTRL_REG0==0x01c00_ (value 0x7fff_) switch whole
>>region 0x01d0_-0x01df_ __AND__ 0x_4000-0x_
>> - VE/cedrus code use this regions indirectly
>>(VE_AVC_SRAM_PORT_OFFSET/VE_AVC_SRAM_PORT_DATA...)
>>and it is not influenced by "true" SRAM mapping or size
> 
> Could you add this to your commit log? That would make the information
> available to others, and you could mention that you only added the
> location that is contiguous SRAM without the interspersed registers.
> 
> So based on this, and what we've seen with the H616, I'm guessing
> 0x01d0_ - 0x01df_ exposes all the internal guts of the VE,
> while SRAM C @ 0x4000 just maps a small portion out.
> 
>> -> so I suppose to better use only SRAM_C lower definition:
> 
> Yes that would be more appropriate, as it matches the manual, and as you
> mentioned, is *real* SRAM.

My reading of the manual and comments in the BSP U-Boot is that the high
address near the VE registers is the "real" address. The alternate SRAM
mapping just past the end of SRAM A1 exists specifically so the boot ROM
can load boot0/TOC0 images larger than would fit in SRAM A1.

I don't have a copy of the V3s BROM, but here's the logic from the
beginning of the H6 SBROM, which first enables the VE bus clock and
reset before mapping the SRAM:

; VE_BGR_REG |= BIT(16)
 2dc:  e59f113c  ldr r1, [pc, #316] ; 420
 2e0:  e5912000  ldr r2, [r1]
 2e4:  e3a03801  mov r3, #65536 ; 0x1
 2e8:  e1822003  orr r2, r2, r3
 2ec:  e5812000  str r2, [r1]
; VE_BGR_REG |= BIT(0)
 2f0:  e59f1128  ldr r1, [pc, #296] ; 420
 2f4:  e5912000  ldr r2, [r1]
 2f8:  e3a03001  mov r3, #1
 2fc:  e1822003  orr r2, r2, r3
 300:  e5812000  str r2, [r1]
; SRAM_CTRL_REG0 &= BIT(31)
 304:  e3a01403  mov r1, #50331648 ; 0x300
 308:  e5912000  ldr r2, [r1]
 30c:  e3c220ff  bic r2, r2, #255 ; 0xff
 310:  e3c22cff  bic r2, r2, #65280 ; 0xff00
 314:  e3c228ff  bic r2, r2, #16711680 ; 0xff
 318:  e3c2247f  bic r2, r2, #2130706432 ; 0x7f00
 31c:  e5812000  str r2, [r1]
; SRAM_CTRL_REG1 = BIT(24) | BIT(0)
 320:  e59f10fc  ldr r1, [pc, #252] ; 424
 324:  e3a02401  mov r2, #16777216 ; 0x100
 328:  e1822003  orr r2, r2, r3
 32c:  e5812000  str r2, [r1]
...
 420:  .word 0300169c
 424:  .word 0304

Then U-Boot SPL[1] sets the SRAM back to "normal mode" before turning
off the VE gating and reset:

//VE SRAM:set sram to normal mode, default boot mode
reg_val = readl(SUNXI_SYSCRL_BASE+0X0004);
reg_val &= ~(0x1<<24);
writel(reg_val, SUNXI_SYSCRL_BASE+0X0004);

//VE gating Bus Reset :brom set them, but not require now
reg_val = readl(CCMU_VE_BGR_REG);
reg_val &= ~(0x1<<0);
reg_val &= ~(0x1<<16);
writel(reg_val, CCMU_VE_BGR_REG);

Other SoCs have a similar code to unmap SRAM C[2]. The AHB1 bus clock
frequency limitation makes sense given that it has to go through the VE
hardware block to get to the SRAM.

In fact, the AHB1 clock limitation when using the low mapping should be
reason enough to prefer the high mapping.

Cheers,
Samuel

[1]:
https://github.com/Allwinner-Homlet/H6-BSP4.9-brandy/blob/master/u-boot-2014.07/board/sunxi/sun50iw6p1/sun50iw6p1.c#L60
[2]:
https://github.com/Allwinner-Homlet/H6-BSP4.9-brandy/blob/master/u-boot-2014.07/board/sunxi/sun8iw10p1/sun8iw10p1.c#L75


Re: [PATCH] Staging: rtl8723bs/core fix brace coding style issues in rtw_recv.c

2020-12-05 Thread YOUR NAME
On Sat, Dec 05, 2020 at 09:41:16AM +0100, Greg KH wrote:
> On Fri, Dec 04, 2020 at 04:00:43PM -0600, Brother Matthew De Angelis wrote:
> > Fix all the brace code style warnings found by checkpatch.pl at the
> > following lines:
> > 748, 940, 1039, 1602, 1922, 1939.
> > At line 940 add a semi-colon to specify a line that does not execute
> > anything, as in Kernighan and Ritchie
> > 
> > Signed-off-by: Brother Matthew De Angelis 
> > ---
> >  drivers/staging/rtl8723bs/core/rtw_recv.c | 20 +++-
> >  1 file changed, 7 insertions(+), 13 deletions(-)
> > 
> > diff --git a/drivers/staging/rtl8723bs/core/rtw_recv.c 
> > b/drivers/staging/rtl8723bs/core/rtw_recv.c
> > index 43e67e48d2df..22030fe6e714 100644
> > --- a/drivers/staging/rtl8723bs/core/rtw_recv.c
> > +++ b/drivers/staging/rtl8723bs/core/rtw_recv.c
> > @@ -745,9 +745,8 @@ void count_rx_stats(struct adapter *padapter, union 
> > recv_frame *prframe, struct
> >  
> > padapter->mlmepriv.LinkDetectInfo.NumRxOkInPeriod++;
> >  
> > -   if ((!MacAddr_isBcst(pattrib->dst)) && (!IS_MCAST(pattrib->dst))) {
> > +   if ((!MacAddr_isBcst(pattrib->dst)) && (!IS_MCAST(pattrib->dst)))
> > padapter->mlmepriv.LinkDetectInfo.NumRxUnicastOkInPeriod++;
> > -   }
> >  
> > if (sta)
> > psta = sta;
> > @@ -937,9 +936,8 @@ sint ap2sta_data_frame(struct adapter *adapter, union 
> > recv_frame *precv_frame,
> > goto exit;
> > }
> >  
> > -   if ((GetFrameSubType(ptr) & WIFI_QOS_DATA_TYPE) == 
> > WIFI_QOS_DATA_TYPE) {
> > -   }
> > -
> > +   if ((GetFrameSubType(ptr) & WIFI_QOS_DATA_TYPE) == 
> > WIFI_QOS_DATA_TYPE)
> > +   ;
> 
> An if statement that does nothing should not be here at all, right?
> 
> thanks,
> 
> greg k-h
My apologies for sending this in private to Greg the first time.
I was not smart enough to figure out that Group in Mutt stands for "Reply to 
all".
Thank you for your suggestion Greg.
Should I send a single patch that deletes the empty if statement at line 940
and the unnecessary braces at the other lines
or should I split the two deletions into two separate patches?
Should it perhaps be a patch set?
Thanks!
Br. Matt
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH] staging: greybus: audio: Fix possible leak free widgets in gbaudio_dapm_free_controls

2020-12-05 Thread Vaibhav Agarwal
On Sat, Dec 5, 2020 at 4:02 PM Wang Hai  wrote:
>
> In gbaudio_dapm_free_controls(), if one of the widgets is not found, an error
> will be returned directly, which will cause the rest to be unable to be freed,
> resulting in leak.
>
> This patch fixes the bug. If if one of them is not found, just skip and free 
> the others.
>

nit, typo error "If if one".

> Fixes: 510e340efe0c ("staging: greybus: audio: Add helper APIs for dynamic 
> audio module")
> Reported-by: Hulk Robot 
> Signed-off-by: Wang Hai 
> ---

Reviewed-by: Vaibhav Agarwal 

--
thanks,
vaibhav
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH] Staging: rtl8723bs/core fix brace coding style issues in rtw_recv.c

2020-12-05 Thread Greg KH
On Sat, Dec 05, 2020 at 08:28:10AM -0600, YOUR NAME wrote:
> On Sat, Dec 05, 2020 at 09:41:16AM +0100, Greg KH wrote:
> > On Fri, Dec 04, 2020 at 04:00:43PM -0600, Brother Matthew De Angelis wrote:
> > > Fix all the brace code style warnings found by checkpatch.pl at the
> > > following lines:
> > > 748, 940, 1039, 1602, 1922, 1939.
> > > At line 940 add a semi-colon to specify a line that does not execute
> > > anything, as in Kernighan and Ritchie
> > > 
> > > Signed-off-by: Brother Matthew De Angelis 
> > > ---
> > >  drivers/staging/rtl8723bs/core/rtw_recv.c | 20 +++-
> > >  1 file changed, 7 insertions(+), 13 deletions(-)
> > > 
> > > diff --git a/drivers/staging/rtl8723bs/core/rtw_recv.c 
> > > b/drivers/staging/rtl8723bs/core/rtw_recv.c
> > > index 43e67e48d2df..22030fe6e714 100644
> > > --- a/drivers/staging/rtl8723bs/core/rtw_recv.c
> > > +++ b/drivers/staging/rtl8723bs/core/rtw_recv.c
> > > @@ -745,9 +745,8 @@ void count_rx_stats(struct adapter *padapter, union 
> > > recv_frame *prframe, struct
> > >  
> > >   padapter->mlmepriv.LinkDetectInfo.NumRxOkInPeriod++;
> > >  
> > > - if ((!MacAddr_isBcst(pattrib->dst)) && (!IS_MCAST(pattrib->dst))) {
> > > + if ((!MacAddr_isBcst(pattrib->dst)) && (!IS_MCAST(pattrib->dst)))
> > >   padapter->mlmepriv.LinkDetectInfo.NumRxUnicastOkInPeriod++;
> > > - }
> > >  
> > >   if (sta)
> > >   psta = sta;
> > > @@ -937,9 +936,8 @@ sint ap2sta_data_frame(struct adapter *adapter, union 
> > > recv_frame *precv_frame,
> > >   goto exit;
> > >   }
> > >  
> > > - if ((GetFrameSubType(ptr) & WIFI_QOS_DATA_TYPE) == 
> > > WIFI_QOS_DATA_TYPE) {
> > > - }
> > > -
> > > + if ((GetFrameSubType(ptr) & WIFI_QOS_DATA_TYPE) == 
> > > WIFI_QOS_DATA_TYPE)
> > > + ;
> > 
> > An if statement that does nothing should not be here at all, right?
> > 
> > thanks,
> > 
> > greg k-h
> My apologies for sending this in private to Greg the first time.
> I was not smart enough to figure out that Group in Mutt stands for "Reply to 
> all".
> Thank you for your suggestion Greg.
> Should I send a single patch that deletes the empty if statement at line 940
> and the unnecessary braces at the other lines
> or should I split the two deletions into two separate patches?

2 different patches, as they are doing different things, right?

> Should it perhaps be a patch set?

Yes a patch series would be great, thanks.

greg k-h
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 2/2] Staging: rtl8723bs/core: fix brace coding style issue

2020-12-05 Thread Brother Matthew De Angelis
Remove unnecessary braces identified by checkpatch.pl at lines 740,
1039,1602,1922,1939.

Signed-off-by: Brother Matthew De Angelis 
---
 drivers/staging/rtl8723bs/core/rtw_recv.c | 15 +--
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/drivers/staging/rtl8723bs/core/rtw_recv.c 
b/drivers/staging/rtl8723bs/core/rtw_recv.c
index ce8484e0e5b9..b95d31fc8413 100644
--- a/drivers/staging/rtl8723bs/core/rtw_recv.c
+++ b/drivers/staging/rtl8723bs/core/rtw_recv.c
@@ -745,9 +745,8 @@ void count_rx_stats(struct adapter *padapter, union 
recv_frame *prframe, struct
 
padapter->mlmepriv.LinkDetectInfo.NumRxOkInPeriod++;
 
-   if ((!MacAddr_isBcst(pattrib->dst)) && (!IS_MCAST(pattrib->dst))) {
+   if ((!MacAddr_isBcst(pattrib->dst)) && (!IS_MCAST(pattrib->dst)))
padapter->mlmepriv.LinkDetectInfo.NumRxUnicastOkInPeriod++;
-   }
 
if (sta)
psta = sta;
@@ -1033,9 +1032,8 @@ sint sta2ap_data_frame(struct adapter *adapter, union 
recv_frame *precv_frame,
 
process_pwrbit_data(adapter, precv_frame);
 
-   if ((GetFrameSubType(ptr) & WIFI_QOS_DATA_TYPE) == 
WIFI_QOS_DATA_TYPE) {
+   if ((GetFrameSubType(ptr) & WIFI_QOS_DATA_TYPE) == 
WIFI_QOS_DATA_TYPE)
process_wmmps_data(adapter, precv_frame);
-   }
 
if (GetFrameSubType(ptr) & BIT(6)) {
/* No data, will not indicate to upper layer, temporily 
count it here */
@@ -1596,9 +1594,8 @@ sint wlanhdr_to_ethhdr(union recv_frame *precvframe)
u8 *ptr = get_recvframe_data(precvframe) ; /*  point to frame_ctrl 
field */
struct rx_pkt_attrib *pattrib = >u.hdr.attrib;
 
-   if (pattrib->encrypt) {
+   if (pattrib->encrypt)
recvframe_pull_tail(precvframe, pattrib->icv_len);
-   }
 
psnap = (struct ieee80211_snap_hdr  *)(ptr+pattrib->hdrlen + 
pattrib->iv_len);
psnap_type = ptr+pattrib->hdrlen + pattrib->iv_len+SNAP_SIZE;
@@ -1916,9 +1913,8 @@ static int amsdu_to_msdu(struct adapter *padapter, union 
recv_frame *prframe)
a_len -= nSubframe_Length;
if (a_len != 0) {
padding_len = 4 - ((nSubframe_Length + ETH_HLEN) & 
(4-1));
-   if (padding_len == 4) {
+   if (padding_len == 4)
padding_len = 0;
-   }
 
if (a_len < padding_len) {
DBG_871X("ParseSubframe(): a_len < padding_len 
!\n");
@@ -1933,9 +1929,8 @@ static int amsdu_to_msdu(struct adapter *padapter, union 
recv_frame *prframe)
sub_pkt = subframes[i];
 
/* Indicate the packets to upper layer */
-   if (sub_pkt) {
+   if (sub_pkt)
rtw_os_recv_indicate_pkt(padapter, sub_pkt, 
>u.hdr.attrib);
-   }
}
 
prframe->u.hdr.len = 0;
-- 
2.25.1

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 0/2] Fix coding style issues

2020-12-05 Thread Brother Matthew De Angelis
Hello,

this series fixes two separate coding style issues.

1. Delete an empty if statement.

2. Fix remaining unnecessary brace coding style issues.

Brother Matthew De Angelis (2):
  Staging: rtl8723bs/core: delete empty if statement
  Staging: rtl8723bs/core: fix brace coding style issue

 drivers/staging/rtl8723bs/core/rtw_recv.c | 18 +-
 1 file changed, 5 insertions(+), 13 deletions(-)

-- 
2.25.1

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 1/2] Staging: rtl8723bs/core: delete empty if statement

2020-12-05 Thread Brother Matthew De Angelis
Delete an if statement that was not executing anything when true.
This has the side effect of removing one checkpatch warning about braces
not being necessary.

Signed-off-by: Brother Matthew De Angelis 
---
 drivers/staging/rtl8723bs/core/rtw_recv.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/staging/rtl8723bs/core/rtw_recv.c 
b/drivers/staging/rtl8723bs/core/rtw_recv.c
index 43e67e48d2df..ce8484e0e5b9 100644
--- a/drivers/staging/rtl8723bs/core/rtw_recv.c
+++ b/drivers/staging/rtl8723bs/core/rtw_recv.c
@@ -937,9 +937,6 @@ sint ap2sta_data_frame(struct adapter *adapter, union 
recv_frame *precv_frame,
goto exit;
}
 
-   if ((GetFrameSubType(ptr) & WIFI_QOS_DATA_TYPE) == 
WIFI_QOS_DATA_TYPE) {
-   }
-
if (GetFrameSubType(ptr) & BIT(6)) {
/* No data, will not indicate to upper layer, temporily 
count it here */
count_rx_stats(adapter, precv_frame, *psta);
-- 
2.25.1

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel