On 18 February 2016 at 22:11, Shivamurthy Shastri < [email protected]> wrote:
> Adding Ruiyu Ni > > -- > > Thanks and Regards, > > Shivamurthy Shastri, > > M: +919742508553, IRC: shivamurthy, > *Linaro.org* |Open Source Software for ARM SOCs > > > On 18 February 2016 at 16:50, Shivamurthy Shastri < > [email protected]> wrote: > >> Hi All, >> >> Please let me know your opinion about this patch. >> >> -- >> >> Thanks and Regards, >> >> Shivamurthy Shastri, >> >> M: +919742508553, IRC: shiva_murthy, >> *Linaro.org* |Open Source Software for ARM SOCs >> >> >> ---------- Forwarded message ---------- >> From: Shivamurthy Shastri <[email protected]> >> Date: 10 February 2016 at 19:40 >> Subject: [edk2] [PATCH] Ax88772b: support for multiple dongles and chips >> To: [email protected] >> Cc: [email protected], Shivamurthy Shastri < >> [email protected]> >> >> >> Driver code is modified to support multiple ethernet dongles, which uses >> similar ASIX chips. Also, it can be used for multiple ASIX chips with >> similar register map. >> >> Enabled support for Apple Ethernet Adapter >> >> Contributed-under: TianoCore Contribution Agreement 1.0 >> Signed-off-by: Shivamurthy Shastri <[email protected]> >> --- >> .../Bus/Usb/UsbNetworking/Ax88772b/Ax88772.h | 13 ++++++++- >> .../Bus/Usb/UsbNetworking/Ax88772b/DriverBinding.c | 33 >> +++++++++++++--------- >> 2 files changed, 32 insertions(+), 14 deletions(-) >> >> diff --git a/OptionRomPkg/Bus/Usb/UsbNetworking/Ax88772b/Ax88772.h >> b/OptionRomPkg/Bus/Usb/UsbNetworking/Ax88772b/Ax88772.h >> index ab75ec2..816f2b2 100644 >> --- a/OptionRomPkg/Bus/Usb/UsbNetworking/Ax88772b/Ax88772.h >> +++ b/OptionRomPkg/Bus/Usb/UsbNetworking/Ax88772b/Ax88772.h >> @@ -297,12 +297,23 @@ >> #define AN_10_HDX 0x0020 ///< 1 = 10BASE-T >> support >> #define AN_CSMA_CD 0x0001 ///< 1 = IEEE 802.3 >> CSMA/CD support >> >> - >> +/* asix_flags defines */ >> +#define FLAG_NONE 0 >> +#define FLAG_TYPE_AX88172 (1U << 0) >> +#define FLAG_TYPE_AX88772 (1U << 1) >> +#define FLAG_TYPE_AX88772B (1U << 2) >> +#define FLAG_EEPROM_MAC (1U << 3) /* initial mac address in >> eeprom */ >> >> >> >> //------------------------------------------------------------------------------ >> // Data Types >> >> >> //------------------------------------------------------------------------------ >> >> +struct ASIX_DONGLE { >> + UINT16 VendorId; >> + UINT16 ProductId; >> + INT32 Flags; >> +}; >> + >> /** >> Ethernet header layout >> >> diff --git a/OptionRomPkg/Bus/Usb/UsbNetworking/Ax88772b/DriverBinding.c >> b/OptionRomPkg/Bus/Usb/UsbNetworking/Ax88772b/DriverBinding.c >> index 3b73040..6a10cbf 100644 >> --- a/OptionRomPkg/Bus/Usb/UsbNetworking/Ax88772b/DriverBinding.c >> +++ b/OptionRomPkg/Bus/Usb/UsbNetworking/Ax88772b/DriverBinding.c >> @@ -14,6 +14,13 @@ >> >> #include "Ax88772.h" >> >> +struct ASIX_DONGLE ASIX_DONGLES[] = { >> + { 0x05AC, 0x1402, FLAG_TYPE_AX88772 }, /* Apple USB Ethernet >> Adapter */ >> + /* ASIX 88772B */ >> + { 0x0B95, 0x772B, FLAG_TYPE_AX88772B | FLAG_EEPROM_MAC }, >> + { 0x0000, 0x0000, FLAG_NONE } /* END - Do not remove */ >> +}; >> + >> /** >> Verify the controller type >> >> @@ -36,6 +43,8 @@ DriverSupported ( >> EFI_USB_DEVICE_DESCRIPTOR Device; >> EFI_USB_IO_PROTOCOL * pUsbIo; >> EFI_STATUS Status; >> + UINT32 i; >> + >> // >> // Connect to the USB stack >> // >> @@ -60,19 +69,17 @@ DriverSupported ( >> else { >> // >> // Validate the adapter >> - // >> - if ( VENDOR_ID == Device.IdVendor ) { >> - >> - if (PRODUCT_ID == Device.IdProduct) { >> - DEBUG ((EFI_D_INFO, "Found the AX88772B\r\n")); >> - } >> - else { >> - Status = EFI_UNSUPPORTED; >> - } >> - } >> - else { >> - Status = EFI_UNSUPPORTED; >> - } >> + // >> + for (i = 0; ASIX_DONGLES[i].VendorId != 0; i++) { >> + if (ASIX_DONGLES[i].VendorId == Device.IdVendor && >> + ASIX_DONGLES[i].ProductId == Device.IdProduct) { >> + DEBUG ((EFI_D_INFO, "Found the AX88772B\r\n")); >> + break; >> + } >> + } >> + >> + if (ASIX_DONGLES[i].VendorId == 0) >> + Status = EFI_UNSUPPORTED; >> } >> >> // >> -- >> 1.9.1 >> >> >> > Hi Ruiyu Ni, Please look into the patch. Thanks, Shiva _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

