Re: [PATCH v5 10/19] staging: r8188eu: remove the helpers of usb_write_port()

Larry Finger
2021-09-15T16:06:44Z

On 9/15/21 07:41, Fabio M. De Francesco wrote:
> From: Pavel Skripkin <paskripkin@gmail.com>
>
> Remove the unnecessary _rtw_write_port() and usb_write_port() and embed
> their code into the caller (i.e., rtw_write_port()).
>
> _rtw_write_port() is a mere redefinition of rtw_write_port() and it is
> unneeded. usb_write_port() was the only functions assigned to the
> (*_usb_write_port) pointer, so we can simply remove it and make a direct
> call.
>
> This patch is in preparation for the _io_ops structure removal.
>
> Co-developed-by: Fabio M. De Francesco <fmdefrancesco@gmail.com>
> Signed-off-by: Fabio M. De Francesco <fmdefrancesco@gmail.com>
> Signed-off-by: Pavel Skripkin <paskripkin@gmail.com>
> ---
> drivers/staging/r8188eu/core/rtw_io.c | 20 +------------------
> drivers/staging/r8188eu/hal/usb_ops_linux.c | 1 -
> drivers/staging/r8188eu/include/rtw_io.h | 4 +---
> .../staging/r8188eu/include/usb_ops_linux.h | 1 -
> .../staging/r8188eu/os_dep/usb_ops_linux.c | 3 +--
> 5 files changed, 3 insertions(+), 26 deletions(-)
>
> diff --git a/drivers/staging/r8188eu/core/rtw_io.c b/drivers/staging/r8188eu/core/rtw_io.c
> index ac72f894da75..3a5e9dbfcb12 100644
> --- a/drivers/staging/r8188eu/core/rtw_io.c
> +++ b/drivers/staging/r8188eu/core/rtw_io.c
> @@ -87,24 +87,6 @@ void _rtw_read_port_cancel(struct adapter *adapter)
> _read_port_cancel(pintfhdl);
> }
>
> -u32 _rtw_write_port(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem)
> -{
> - u32 (*_write_port)(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *pmem);
> - struct io_priv *pio_priv = &adapter->iopriv;
> - struct intf_hdl *pintfhdl = &pio_priv->intf;
> - u32 ret = _SUCCESS;
> -
> -
> -
> - _write_port = pintfhdl->io_ops._write_port;
> -
> - ret = _write_port(pintfhdl, addr, cnt, pmem);
> -
> -
> -
> - return ret;
> -}
> -
> u32 _rtw_write_port_and_wait(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem, int timeout_ms)
> {
> int ret = _SUCCESS;
> @@ -114,7 +96,7 @@ u32 _rtw_write_port_and_wait(struct adapter *adapter, u32 addr, u32 cnt, u8 *pme
> rtw_sctx_init(&sctx, timeout_ms);
> pxmitbuf->sctx = &sctx;
>
> - ret = _rtw_write_port(adapter, addr, cnt, pmem);
> + ret = rtw_write_port(adapter, addr, cnt, pmem);
>
> if (ret == _SUCCESS)
> ret = rtw_sctx_wait(&sctx);
> diff --git a/drivers/staging/r8188eu/hal/usb_ops_linux.c b/drivers/staging/r8188eu/hal/usb_ops_linux.c
> index a104e3fac7d1..4fea21c0f7af 100644
> --- a/drivers/staging/r8188eu/hal/usb_ops_linux.c
> +++ b/drivers/staging/r8188eu/hal/usb_ops_linux.c
> @@ -562,7 +562,6 @@ void rtl8188eu_set_intf_ops(struct _io_ops *pops)
> {
>
> memset((u8 *)pops, 0, sizeof(struct _io_ops));
> - pops->_write_port = &usb_write_port;
> pops->_read_port_cancel = &usb_read_port_cancel;
> pops->_write_port_cancel = &usb_write_port_cancel;
>
> diff --git a/drivers/staging/r8188eu/include/rtw_io.h b/drivers/staging/r8188eu/include/rtw_io.h
> index 600c6e7a375b..f2b1978b6e80 100644
> --- a/drivers/staging/r8188eu/include/rtw_io.h
> +++ b/drivers/staging/r8188eu/include/rtw_io.h
> @@ -262,7 +262,7 @@ int _rtw_write16_async(struct adapter *adapter, u32 addr, u16 val);
> int _rtw_write32_async(struct adapter *adapter, u32 addr, u32 val);
>
> void _rtw_write_mem(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem);
> -u32 _rtw_write_port(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem);
> +u32 rtw_write_port(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem);
> u32 _rtw_write_port_and_wait(struct adapter *adapter, u32 addr, u32 cnt,
> u8 *pmem, int timeout_ms);
> void _rtw_write_port_cancel(struct adapter *adapter);
> @@ -275,8 +275,6 @@ void _rtw_write_port_cancel(struct adapter *adapter);
> _rtw_write16_async((adapter), (addr), (val))
> #define rtw_write32_async(adapter, addr, val) \
> _rtw_write32_async((adapter), (addr), (val))
> -#define rtw_write_port(adapter, addr, cnt, mem) \
> - _rtw_write_port((adapter), (addr), (cnt), (mem))
> #define rtw_write_port_and_wait(adapter, addr, cnt, mem, timeout_ms) \
> _rtw_write_port_and_wait((adapter), (addr), (cnt), (mem), (timeout_ms))
> #define rtw_write_port_cancel(adapter) _rtw_write_port_cancel((adapter))
> diff --git a/drivers/staging/r8188eu/include/usb_ops_linux.h b/drivers/staging/r8188eu/include/usb_ops_linux.h
> index 37e0614fd15c..bdc596fe5854 100644
> --- a/drivers/staging/r8188eu/include/usb_ops_linux.h
> +++ b/drivers/staging/r8188eu/include/usb_ops_linux.h
> @@ -30,7 +30,6 @@ unsigned int ffaddr2pipehdl(struct dvobj_priv *pdvobj, u32 addr);
>
> void usb_read_port_cancel(struct intf_hdl *pintfhdl);
>
> -u32 usb_write_port(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *wmem);
> void usb_write_port_cancel(struct intf_hdl *pintfhdl);
>
> #endif
> diff --git a/drivers/staging/r8188eu/os_dep/usb_ops_linux.c b/drivers/staging/r8188eu/os_dep/usb_ops_linux.c
> index 9afb4df71969..36ef06f88fdd 100644
> --- a/drivers/staging/r8188eu/os_dep/usb_ops_linux.c
> +++ b/drivers/staging/r8188eu/os_dep/usb_ops_linux.c
> @@ -124,14 +124,13 @@ static void usb_write_port_complete(struct urb *purb, struct pt_regs *regs)
>
> }
>
> -u32 usb_write_port(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *wmem)
> +u32 rtw_write_port(struct adapter *padapter, u32 addr, u32 cnt, u8 *wmem)
> {
> unsigned long irqL;
> unsigned int pipe;
> int status;
> u32 ret = _FAIL;
> struct urb *purb = NULL;
> - struct adapter *padapter = (struct adapter *)pintfhdl->padapter;
> struct dvobj_priv *pdvobj = adapter_to_dvobj(padapter);
> struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
> struct xmit_buf *pxmitbuf = (struct xmit_buf *)wmem;
>

Patch 1 failed to apply to Greg's staging-testing branch. Particularly with the
changes with large number of patches, you need to remove the commits in
question, got a 'git pull', and then test that your changes still apply.

Larry