From: Philipp Hortmann <philipp.g.hortmann@gmail.com>
To: Michael Straube <straube.linux@gmail.com>, gregkh@linuxfoundation.org
Cc: Larry.Finger@lwfinger.net, phil@philpotter.co.uk,
linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] staging: r8188eu: make c2h_evt_read() static
Date: Fri, 9 Sep 2022 19:39:32 +0200 [thread overview]
Message-ID: <d8e32b2a-380c-842b-cd9e-2da1bff1909b@gmail.com> (raw)
In-Reply-To: <20220909100232.8305-1-straube.linux@gmail.com>
On 9/9/22 12:02, Michael Straube wrote:
> The function c2h_evt_read() is only used in rtw_cmd.c.
> Make it static.
>
> This addresses the TODO item:
> * Remove the HAL layer and migrate its functionality into the relevant
> parts of the driver.
>
> Signed-off-by: Michael Straube <straube.linux@gmail.com>
> ---
> drivers/staging/r8188eu/core/rtw_cmd.c | 60 +++++++++++++++++++++
> drivers/staging/r8188eu/hal/hal_com.c | 63 -----------------------
> drivers/staging/r8188eu/include/hal_com.h | 2 -
> 3 files changed, 60 insertions(+), 65 deletions(-)
>
> diff --git a/drivers/staging/r8188eu/core/rtw_cmd.c b/drivers/staging/r8188eu/core/rtw_cmd.c
> index 4be83807405c..ca1f2cc52470 100644
> --- a/drivers/staging/r8188eu/core/rtw_cmd.c
> +++ b/drivers/staging/r8188eu/core/rtw_cmd.c
> @@ -1277,6 +1277,66 @@ u8 rtw_c2h_wk_cmd(struct adapter *padapter, u8 *c2h_evt)
> return res;
> }
>
> +/* C2H event format:
> + * Field TRIGGER CONTENT CMD_SEQ CMD_LEN CMD_ID
> + * BITS [127:120] [119:16] [15:8] [7:4] [3:0]
> + */
> +static s32 c2h_evt_read(struct adapter *adapter, u8 *buf)
> +{
> + s32 ret = _FAIL;
> + struct c2h_evt_hdr *c2h_evt;
> + int i;
> + u8 trigger;
> +
> + if (!buf)
> + goto exit;
> +
> + ret = rtw_read8(adapter, REG_C2HEVT_CLEAR, &trigger);
> + if (ret)
> + return _FAIL;
> +
> + if (trigger == C2H_EVT_HOST_CLOSE)
> + goto exit; /* Not ready */
> + else if (trigger != C2H_EVT_FW_CLOSE)
> + goto clear_evt; /* Not a valid value */
> +
> + c2h_evt = (struct c2h_evt_hdr *)buf;
> +
> + memset(c2h_evt, 0, 16);
> +
> + ret = rtw_read8(adapter, REG_C2HEVT_MSG_NORMAL, buf);
> + if (ret) {
> + ret = _FAIL;
> + goto clear_evt;
> + }
> +
> + ret = rtw_read8(adapter, REG_C2HEVT_MSG_NORMAL + 1, buf + 1);
> + if (ret) {
> + ret = _FAIL;
> + goto clear_evt;
> + }
> + /* Read the content */
> + for (i = 0; i < c2h_evt->plen; i++) {
> + ret = rtw_read8(adapter, REG_C2HEVT_MSG_NORMAL +
> + sizeof(*c2h_evt) + i, c2h_evt->payload + i);
> + if (ret) {
> + ret = _FAIL;
> + goto clear_evt;
> + }
> + }
> +
> + ret = _SUCCESS;
> +
> +clear_evt:
> + /* Clear event to notify FW we have read the command.
> + * If this field isn't clear, the FW won't update the next
> + * command message.
> + */
> + rtw_write8(adapter, REG_C2HEVT_CLEAR, C2H_EVT_HOST_CLOSE);
> +exit:
> + return ret;
> +}
> +
> static void c2h_evt_hdl(struct adapter *adapter, struct c2h_evt_hdr *c2h_evt, c2h_id_filter filter)
> {
> u8 buf[16];
> diff --git a/drivers/staging/r8188eu/hal/hal_com.c b/drivers/staging/r8188eu/hal/hal_com.c
> index 8416a65ba47b..33967eb3c0d0 100644
> --- a/drivers/staging/r8188eu/hal/hal_com.c
> +++ b/drivers/staging/r8188eu/hal/hal_com.c
> @@ -137,66 +137,3 @@ void HalSetBrateCfg(struct adapter *adapt, u8 *brates, u16 *rate_cfg)
> }
> }
> }
> -
> -/*
> -* C2H event format:
> -* Field TRIGGER CONTENT CMD_SEQ CMD_LEN CMD_ID
> -* BITS [127:120] [119:16] [15:8] [7:4] [3:0]
> -*/
> -
> -s32 c2h_evt_read(struct adapter *adapter, u8 *buf)
> -{
> - s32 ret = _FAIL;
> - struct c2h_evt_hdr *c2h_evt;
> - int i;
> - u8 trigger;
> -
> - if (!buf)
> - goto exit;
> -
> - ret = rtw_read8(adapter, REG_C2HEVT_CLEAR, &trigger);
> - if (ret)
> - return _FAIL;
> -
> - if (trigger == C2H_EVT_HOST_CLOSE)
> - goto exit; /* Not ready */
> - else if (trigger != C2H_EVT_FW_CLOSE)
> - goto clear_evt; /* Not a valid value */
> -
> - c2h_evt = (struct c2h_evt_hdr *)buf;
> -
> - memset(c2h_evt, 0, 16);
> -
> - ret = rtw_read8(adapter, REG_C2HEVT_MSG_NORMAL, buf);
> - if (ret) {
> - ret = _FAIL;
> - goto clear_evt;
> - }
> -
> - ret = rtw_read8(adapter, REG_C2HEVT_MSG_NORMAL + 1, buf + 1);
> - if (ret) {
> - ret = _FAIL;
> - goto clear_evt;
> - }
> - /* Read the content */
> - for (i = 0; i < c2h_evt->plen; i++) {
> - ret = rtw_read8(adapter, REG_C2HEVT_MSG_NORMAL +
> - sizeof(*c2h_evt) + i, c2h_evt->payload + i);
> - if (ret) {
> - ret = _FAIL;
> - goto clear_evt;
> - }
> - }
> -
> - ret = _SUCCESS;
> -
> -clear_evt:
> - /*
> - * Clear event to notify FW we have read the command.
> - * If this field isn't clear, the FW won't update the next
> - * command message.
> - */
> - rtw_write8(adapter, REG_C2HEVT_CLEAR, C2H_EVT_HOST_CLOSE);
> -exit:
> - return ret;
> -}
> diff --git a/drivers/staging/r8188eu/include/hal_com.h b/drivers/staging/r8188eu/include/hal_com.h
> index e8007295cd79..cd3f845e146a 100644
> --- a/drivers/staging/r8188eu/include/hal_com.h
> +++ b/drivers/staging/r8188eu/include/hal_com.h
> @@ -143,6 +143,4 @@ u8 MRateToHwRate(u8 rate);
>
> void HalSetBrateCfg(struct adapter *Adapter, u8 *mBratesOS, u16 *pBrateCfg);
>
> -s32 c2h_evt_read(struct adapter *adapter, u8 *buf);
> -
> #endif /* __HAL_COMMON_H__ */
Tested-by: Philipp Hortmann <philipp.g.hortmann@gmail.com> # Edimax N150
prev parent reply other threads:[~2022-09-09 17:39 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-09 10:02 [PATCH] staging: r8188eu: make c2h_evt_read() static Michael Straube
2022-09-09 17:39 ` Philipp Hortmann [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d8e32b2a-380c-842b-cd9e-2da1bff1909b@gmail.com \
--to=philipp.g.hortmann@gmail.com \
--cc=Larry.Finger@lwfinger.net \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-staging@lists.linux.dev \
--cc=phil@philpotter.co.uk \
--cc=straube.linux@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox