From nobody Wed Apr 1 08:45:47 2026 Received: from mail-qv1-f54.google.com (mail-qv1-f54.google.com [209.85.219.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 43D9F18B0F for ; Wed, 1 Apr 2026 00:09:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775002169; cv=none; b=edKq6uHU2XZsW5F+xMicqhz4n1r576vePWRgE6ODDrvz4Qg254lOlBhNbhXHG1lTja7sKEc21dE1qBQV1LLcwXsXa9VvAdSf4gmSPlR1fAorqwy1/cHeB4yM//15L94ynLEXS5QgHQ70elaYgOGsCpgMCvrUg77zMX/d2cYQdi0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775002169; c=relaxed/simple; bh=eOeXIKUH9fCvAiVOmGpKlAllxlXTrlykjcwSAkTmXpY=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=cu67PykQ4K+K3QUxt/113WfzQy1EpiHgTkq6G2cWrwzfG/dJ2TC2GG6zl4cJ6zlS9dtJ88SaQXA77VdMENNEFtBvbmxJ0xe3wv/7FJnNUhgnLM+1lx799i8klPIYXDMxGwImwQRoEQV0ePzmv6gIaoLC1DXSTH7IZ5tkSASZqTI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Y3RC2lgH; arc=none smtp.client-ip=209.85.219.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Y3RC2lgH" Received: by mail-qv1-f54.google.com with SMTP id 6a1803df08f44-899a5db525cso51790786d6.3 for ; Tue, 31 Mar 2026 17:09:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775002166; x=1775606966; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=vyMAvldIKlGr5P9iR852ZGqxGZPnzPhwb3E0JZOrwv8=; b=Y3RC2lgHkNSR5rPdmssgIHlV2xxuzFt9s32ipKMzsefHYmbAfcDrg8uuHGrzMJyD7K NByr9e8Fdih6W8lnCXX1EW+eYGO/GZR9hha/XAV3fxJ9ypQCMnBL0BWFEGMwxM4Nxi/o yBE3iG636DQRUodOX8DfU/WFj2lItN5j5hjrvKYA3MLFtjtHNFw4Z1XE+5nSvXuefgxa B9KW68ZglPi+1FKlTr7mbI8cdWwNo0N4UlJGuGDY0LrFFLByF0yiRehDG98zd3ny6a3M jLyTrt5zRJETnqjEPGkstXVLBaV5qO8OqDmJOZf5G/+00tlqkoXi7IKHtxznls4QVlZQ WCSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775002166; x=1775606966; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=vyMAvldIKlGr5P9iR852ZGqxGZPnzPhwb3E0JZOrwv8=; b=YOw9/zhs//LKdyUcv9/UId3ezx2T9brPAROmzIWKR7JCmYJ+2BT4BT0jZVWJWHSmqV yQCBupY4Qtw60MjKt7npLXaePEORty3qqeDjXQsHLU9CjYNds7SjIG500uQ7/DbpslDM cBeH7iZTX6US7En4cujPCyCUuF9rNYXqhn3KDzLmoAdurY3QSBHZs/VcqU8pIijhPm9q +rAgeIGQtVKekRhRno5/eZH4o0NYSz9raMVvHWbd9BDzrgBucLYHn0QJhT4JWQ2z/W6f 7mQ8HIctzPJn/2QwgIZ9wys61i7m22IAvkRpW9+PE1NxIcz286EujjC/rSltBSJMYWSJ W7Rw== X-Forwarded-Encrypted: i=1; AJvYcCVqaCMOY/8bL8BVq7CK8tv7Mdf3DhNYsR25AXnhG2GJP7v/TfnKh0WKeejVCHY0ryISKEe0KBIwSmcZkkc=@vger.kernel.org X-Gm-Message-State: AOJu0YzUEy9fFrgdUH2zAZgsy7Fy/AVj7B8Ppk4bGgC/cj84oESz+2BD zfU/zsJJ8UC9TH44W0uTRqANRlMRVbX6wthMUDU3rHj6nQpwsJPTjogd X-Gm-Gg: ATEYQzyOQ63NSFSS4Xk7FlSqwRuQI3sZUqDgD5TUUPuSIIKR1DE0I9DpiRizzbazcxU 7slAh3+aDmhTSUjs2IWxVDEzYEt9/v0FJZ2FTTd0HmW6vlbnJO0QoWO1ru+7eu96aiPkPsgaa79 ZcX+VfNcg1O0f/krMJruoirxz3lIt6FBIoGKsMiecwVe9jz3AxZPku5JGBFeNtLeUa3C4dRGsAO sc30xYXLONkrNnOQjotl749LMzgPVo/UpBKnubjAVW89R6+UYjkBMFWOqA15Pi8takDcEgQ51ob HYSSMwjfvqLKbGGgaIfR3afhE5m3E9p6jmkDriFHcCuRllvP15fXd9fh2eg6hf/28G97ger6kVD KjHusgRwm88OD2PV233GceZGWKGqZBiPJb+WqNkvzqWbrpZWT+vcuYd8rl5DOHHIis3gIVjHO X-Received: by 2002:a05:6214:328f:b0:89c:43a5:45ab with SMTP id 6a1803df08f44-8a436a18989mr26818156d6.7.1775002166049; Tue, 31 Mar 2026 17:09:26 -0700 (PDT) Received: from r9 ([2601:5c2:100:2f60::418e]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-89ecb5ce7f0sm101814026d6.8.2026.03.31.17.09.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 31 Mar 2026 17:09:25 -0700 (PDT) From: Xiyuan Guo To: gregkh@linuxfoundation.org Cc: linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Xiyuan Guo Subject: [PATCH v1] staging: rtl8723bs: remove GEN_CMD_CODE macro and callback array Date: Tue, 31 Mar 2026 20:08:18 -0400 Message-ID: <20260401000818.51141-1-tommyguo039@gmail.com> X-Mailer: git-send-email 2.53.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The GEN_CMD_CODE macro and the rtw_cmd_callback function pointer array add unnecessary layers of indirection and make the code difficult to follow. Remove the GEN_CMD_CODE macro and replace the function pointer array dispatcher in rtw_cmd_thread() with a switch statement. Signed-off-by: Xiyuan Guo --- drivers/staging/rtl8723bs/core/rtw_ap.c | 4 +- drivers/staging/rtl8723bs/core/rtw_cmd.c | 155 ++++++------------ drivers/staging/rtl8723bs/core/rtw_mlme.c | 4 +- drivers/staging/rtl8723bs/core/rtw_mlme_ext.c | 18 +- drivers/staging/rtl8723bs/include/rtw_cmd.h | 154 +++++++++-------- 5 files changed, 134 insertions(+), 201 deletions(-) diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8= 723bs/core/rtw_ap.c index 4cdcdddf6b33..9a451fe0cce3 100644 --- a/drivers/staging/rtl8723bs/core/rtw_ap.c +++ b/drivers/staging/rtl8723bs/core/rtw_ap.c @@ -1237,7 +1237,7 @@ u8 rtw_ap_set_pairwise_key(struct adapter *padapter, = struct sta_info *psta) goto exit; } =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, psetstakey_para, _SetStaKey_CMD_); + init_h2fwcmd_w_parm_no_rsp(ph2c, psetstakey_para, _SetStaKey); =20 psetstakey_para->algorithm =3D (u8)psta->dot118021XPrivacy; =20 @@ -1300,7 +1300,7 @@ static int rtw_ap_set_key(struct adapter *padapter, =20 memcpy(&psetkeyparm->key[0], key, keylen); =20 - pcmd->cmdcode =3D _SetKey_CMD_; + pcmd->cmdcode =3D _SetKey; pcmd->parmbuf =3D (u8 *)psetkeyparm; pcmd->cmdsz =3D (sizeof(struct setkey_parm)); pcmd->rsp =3D NULL; diff --git a/drivers/staging/rtl8723bs/core/rtw_cmd.c b/drivers/staging/rtl= 8723bs/core/rtw_cmd.c index c1185c25ed36..d35b91cbdeaa 100644 --- a/drivers/staging/rtl8723bs/core/rtw_cmd.c +++ b/drivers/staging/rtl8723bs/core/rtw_cmd.c @@ -10,81 +10,6 @@ #include #include =20 -static struct _cmd_callback rtw_cmd_callback[] =3D { - {GEN_CMD_CODE(_Read_MACREG), NULL}, /*0*/ - {GEN_CMD_CODE(_Write_MACREG), NULL}, - {GEN_CMD_CODE(_Read_BBREG), &rtw_getbbrfreg_cmdrsp_callback}, - {GEN_CMD_CODE(_Write_BBREG), NULL}, - {GEN_CMD_CODE(_Read_RFREG), &rtw_getbbrfreg_cmdrsp_callback}, - {GEN_CMD_CODE(_Write_RFREG), NULL}, /*5*/ - {GEN_CMD_CODE(_Read_EEPROM), NULL}, - {GEN_CMD_CODE(_Write_EEPROM), NULL}, - {GEN_CMD_CODE(_Read_EFUSE), NULL}, - {GEN_CMD_CODE(_Write_EFUSE), NULL}, - - {GEN_CMD_CODE(_Read_CAM), NULL}, /*10*/ - {GEN_CMD_CODE(_Write_CAM), NULL}, - {GEN_CMD_CODE(_setBCNITV), NULL}, - {GEN_CMD_CODE(_setMBIDCFG), NULL}, - {GEN_CMD_CODE(_JoinBss), &rtw_joinbss_cmd_callback}, /*14*/ - {GEN_CMD_CODE(_DisConnect), &rtw_disassoc_cmd_callback}, /*15*/ - {GEN_CMD_CODE(_CreateBss), &rtw_createbss_cmd_callback}, - {GEN_CMD_CODE(_SetOpMode), NULL}, - {GEN_CMD_CODE(_SiteSurvey), &rtw_survey_cmd_callback}, /*18*/ - {GEN_CMD_CODE(_SetAuth), NULL}, - - {GEN_CMD_CODE(_SetKey), NULL}, /*20*/ - {GEN_CMD_CODE(_SetStaKey), &rtw_setstaKey_cmdrsp_callback}, - {GEN_CMD_CODE(_SetAssocSta), &rtw_setassocsta_cmdrsp_callback}, - {GEN_CMD_CODE(_DelAssocSta), NULL}, - {GEN_CMD_CODE(_SetStaPwrState), NULL}, - {GEN_CMD_CODE(_SetBasicRate), NULL}, /*25*/ - {GEN_CMD_CODE(_GetBasicRate), NULL}, - {GEN_CMD_CODE(_SetDataRate), NULL}, - {GEN_CMD_CODE(_GetDataRate), NULL}, - {GEN_CMD_CODE(_SetPhyInfo), NULL}, - - {GEN_CMD_CODE(_GetPhyInfo), NULL}, /*30*/ - {GEN_CMD_CODE(_SetPhy), NULL}, - {GEN_CMD_CODE(_GetPhy), NULL}, - {GEN_CMD_CODE(_readRssi), NULL}, - {GEN_CMD_CODE(_readGain), NULL}, - {GEN_CMD_CODE(_SetAtim), NULL}, /*35*/ - {GEN_CMD_CODE(_SetPwrMode), NULL}, - {GEN_CMD_CODE(_JoinbssRpt), NULL}, - {GEN_CMD_CODE(_SetRaTable), NULL}, - {GEN_CMD_CODE(_GetRaTable), NULL}, - - {GEN_CMD_CODE(_GetCCXReport), NULL}, /*40*/ - {GEN_CMD_CODE(_GetDTMReport), NULL}, - {GEN_CMD_CODE(_GetTXRateStatistics), NULL}, - {GEN_CMD_CODE(_SetUsbSuspend), NULL}, - {GEN_CMD_CODE(_SetH2cLbk), NULL}, - {GEN_CMD_CODE(_AddBAReq), NULL}, /*45*/ - {GEN_CMD_CODE(_SetChannel), NULL}, /*46*/ - {GEN_CMD_CODE(_SetTxPower), NULL}, - {GEN_CMD_CODE(_SwitchAntenna), NULL}, - {GEN_CMD_CODE(_SetCrystalCap), NULL}, - {GEN_CMD_CODE(_SetSingleCarrierTx), NULL}, /*50*/ - - {GEN_CMD_CODE(_SetSingleToneTx), NULL}, /*51*/ - {GEN_CMD_CODE(_SetCarrierSuppressionTx), NULL}, - {GEN_CMD_CODE(_SetContinuousTx), NULL}, - {GEN_CMD_CODE(_SwitchBandwidth), NULL}, /*54*/ - {GEN_CMD_CODE(_TX_Beacon), NULL},/*55*/ - - {GEN_CMD_CODE(_Set_MLME_EVT), NULL},/*56*/ - {GEN_CMD_CODE(_Set_Drv_Extra), NULL},/*57*/ - {GEN_CMD_CODE(_Set_H2C_MSG), NULL},/*58*/ - {GEN_CMD_CODE(_SetChannelPlan), NULL},/*59*/ - - {GEN_CMD_CODE(_SetChannelSwitch), NULL},/*60*/ - {GEN_CMD_CODE(_TDLS), NULL},/*61*/ - {GEN_CMD_CODE(_ChkBMCSleepq), NULL}, /*62*/ - - {GEN_CMD_CODE(_RunInThreadCMD), NULL},/*63*/ -}; - static struct cmd_hdl wlancmds[] =3D { GEN_DRV_CMD_HANDLER(0, NULL) /*0*/ GEN_DRV_CMD_HANDLER(0, NULL) @@ -301,7 +226,7 @@ int rtw_cmd_filter(struct cmd_priv *pcmdpriv, struct cm= d_obj *cmd_obj) { u8 bAllow =3D false; /* set to true to allow enqueuing cmd when hw_init_c= ompleted is false */ =20 - if (cmd_obj->cmdcode =3D=3D GEN_CMD_CODE(_SetChannelPlan)) + if (cmd_obj->cmdcode =3D=3D _SetChannelPlan) bAllow =3D true; =20 if ((!pcmdpriv->padapter->hw_init_completed && !bAllow) || @@ -343,8 +268,8 @@ struct cmd_obj *rtw_dequeue_cmd(struct cmd_priv *pcmdpr= iv) =20 void rtw_free_cmd_obj(struct cmd_obj *pcmd) { - if ((pcmd->cmdcode !=3D _JoinBss_CMD_) && - (pcmd->cmdcode !=3D _CreateBss_CMD_)) { + if ((pcmd->cmdcode !=3D _JoinBss) && + (pcmd->cmdcode !=3D _CreateBss)) { /* free parmbuf in cmd_obj */ kfree(pcmd->parmbuf); } @@ -478,16 +403,32 @@ int rtw_cmd_thread(void *context) } =20 /* call callback function for post-processed */ - if (pcmd->cmdcode < ARRAY_SIZE(rtw_cmd_callback)) { - pcmd_callback =3D rtw_cmd_callback[pcmd->cmdcode].callback; - if (!pcmd_callback) { - rtw_free_cmd_obj(pcmd); - } else { - /* todo: !!! fill rsp_buf to pcmd->rsp if (pcmd->rsp!=3D NULL) */ - pcmd_callback(pcmd->padapter, pcmd);/* need consider that free cmd_obj= in rtw_cmd_callback */ - } - } else { + switch (pcmd->cmdcode) { + case _Read_BBREG: + case _Read_RFREG: + rtw_getbbrfreg_cmdrsp_callback(padapter, pcmd); + break; + case _JoinBss: + rtw_joinbss_cmd_callback(padapter, pcmd); + break; + case _DisConnect: + rtw_disassoc_cmd_callback(padapter, pcmd); + break; + case _CreateBss: + rtw_createbss_cmd_callback(padapter, pcmd); + break; + case _SiteSurvey: + rtw_survey_cmd_callback(padapter, pcmd); + break; + case _SetStaKey: + rtw_setstaKey_cmdrsp_callback(padapter, pcmd); + break; + case _SetAssocSta: + rtw_setassocsta_cmdrsp_callback(padapter, pcmd); + break; + default: rtw_free_cmd_obj(pcmd); + break; } flush_signals_thread(); goto _next; @@ -501,7 +442,7 @@ int rtw_cmd_thread(void *context) break; } =20 - if (pcmd->cmdcode =3D=3D GEN_CMD_CODE(_Set_Drv_Extra)) { + if (pcmd->cmdcode =3D=3D _Set_Drv_Extra) { extra_parm =3D (struct drvextra_cmd_parm *)pcmd->parmbuf; if (extra_parm->pbuf && extra_parm->size > 0) kfree(extra_parm->pbuf); @@ -546,7 +487,7 @@ u8 rtw_sitesurvey_cmd(struct adapter *padapter, struct= ndis_802_11_ssid *ssid, =20 rtw_free_network_queue(padapter, false); =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, psurveyPara, GEN_CMD_CODE(_SiteSurvey)); + init_h2fwcmd_w_parm_no_rsp(ph2c, psurveyPara, _SiteSurvey); =20 /* psurveyPara->bsslimit =3D 48; */ psurveyPara->scan_mode =3D pmlmepriv->scan_mode; @@ -609,7 +550,7 @@ u8 rtw_createbss_cmd(struct adapter *padapter) } =20 INIT_LIST_HEAD(&pcmd->list); - pcmd->cmdcode =3D _CreateBss_CMD_; + pcmd->cmdcode =3D _CreateBss; pcmd->parmbuf =3D (unsigned char *)pdev_network; pcmd->cmdsz =3D get_wlan_bssid_ex_sz((struct wlan_bssid_ex *)pdev_network= ); pcmd->rsp =3D NULL; @@ -642,7 +583,7 @@ int rtw_startbss_cmd(struct adapter *padapter, int fla= gs) } =20 INIT_LIST_HEAD(&pcmd->list); - pcmd->cmdcode =3D GEN_CMD_CODE(_CreateBss); + pcmd->cmdcode =3D _CreateBss; pcmd->parmbuf =3D NULL; pcmd->cmdsz =3D 0; pcmd->rsp =3D NULL; @@ -777,7 +718,7 @@ u8 rtw_joinbss_cmd(struct adapter *padapter, struct wl= an_network *pnetwork) pcmd->cmdsz =3D get_wlan_bssid_ex_sz(psecnetwork);/* get cmdsz before end= ian conversion */ =20 INIT_LIST_HEAD(&pcmd->list); - pcmd->cmdcode =3D _JoinBss_CMD_;/* GEN_CMD_CODE(_JoinBss) */ + pcmd->cmdcode =3D _JoinBss; pcmd->parmbuf =3D (unsigned char *)psecnetwork; pcmd->rsp =3D NULL; pcmd->rspsz =3D 0; @@ -811,7 +752,7 @@ u8 rtw_disassoc_cmd(struct adapter *padapter, u32 deaut= h_timeout_ms, bool enqueu kfree(param); goto exit; } - init_h2fwcmd_w_parm_no_rsp(cmdobj, param, _DisConnect_CMD_); + init_h2fwcmd_w_parm_no_rsp(cmdobj, param, _DisConnect); res =3D rtw_enqueue_cmd(cmdpriv, cmdobj); } else { /* no need to enqueue, do the cmd hdl directly and free cmd parameter */ @@ -847,7 +788,7 @@ u8 rtw_setopmode_cmd(struct adapter *padapter, enum nd= is_802_11_network_infrast goto exit; } =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, psetop, _SetOpMode_CMD_); + init_h2fwcmd_w_parm_no_rsp(ph2c, psetop, _SetOpMode); res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); } else { setopmode_hdl(padapter, (u8 *)psetop); @@ -904,7 +845,7 @@ u8 rtw_setstakey_cmd(struct adapter *padapter, struct s= ta_info *sta, u8 unicast_ goto exit; } =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, psetstakey_para, _SetStaKey_CMD_); + init_h2fwcmd_w_parm_no_rsp(ph2c, psetstakey_para, _SetStaKey); ph2c->rsp =3D (u8 *)psetstakey_rsp; ph2c->rspsz =3D sizeof(struct set_stakey_rsp); res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); @@ -955,7 +896,7 @@ u8 rtw_clearstakey_cmd(struct adapter *padapter, struct= sta_info *sta, u8 enqueu goto exit; } =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, psetstakey_para, _SetStaKey_CMD_); + init_h2fwcmd_w_parm_no_rsp(ph2c, psetstakey_para, _SetStaKey); ph2c->rsp =3D (u8 *)psetstakey_rsp; ph2c->rspsz =3D sizeof(struct set_stakey_rsp); =20 @@ -993,7 +934,7 @@ u8 rtw_addbareq_cmd(struct adapter *padapter, u8 tid, u= 8 *addr) paddbareq_parm->tid =3D tid; memcpy(paddbareq_parm->addr, addr, ETH_ALEN); =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, paddbareq_parm, GEN_CMD_CODE(_AddBAReq)); + init_h2fwcmd_w_parm_no_rsp(ph2c, paddbareq_parm, _AddBAReq); =20 /* rtw_enqueue_cmd(pcmdpriv, ph2c); */ res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); @@ -1028,7 +969,7 @@ u8 rtw_reset_securitypriv_cmd(struct adapter *padapter) pdrvextra_cmd_parm->size =3D 0; pdrvextra_cmd_parm->pbuf =3D NULL; =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, GEN_CMD_CODE(_Set_Dr= v_Extra)); + init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, _Set_Drv_Extra); =20 /* rtw_enqueue_cmd(pcmdpriv, ph2c); */ res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); @@ -1061,7 +1002,7 @@ u8 rtw_free_assoc_resources_cmd(struct adapter *padap= ter) pdrvextra_cmd_parm->size =3D 0; pdrvextra_cmd_parm->pbuf =3D NULL; =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, GEN_CMD_CODE(_Set_Dr= v_Extra)); + init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, _Set_Drv_Extra); =20 /* rtw_enqueue_cmd(pcmdpriv, ph2c); */ res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); @@ -1094,7 +1035,7 @@ u8 rtw_dynamic_chk_wk_cmd(struct adapter *padapter) pdrvextra_cmd_parm->type =3D 0; pdrvextra_cmd_parm->size =3D 0; pdrvextra_cmd_parm->pbuf =3D NULL; - init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, GEN_CMD_CODE(_Set_Dr= v_Extra)); + init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, _Set_Drv_Extra); =20 /* rtw_enqueue_cmd(pcmdpriv, ph2c); */ res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); @@ -1343,7 +1284,7 @@ u8 rtw_lps_ctrl_wk_cmd(struct adapter *padapter, u8 l= ps_ctrl_type, u8 enqueue) pdrvextra_cmd_parm->size =3D 0; pdrvextra_cmd_parm->pbuf =3D NULL; =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, GEN_CMD_CODE(_Set_D= rv_Extra)); + init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, _Set_Drv_Extra); =20 res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); } else { @@ -1384,7 +1325,7 @@ u8 rtw_dm_in_lps_wk_cmd(struct adapter *padapter) pdrvextra_cmd_parm->size =3D 0; pdrvextra_cmd_parm->pbuf =3D NULL; =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, GEN_CMD_CODE(_Set_Dr= v_Extra)); + init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, _Set_Drv_Extra); =20 res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); =20 @@ -1446,7 +1387,7 @@ u8 rtw_dm_ra_mask_wk_cmd(struct adapter *padapter, u8= *psta) pdrvextra_cmd_parm->size =3D 0; pdrvextra_cmd_parm->pbuf =3D psta; =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, GEN_CMD_CODE(_Set_Dr= v_Extra)); + init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, _Set_Drv_Extra); =20 res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); =20 @@ -1479,7 +1420,7 @@ u8 rtw_ps_cmd(struct adapter *padapter) pdrvextra_cmd_parm->type =3D 0; pdrvextra_cmd_parm->size =3D 0; pdrvextra_cmd_parm->pbuf =3D NULL; - init_h2fwcmd_w_parm_no_rsp(ppscmd, pdrvextra_cmd_parm, GEN_CMD_CODE(_Set_= Drv_Extra)); + init_h2fwcmd_w_parm_no_rsp(ppscmd, pdrvextra_cmd_parm, _Set_Drv_Extra); =20 res =3D rtw_enqueue_cmd(pcmdpriv, ppscmd); =20 @@ -1550,7 +1491,7 @@ u8 rtw_chk_hi_queue_cmd(struct adapter *padapter) pdrvextra_cmd_parm->size =3D 0; pdrvextra_cmd_parm->pbuf =3D NULL; =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, GEN_CMD_CODE(_Set_Dr= v_Extra)); + init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, _Set_Drv_Extra); =20 res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); =20 @@ -1642,7 +1583,7 @@ u8 rtw_c2h_packet_wk_cmd(struct adapter *padapter, u8= *pbuf, u16 length) pdrvextra_cmd_parm->size =3D length; pdrvextra_cmd_parm->pbuf =3D pbuf; =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, GEN_CMD_CODE(_Set_Dr= v_Extra)); + init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, _Set_Drv_Extra); =20 res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); =20 @@ -1677,7 +1618,7 @@ u8 rtw_c2h_wk_cmd(struct adapter *padapter, u8 *c2h_e= vt) pdrvextra_cmd_parm->size =3D c2h_evt ? 16 : 0; pdrvextra_cmd_parm->pbuf =3D c2h_evt; =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, GEN_CMD_CODE(_Set_Dr= v_Extra)); + init_h2fwcmd_w_parm_no_rsp(ph2c, pdrvextra_cmd_parm, _Set_Drv_Extra); =20 res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); =20 diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme.c b/drivers/staging/rt= l8723bs/core/rtw_mlme.c index 5516593bc8ab..c10d93904437 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme.c @@ -1881,7 +1881,7 @@ signed int rtw_set_auth(struct adapter *adapter, stru= ct security_priv *psecurity =20 psetauthparm->mode =3D (unsigned char)psecuritypriv->dot11AuthAlgrthm; =20 - pcmd->cmdcode =3D _SetAuth_CMD_; + pcmd->cmdcode =3D _SetAuth; pcmd->parmbuf =3D (unsigned char *)psetauthparm; pcmd->cmdsz =3D (sizeof(struct setauth_parm)); pcmd->rsp =3D NULL; @@ -1952,7 +1952,7 @@ signed int rtw_set_key(struct adapter *adapter, struc= t security_priv *psecurityp goto exit; } =20 - pcmd->cmdcode =3D _SetKey_CMD_; + pcmd->cmdcode =3D _SetKey; pcmd->parmbuf =3D (u8 *)psetkeyparm; pcmd->cmdsz =3D (sizeof(struct setkey_parm)); pcmd->rsp =3D NULL; diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c b/drivers/stagin= g/rtl8723bs/core/rtw_mlme_ext.c index 5f00fe282d1b..573ec37e5554 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c @@ -4391,7 +4391,7 @@ void report_survey_event(struct adapter *padapter, un= ion recv_frame *precv_frame =20 INIT_LIST_HEAD(&pcmd_obj->list); =20 - pcmd_obj->cmdcode =3D GEN_CMD_CODE(_Set_MLME_EVT); + pcmd_obj->cmdcode =3D _Set_MLME_EVT; pcmd_obj->cmdsz =3D cmdsz; pcmd_obj->parmbuf =3D pevtcmd; =20 @@ -4444,7 +4444,7 @@ void report_surveydone_event(struct adapter *padapter) =20 INIT_LIST_HEAD(&pcmd_obj->list); =20 - pcmd_obj->cmdcode =3D GEN_CMD_CODE(_Set_MLME_EVT); + pcmd_obj->cmdcode =3D _Set_MLME_EVT; pcmd_obj->cmdsz =3D cmdsz; pcmd_obj->parmbuf =3D pevtcmd; =20 @@ -4489,7 +4489,7 @@ void report_join_res(struct adapter *padapter, int re= s) =20 INIT_LIST_HEAD(&pcmd_obj->list); =20 - pcmd_obj->cmdcode =3D GEN_CMD_CODE(_Set_MLME_EVT); + pcmd_obj->cmdcode =3D _Set_MLME_EVT; pcmd_obj->cmdsz =3D cmdsz; pcmd_obj->parmbuf =3D pevtcmd; =20 @@ -4538,7 +4538,7 @@ void report_wmm_edca_update(struct adapter *padapter) =20 INIT_LIST_HEAD(&pcmd_obj->list); =20 - pcmd_obj->cmdcode =3D GEN_CMD_CODE(_Set_MLME_EVT); + pcmd_obj->cmdcode =3D _Set_MLME_EVT; pcmd_obj->cmdsz =3D cmdsz; pcmd_obj->parmbuf =3D pevtcmd; =20 @@ -4584,7 +4584,7 @@ void report_del_sta_event(struct adapter *padapter, u= nsigned char *MacAddr, unsi =20 INIT_LIST_HEAD(&pcmd_obj->list); =20 - pcmd_obj->cmdcode =3D GEN_CMD_CODE(_Set_MLME_EVT); + pcmd_obj->cmdcode =3D _Set_MLME_EVT; pcmd_obj->cmdsz =3D cmdsz; pcmd_obj->parmbuf =3D pevtcmd; =20 @@ -4635,7 +4635,7 @@ void report_add_sta_event(struct adapter *padapter, u= nsigned char *MacAddr, int =20 INIT_LIST_HEAD(&pcmd_obj->list); =20 - pcmd_obj->cmdcode =3D GEN_CMD_CODE(_Set_MLME_EVT); + pcmd_obj->cmdcode =3D _Set_MLME_EVT; pcmd_obj->cmdsz =3D cmdsz; pcmd_obj->parmbuf =3D pevtcmd; =20 @@ -5085,7 +5085,7 @@ void survey_timer_hdl(struct timer_list *t) return; } =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, psurveyPara, GEN_CMD_CODE(_SiteSurvey)); + init_h2fwcmd_w_parm_no_rsp(ph2c, psurveyPara, _SiteSurvey); rtw_enqueue_cmd(pcmdpriv, ph2c); } } @@ -5696,7 +5696,7 @@ u8 chk_bmc_sleepq_cmd(struct adapter *padapter) goto exit; } =20 - init_h2fwcmd_w_parm_no_parm_rsp(ph2c, GEN_CMD_CODE(_ChkBMCSleepq)); + init_h2fwcmd_w_parm_no_parm_rsp(ph2c, _ChkBMCSleepq); =20 res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); =20 @@ -5734,7 +5734,7 @@ u8 set_tx_beacon_cmd(struct adapter *padapter) pmlmeinfo->hidden_ssid_mode); ptxBeacon_parm->network.ie_length +=3D len_diff; =20 - init_h2fwcmd_w_parm_no_rsp(ph2c, ptxBeacon_parm, GEN_CMD_CODE(_TX_Beacon)= ); + init_h2fwcmd_w_parm_no_rsp(ph2c, ptxBeacon_parm, _TX_Beacon); =20 res =3D rtw_enqueue_cmd(pcmdpriv, ph2c); =20 diff --git a/drivers/staging/rtl8723bs/include/rtw_cmd.h b/drivers/staging/= rtl8723bs/include/rtw_cmd.h index c4c3edee809d..6dea504cf70e 100644 --- a/drivers/staging/rtl8723bs/include/rtw_cmd.h +++ b/drivers/staging/rtl8723bs/include/rtw_cmd.h @@ -551,9 +551,6 @@ struct RunInThread_param { }; =20 =20 -#define GEN_CMD_CODE(cmd) cmd ## _CMD_ - - /* =20 Result: @@ -624,85 +621,80 @@ extern void rtw_setassocsta_cmdrsp_callback(struct ad= apter *padapter, struct c extern void rtw_getrttbl_cmdrsp_callback(struct adapter *padapter, struc= t cmd_obj *pcmd); =20 =20 -struct _cmd_callback { - u32 cmd_code; - void (*callback)(struct adapter *padapter, struct cmd_obj *cmd); -}; - enum { - GEN_CMD_CODE(_Read_MACREG), /*0*/ - GEN_CMD_CODE(_Write_MACREG), - GEN_CMD_CODE(_Read_BBREG), - GEN_CMD_CODE(_Write_BBREG), - GEN_CMD_CODE(_Read_RFREG), - GEN_CMD_CODE(_Write_RFREG), /*5*/ - GEN_CMD_CODE(_Read_EEPROM), - GEN_CMD_CODE(_Write_EEPROM), - GEN_CMD_CODE(_Read_EFUSE), - GEN_CMD_CODE(_Write_EFUSE), - - GEN_CMD_CODE(_Read_CAM), /*10*/ - GEN_CMD_CODE(_Write_CAM), - GEN_CMD_CODE(_setBCNITV), - GEN_CMD_CODE(_setMBIDCFG), - GEN_CMD_CODE(_JoinBss), /*14*/ - GEN_CMD_CODE(_DisConnect), /*15*/ - GEN_CMD_CODE(_CreateBss), - GEN_CMD_CODE(_SetOpMode), - GEN_CMD_CODE(_SiteSurvey), /*18*/ - GEN_CMD_CODE(_SetAuth), - - GEN_CMD_CODE(_SetKey), /*20*/ - GEN_CMD_CODE(_SetStaKey), - GEN_CMD_CODE(_SetAssocSta), - GEN_CMD_CODE(_DelAssocSta), - GEN_CMD_CODE(_SetStaPwrState), - GEN_CMD_CODE(_SetBasicRate), /*25*/ - GEN_CMD_CODE(_GetBasicRate), - GEN_CMD_CODE(_SetDataRate), - GEN_CMD_CODE(_GetDataRate), - GEN_CMD_CODE(_SetPhyInfo), - - GEN_CMD_CODE(_GetPhyInfo), /*30*/ - GEN_CMD_CODE(_SetPhy), - GEN_CMD_CODE(_GetPhy), - GEN_CMD_CODE(_readRssi), - GEN_CMD_CODE(_readGain), - GEN_CMD_CODE(_SetAtim), /*35*/ - GEN_CMD_CODE(_SetPwrMode), - GEN_CMD_CODE(_JoinbssRpt), - GEN_CMD_CODE(_SetRaTable), - GEN_CMD_CODE(_GetRaTable), - - GEN_CMD_CODE(_GetCCXReport), /*40*/ - GEN_CMD_CODE(_GetDTMReport), - GEN_CMD_CODE(_GetTXRateStatistics), - GEN_CMD_CODE(_SetUsbSuspend), - GEN_CMD_CODE(_SetH2cLbk), - GEN_CMD_CODE(_AddBAReq), /*45*/ - GEN_CMD_CODE(_SetChannel), /*46*/ - GEN_CMD_CODE(_SetTxPower), - GEN_CMD_CODE(_SwitchAntenna), - GEN_CMD_CODE(_SetCrystalCap), - GEN_CMD_CODE(_SetSingleCarrierTx), /*50*/ - - GEN_CMD_CODE(_SetSingleToneTx),/*51*/ - GEN_CMD_CODE(_SetCarrierSuppressionTx), - GEN_CMD_CODE(_SetContinuousTx), - GEN_CMD_CODE(_SwitchBandwidth), /*54*/ - GEN_CMD_CODE(_TX_Beacon), /*55*/ - - GEN_CMD_CODE(_Set_MLME_EVT), /*56*/ - GEN_CMD_CODE(_Set_Drv_Extra), /*57*/ - GEN_CMD_CODE(_Set_H2C_MSG), /*58*/ - - GEN_CMD_CODE(_SetChannelPlan), /*59*/ - - GEN_CMD_CODE(_SetChannelSwitch), /*60*/ - GEN_CMD_CODE(_TDLS), /*61*/ - GEN_CMD_CODE(_ChkBMCSleepq), /*62*/ - - GEN_CMD_CODE(_RunInThreadCMD), /*63*/ + _Read_MACREG, /*0*/ + _Write_MACREG, + _Read_BBREG, + _Write_BBREG, + _Read_RFREG, + _Write_RFREG, /*5*/ + _Read_EEPROM, + _Write_EEPROM, + _Read_EFUSE, + _Write_EFUSE, + + _Read_CAM, /*10*/ + _Write_CAM, + _setBCNITV, + _setMBIDCFG, + _JoinBss, /*14*/ + _DisConnect, /*15*/ + _CreateBss, + _SetOpMode, + _SiteSurvey, /*18*/ + _SetAuth, + + _SetKey, /*20*/ + _SetStaKey, + _SetAssocSta, + _DelAssocSta, + _SetStaPwrState, + _SetBasicRate, /*25*/ + _GetBasicRate, + _SetDataRate, + _GetDataRate, + _SetPhyInfo, + + _GetPhyInfo, /*30*/ + _SetPhy, + _GetPhy, + _readRssi, + _readGain, + _SetAtim, /*35*/ + _SetPwrMode, + _JoinbssRpt, + _SetRaTable, + _GetRaTable, + + _GetCCXReport, /*40*/ + _GetDTMReport, + _GetTXRateStatistics, + _SetUsbSuspend, + _SetH2cLbk, + _AddBAReq, /*45*/ + _SetChannel, /*46*/ + _SetTxPower, + _SwitchAntenna, + _SetCrystalCap, + _SetSingleCarrierTx, /*50*/ + + _SetSingleToneTx,/*51*/ + _SetCarrierSuppressionTx, + _SetContinuousTx, + _SwitchBandwidth, /*54*/ + _TX_Beacon, /*55*/ + + _Set_MLME_EVT, /*56*/ + _Set_Drv_Extra, /*57*/ + _Set_H2C_MSG, /*58*/ + + _SetChannelPlan, /*59*/ + + _SetChannelSwitch, /*60*/ + _TDLS, /*61*/ + _ChkBMCSleepq, /*62*/ + + _RunInThreadCMD, /*63*/ =20 MAX_H2CCMD }; --=20 2.53.0