On Di, 2018-10-09 at 15:27 +0200, Bjørn Mork wrote:
> Oliver Neukum <[email protected]> writes:
>
> > On Fr, 2018-10-05 at 10:24 +0000, Igor Russkikh wrote:
> > > From: Dmitry Bezrukov <[email protected]>
> > >
> > > Reset, stop callbacks, driver unbind callback.
> > > More register defines required for these callbacks.
> > >
> > > Signed-off-by: Dmitry Bezrukov <[email protected]>
> > > Signed-off-by: Igor Russkikh <[email protected]>
> > > ---
> > > drivers/net/usb/aqc111.c | 48 ++++++++++++++++++++++
> > > drivers/net/usb/aqc111.h | 101
> > > +++++++++++++++++++++++++++++++++++++++++++++++
> > > 2 files changed, 149 insertions(+)
> > >
> > > diff --git a/drivers/net/usb/aqc111.c b/drivers/net/usb/aqc111.c
> > > index 7f3e5a615750..22bb259d71fb 100644
> > > --- a/drivers/net/usb/aqc111.c
> > > +++ b/drivers/net/usb/aqc111.c
> > > @@ -169,12 +169,60 @@ static int aqc111_bind(struct usbnet *dev, struct
> > > usb_interface *intf)
> > >
> > > static void aqc111_unbind(struct usbnet *dev, struct usb_interface *intf)
> > > {
> > > + u8 reg8;
> > > + u16 reg16;
> > > +
> > > + /* Force bz */
> > > + reg16 = SFR_PHYPWR_RSTCTL_BZ;
> > > + aqc111_write_cmd_nopm(dev, AQ_ACCESS_MAC, SFR_PHYPWR_RSTCTL,
> > > + 2, 2, ®16);
> >
> > No, I am sorry, you are doing DMA on the kernel stack. That is not
> > allowed. These functions will all have to be fixed.
>
> Huh? No, he doesn't. That's the whole point with
> usbnet_read_cmd_nopm(), isn't it?
Right. Too many indirections for me.
Please disregard my comment.
Regards
Oliver