[U-Boot] [PATCH] eth: asix88179: Reset device during probe with DM_ETH enabled
Simon Glass
sjg at chromium.org
Tue Sep 6 14:46:45 CEST 2016
Hi,
On 6 September 2016 at 03:33, Nikolaus Schulz
<nikolaus.schulz at avionic-design.de> wrote:
> On Mon, Sep 05, 2016 at 07:04:49PM -0600, Simon Glass wrote:
>> On 30 August 2016 at 08:01, Nikolaus Schulz
>> <nikolaus.schulz at avionic-design.de> wrote:
>> > With the ethernet driver model enabled, reset the device before reading
>> > the MAC address, just like it's done for the non-device-model code path.
>> > This avoids a timeout when the interface is first used.
>> >
>> > Signed-off-by: Nikolaus Schulz <nikolaus.schulz at avionic-design.de>
>> > ---
>> > drivers/usb/eth/asix88179.c | 4 ++++
>> > 1 file changed, 4 insertions(+)
>> >
>> > diff --git a/drivers/usb/eth/asix88179.c b/drivers/usb/eth/asix88179.c
>> > index 7548269..0725940 100644
>> > --- a/drivers/usb/eth/asix88179.c
>> > +++ b/drivers/usb/eth/asix88179.c
>> > @@ -878,6 +878,10 @@ static int ax88179_eth_probe(struct udevice *dev)
>> > usb_dev = priv->ueth.pusb_dev;
>> > priv->maxpacketsize = usb_dev->epmaxpacketout[AX_ENDPOINT_OUT];
>> >
>> > + ret = asix_basic_reset(&priv->ueth, priv);
>> > + if (ret)
>> > + return ret;
>> > +
>> > /* Get the MAC address */
>> > ret = asix_read_mac(&priv->ueth, pdata->enetaddr);
>> > if (ret)
>>
>> How come this doesn't happen in ax88179_eth_start()?
>
> In fact I first had put it there, but that was basically killing the
> ethernet. And having it in the probe function matches the non-DM code
> path, which has it in ax88179_eth_get_info.
OK thanks.
Reviewed-by: Simon Glass <sjg at chromium.org>
>
> Nikolaus
More information about the U-Boot
mailing list