Skip to content

Commit e2ca90c

Browse files
FreddyXindavem330
authored andcommitted
ax88179_178a: ASIX AX88179_178A USB 3.0/2.0 to gigabit ethernet adapter driver
This is a resubmission. Added kfree() in ax88179_get_eeprom to prevent memory leakage. Modified "__le16 rxctl" to "u16 rxctl" in "struct ax88179_data" and removed pointless casts. Removed asix_init and asix_exit functions and added "module_usb_driver(ax88179_178a_driver)". Fixed endianness issue on big endian systems and verified this driver on iBook G4. Removed steps that change net->features in ax88179_set_features function. Added "const" to ethtool_ops structure and fixed the coding style of AX88179_BULKIN_SIZE array. Fixed the issue that the default MTU is not 1500. Added ax88179_change_mtu function and enabled the hardware jumbo frame function to support an MTU higher than 1500. Fixed indentation and empty line coding style errors. The _nopm version usb functions were added to access register in suspend and resume functions. Serveral variables allocted dynamically were removed and replaced by stack variables. ax88179_get_eeprom were modified from asix_get_eeprom in asix_common. This patch adds a driver for ASIX's AX88179 family of USB 3.0/2.0 to gigabit ethernet adapters. It's based on the AX88xxx driver but the usb commands used to access registers for AX88179 are completely different. This driver had been verified on x86 system with AX88179/AX88178A and Sitcomm LN-032 USB dongles. Signed-off-by: Freddy Xin <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 81ce0db commit e2ca90c

File tree

3 files changed

+1467
-0
lines changed

3 files changed

+1467
-0
lines changed

drivers/net/usb/Kconfig

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,24 @@ config USB_NET_AX8817X
156156
This driver creates an interface named "ethX", where X depends on
157157
what other networking devices you have in use.
158158

159+
config USB_NET_AX88179_178A
160+
tristate "ASIX AX88179/178A USB 3.0/2.0 to Gigabit Ethernet"
161+
depends on USB_USBNET
162+
select CRC32
163+
select PHYLIB
164+
default y
165+
help
166+
This option adds support for ASIX AX88179 based USB 3.0/2.0
167+
to Gigabit Ethernet adapters.
168+
169+
This driver should work with at least the following devices:
170+
* ASIX AX88179
171+
* ASIX AX88178A
172+
* Sitcomm LN-032
173+
174+
This driver creates an interface named "ethX", where X depends on
175+
what other networking devices you have in use.
176+
159177
config USB_NET_CDCETHER
160178
tristate "CDC Ethernet support (smart devices such as cable modems)"
161179
depends on USB_USBNET

drivers/net/usb/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ obj-$(CONFIG_USB_RTL8150) += rtl8150.o
99
obj-$(CONFIG_USB_HSO) += hso.o
1010
obj-$(CONFIG_USB_NET_AX8817X) += asix.o
1111
asix-y := asix_devices.o asix_common.o ax88172a.o
12+
obj-$(CONFIG_USB_NET_AX88179_178A) += ax88179_178a.o
1213
obj-$(CONFIG_USB_NET_CDCETHER) += cdc_ether.o
1314
obj-$(CONFIG_USB_NET_CDC_EEM) += cdc_eem.o
1415
obj-$(CONFIG_USB_NET_DM9601) += dm9601.o

0 commit comments

Comments
 (0)