On Tue, 2023-11-14 at 13:50 +0100, Jose Ignacio Tornos Martinez wrote: > Using generic ASIX Electronics Corp. AX88179 Gigabit Ethernet device, > the following test cycle has been implemented: > - power on > - check logs > - shutdown > - after detecting the system shutdown, disconnect power > - after approximately 60 seconds of sleep, power is restored > Running some cycles, sometimes error logs like this appear: > kernel: ax88179_178a 2-9:1.0 (unnamed net_device) (uninitialized): Failed to write reg index 0x0001: -19 > kernel: ax88179_178a 2-9:1.0 (unnamed net_device) (uninitialized): Failed to read reg index 0x0001: -19 > ... > These failed operation are happening during ax88179_reset execution, so > the initialization could not be correct. > > In order to avoid this, we need to increase the delay after reset and > clock initial operations. By using these larger values, many cycles > have been run and no failed operations appear. > > Reported-by: Herb Wei <weihao.bj@xxxxxxxxxxxxx> > Tested-by: Herb Wei <weihao.bj@xxxxxxxxxxxxx> > Signed-off-by: Jose Ignacio Tornos Martinez <jtornosm@xxxxxxxxxx> We need at least a suitable Fixes tag > --- > drivers/net/usb/ax88179_178a.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/usb/ax88179_178a.c b/drivers/net/usb/ax88179_178a.c > index aff39bf3161d..4ea0e155bb0d 100644 > --- a/drivers/net/usb/ax88179_178a.c > +++ b/drivers/net/usb/ax88179_178a.c > @@ -1583,11 +1583,11 @@ static int ax88179_reset(struct usbnet *dev) > > *tmp16 = AX_PHYPWR_RSTCTL_IPRL; > ax88179_write_cmd(dev, AX_ACCESS_MAC, AX_PHYPWR_RSTCTL, 2, 2, tmp16); > - msleep(200); > + msleep(500); Do you know if there is some status register you can query for 'reset completed'? or some official documentation you can quote for the above delay? Thanks! Paolo