Solution for USB Ethernet Dlink DUB-E100 linux driver

We have slackware-13.37 32 bit with kernel 2.6.37.6-smp
Also we have two types of DUB-E100, "big" and "small" about it phisical sizes. Where are no problems with a "big" under linux but problem with a "small" version.
First we do "modprobe asix" then insert "small" version in usb and see in logs

Sep  3 23:28:13 darkstar kernel: [    5.662023] usb 1-4: Product: DUB-E100
Sep  3 23:28:13 darkstar kernel: [    5.662108] usb 1-4: Manufacturer: D-Link
Sep  3 23:28:13 darkstar kernel: [    5.662188] usb 1-4: SerialNumber: D71A51
Sep  3 23:28:13 darkstar kernel: [    5.764888] usb 1-6: new high speed USB device using ehci_hcd and address 4
Sep  3 23:28:13 darkstar kernel: [    5.892379] usb 1-6: New USB device found, idVendor=2001, idProduct=1a02
Sep  3 23:28:13 darkstar kernel: [    5.892465] usb 1-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3

and nothing more. No new eth devices.

a lsusb shows "Bus 001 Device 002: ID 2001:1a02 D-Link Corp."

A solution:
Download from internet or get from product CD the file DUB_E100_Linux_v420.zip, unpack it.
edit /usr/src/linux/drivers/net/usb/asix.c

--- DUB_E100_Linux_v420/asix.c  2011-09-19 14:48:58.000000000 +0400
+++ asix.c      2012-09-03 22:21:33.426000708 +0400
@@ -3412,6 +3412,10 @@
        USB_DEVICE (0x2001, 0x1a00),
        .driver_info =  (unsigned long) &dlink_dub_e100_info,
 }, {
+       // DLink DUB-E100
+       USB_DEVICE (0x2001, 0x1a02),
+       .driver_info =  (unsigned long) &ax88772b_info,
+}, {
        // DLink DUB-E100B
        USB_DEVICE (0x2001, 0x3c05),
        .driver_info =  (unsigned long) &dlink_dub_e100b_info,

make modules && make modules_install && modprobe asix

Also if you're using a kernel 2.6.37.6-smp from slackware distribution you can download asix.ko, place it to /lib/modules/2.6.37.6-smp/kernel/drivers/net/usb/asix.ko ,
and do depmod -a and modprobe asix.

Enjoy!