Re: [PATCH v3 1/3] staging: r8188eu: remove _io_ops structure

From: Greg Kroah-Hartman
Date: Mon Sep 06 2021 - 10:08:30 EST


On Mon, Sep 06, 2021 at 05:01:09PM +0300, Pavel Skripkin wrote:
> On 9/6/21 4:56 PM, Greg Kroah-Hartman wrote:
> > On Sun, Sep 05, 2021 at 12:00:46AM +0200, Fabio M. De Francesco wrote:
> > > -void _rtw_read_mem(struct adapter *adapter, u32 addr, u32 cnt, u8 *pmem)
> > > -{
> > > - void (*_read_mem)(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *pmem);
> > > - struct io_priv *pio_priv = &adapter->iopriv;
> > > - struct intf_hdl *pintfhdl = &pio_priv->intf;
> > > -
> > > -
> > > - if (adapter->bDriverStopped || adapter->bSurpriseRemoved)
> > > - return;
> > > - _read_mem = pintfhdl->io_ops._read_mem;
> > > - _read_mem(pintfhdl, addr, cnt, pmem);
> > > -
> > > -}
> >
> > This is odd, in that it resolves down to usb_read_mem which does
> > nothing at all.
> >
> > And then no one calls this at all either?
> >
>
> Yep, there is no caller of this function... Idk why this was added :)

PCI devices require a read after a write to ensure that the write has
completed. Odds are this is left over from that.

thanks,

greg k-h