On 08/03/2016 07:32 AM, Alban Bedel wrote: > Commit 147271209a9d ("net: asix: fix operation without eeprom") > added a special handling for ASIX 88772B that enable another > type of header. This break the driver in DM mode as the extra handling > needed in the receive path is missing.
So add the extra handling ? > However this new header mode is not required and only seems to > increase the code complexity, so this patch revert this part of > commit 147271209a9d. Why is it not required ? > Change-Id: I7edc89f5714ead60e5204340ba05caf21b155593 > Fixes: 147271209a9d ("net: asix: fix operation without eeprom") > Signed-off-by: Alban Bedel <alban.be...@avionic-design.de> > --- > drivers/usb/eth/asix.c | 22 +++------------------- > 1 file changed, 3 insertions(+), 19 deletions(-) > > diff --git a/drivers/usb/eth/asix.c b/drivers/usb/eth/asix.c > index ad083cf8ae4a..1c6e967db1a0 100644 > --- a/drivers/usb/eth/asix.c > +++ b/drivers/usb/eth/asix.c > @@ -67,11 +67,8 @@ > AX_MEDIUM_AC | AX_MEDIUM_RE) > > /* AX88772 & AX88178 RX_CTL values */ > -#define AX_RX_CTL_RH2M 0x0200 /* 32-bit aligned RX IP header > */ > -#define AX_RX_CTL_RH1M 0x0100 /* Enable RX header format type > 1 */ > -#define AX_RX_CTL_SO 0x0080 > -#define AX_RX_CTL_AB 0x0008 > -#define AX_RX_HEADER_DEFAULT (AX_RX_CTL_RH1M | AX_RX_CTL_RH2M) > +#define AX_RX_CTL_SO 0x0080 > +#define AX_RX_CTL_AB 0x0008 > > #define AX_DEFAULT_RX_CTL \ > (AX_RX_CTL_SO | AX_RX_CTL_AB) > @@ -98,8 +95,6 @@ > #define FLAG_TYPE_AX88772B (1U << 2) > #define FLAG_EEPROM_MAC (1U << 3) /* initial mac address in > eeprom */ > > -#define ASIX_USB_VENDOR_ID 0x0b95 > -#define AX88772B_USB_PRODUCT_ID 0x772b > > /* driver private */ > struct asix_private { > @@ -431,15 +426,10 @@ static int asix_init_common(struct ueth_data *dev, > uint8_t *enetaddr) > int timeout = 0; > #define TIMEOUT_RESOLUTION 50 /* ms */ > int link_detected; > - u32 ctl = AX_DEFAULT_RX_CTL; > > debug("** %s()\n", __func__); > > - if ((dev->pusb_dev->descriptor.idVendor == ASIX_USB_VENDOR_ID) && > - (dev->pusb_dev->descriptor.idProduct == AX88772B_USB_PRODUCT_ID)) > - ctl |= AX_RX_HEADER_DEFAULT; > - > - if (asix_write_rx_ctl(dev, ctl) < 0) > + if (asix_write_rx_ctl(dev, AX_DEFAULT_RX_CTL) < 0) > goto out_err; > > if (asix_write_hwaddr_common(dev, enetaddr) < 0) > @@ -572,12 +562,6 @@ static int asix_recv(struct eth_device *eth) > return -1; > } > > - if ((dev->pusb_dev->descriptor.idVendor == > - ASIX_USB_VENDOR_ID) && > - (dev->pusb_dev->descriptor.idProduct == > - AX88772B_USB_PRODUCT_ID)) > - buf_ptr += 2; > - > /* Notify net stack */ > net_process_received_packet(buf_ptr + sizeof(packet_len), > packet_len); > -- Best regards, Marek Vasut _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot