Need new ASIX USB Ethernet module

Problems with packages? Post here, using [tags] of the package name.

Need new ASIX USB Ethernet module

Postby jeajea » Thu May 26, 2011 5:11 pm

.Will someone please update ASIX USB Ethernet module. The source can be found here.

http://www.asix.com.tw/download.php?sub ... PItemID=84

It appears that different venders use different PHY chips with the ASIX AX88178 USB network chip. With the current driver it appears that the transmit section on my Monoprice ASIX adapter isn’t being setup properly. At first I thought the adapter was bad because it also had problems in Windows. However, the Windows error was a configuration problem and my ASIX adapter now runs with no problems in windows.

viewtopic.php?f=6&t=193

The readme file
$this->bbcode_second_pass_code('', '
[root@DS102 AX88772B_772A_760_772_178_LINUX_Driver_v4.1.0_Source]# cat readme
============================================================================
ASIX AX88178 USB 2.0 Gigabit Ethernet Network Adapter
ASIX AX88772 USB 2.0 Fast Ethernet Network Adapter
ASIX AX88772A USB 2.0 Fast Ethernet Network Adapter
ASIX AX88760 USB 2.0 MTT HUB and USB 2.0 to Fast Ethernet Combo Controller
ASIX AX88772B USB 2.0 Fast Ethernet Network Adapter
Driver Compilation & Configuration on the Linux
============================================================================

This driver has been verified on kernel versions from 2.6.14 to 2.6.38.

==================
Revision History :
==================
Version 4.1.0 Mar. 15, 2011
* Added more vendor and product IDs.

Version 4.0.0 Feb. 22, 2011
* Integrated usbnet.c into this driver.

Version 3.6.0 Oct. 28, 2010
* Added conditional compilation flag "AX_FORCE_BUFF_ALIGN" for double word
alignment.
* Added conditional compilation flag "AX_772BHW_CHECKSUM" for IP header double
word alignment.
* Refined whole USB buffers with double word alignment.

Version 3.5.0 Sep. 15, 2010
* Corrected the parameter "supports_gmii" of AX88178 MII structure.
* Corrected AX88178 PHY media mode check function.

Version 3.4.0 Aug. 16, 2010
* Fixups for compilation issues in kernel version 2.6.35.
* Corrected PHY reset sequence for MARVELL M88E1111 RevB2.

Version 3.3.0 Aug. 03, 2010
* Added Vitess PHY 8601 support.
* Refined AX88178 PHY initialization functions.
* Fixups for compilation issues in kernel version 2.6.29.
* Fixups for rx_fixup and tx_fixup functions.
* Fixups for AX88772B initialization function.
* Added validation of necessary header file "usbnet.h" in Makefile.

Version 3.2.0 June. 03, 2010
* Fixups for compilation issues in kernel version 2.6.15.

Version 3.1.0 May. 18, 2010
* Corrected procedures of reading EEPROM data.

Version 3.0.0 May. 11, 2010
* Added to support AX88772B.
* Corrected initialization of Realtek PHY.
* Added to support MAC address replacement.

Version 2.6.0 Dec. 18, 2009
* Added AX88772A Power Saving Setting by EEPROM offset 17h support.
* Added AX88772 Default Power Saving function support.

Version 2.5.0 Dec. 01, 2009
* Corrected Realtek PHY reset function.

Version 2.4.0 Nov. 26, 2009
* Added to reset Realtek PHY via GPIO2 at initialization stage.
* Added to print information of driver version at initialization stage.
* Fixups for compilation issues in kernel version 2.6.30.

Version 2.3.0 Oct. 14, 2009
* Corrected LED setting for Realtek 8211CL PHY.

Version 2.2.0 Sep. 18, 2009
* Fixups for compilation issues in kernel version 2.6.19 or earlier.
* Increased AX88178 receive buffer size for performance improvement.

Version 2.1.0 Sep. 14, 2009
* Added Realtek PHY support.
* Added EDIMAX LED support.

Version 2.0.0 July. 02, 2009
* Modified PHY power process routine from common work queue to the
driver specific work queue.
* Fixups for compilation issues in kernel version 2.6.20.

Version 1.9.0 May. 14, 2009
* Fixups for packet transmission on big-endian platform.

Version 1.8.0 Apr. 27, 2009
* Chenged number rule from Major.Special.Minor to Major.Minor.Special .
* Fixups PHY power down and power up sequence.

Version 1.0.7 Mar. 17, 2009
* Added PHY power down and power up sequence.

Version 1.0.6 Nov. 06, 2008
* Fixups for compilation issues in kernel versions 2.6.25 and later.

Version 1.0.5 Sep. 26, 2007
* Added to support AX88772A
* Fixups for compilation issues in kernel version 2.6.22.

Version 1.0.4 Sep. 03, 2007
* Corrected the default value of receive filter.
* Corrected the value of IPG register.

Version 1.0.3 Oct. 23, 2006
* Fixed broken initialization on big-endian.

Version 1.0.2 Sep. 22, 2006
* Fixed bug in function set_media.

Version 1.0.1 Sep. 20, 2006
* Fixups for compilation issues in newest kernel version 2.6.16.
* External PHY support.

Version 1.0.0 Dec. 20, 2005
* New release.

================
Prerequisites
================

Prepare to build the driver, you need the Linux kernel sources installed on the
build machine, and make sure that the version of the running kernel must match
the installed kernel sources. If you don't have the kernel sources, you can get
it from www.kernel.org or contact to your Linux distributor. If you don't know
how to do, please refer to KERNEL-HOWTO.

Note: Please make sure the kernel is built with one of the "Support for
Host-side, EHCI, OHCI, or UHCI" option support.


===========================
Conditional Compilation Flag
===========================
[AX_FORCE_BUFF_ALIGN]
Description:
There are alignment issues of USB buffer in some USB host controllers.
Turn on this flag if the implementation of your USB host controller
cannot handle non-double word aligned buffer.
When turn on this flag, driver will fixup egress packet aligned on double
word boundary before deliver to USB host controller.
Setting:
1 -> Enable TX buffers forced on double word alignment.
0 -> Disable TX buffers forced on double word alignment.
Default:
0


================
Getting Start
================

1. Extract the compressed driver source file to your template directory by the
following command:

[root@localhost template]# tar -xf DRIVER_SOURCE_PACKAGE.tar.bz2

2. Now, the driver source files should be extracted under the current directory.
Executing the following command to compile the driver:

[root@localhost template]# make

3. If the compilation is well, the asix.ko will be created under the current
directory.

4. If you want to use modprobe command to mount the driver, executing the
following command to install the driver into your Linux:

[root@localhost template]# make install


================
Usage
================

1. If you want to load the driver manually, go to the driver directory and
execute the following commands:

[root@localhost template]# insmod asix.ko

2. If you had installed the driver during driver compilation, then you can use
the following command to load the driver automatically.

[root@localhost anywhere]# modprobe asix

If you want to unload the driver, just executing the following command:

[root@localhost anywhere]# rmmod asix

[
')
Jim Anderson
3 Dockstars, 3 Pogoplug V2 and a Zyxel NSA325
Treasure Island, Fl
jeajea
 
Posts: 121
Joined: Wed Aug 25, 2010 4:00 pm

Re: Need new ASIX USB Ethernet module

Postby kmihelich » Thu May 26, 2011 8:47 pm

Have you built a kernel to prove this resolves the issue?

Personally, I'm not a fan of tacking in third party patches or corporate code into a release kernel. The complexity of this increases over time, as each release in 2.6 has the potential of bringing major changes that break patches or cause mysterious failures that no one here is qualified to diagnose and repair. Maintaining this position means that there is no future implied obligation to patch in fixes for other things not mainlined. Which brings me to the point, the proper route would be to get in contact with the maintainer of the code within the mainline kernel and have them consider the revisions Asix has made to the code to better support the adapters out in the wild.
Arch Linux ARM exists and continues to grow through community support, please donate today!
kmihelich
Developer
 
Posts: 1133
Joined: Tue Jul 20, 2010 6:55 am
Location: aka leming #archlinuxarm

Re: Need new ASIX USB Ethernet module

Postby jeajea » Sat May 28, 2011 12:31 pm

The new version fixes my problem. :)
Because it is a module I didn’t have to build a new kernel. :)
I had to install the basic native compiling tools

http://Arch Linux ARM.com/index.php5/Develope ... g_Packages

I did have to download and unpack the kernel source.
I had to use gzip to compress asix.ko to asix.ko.gz
I saved the old version and copied the new version to

/lib/modules/2.6.38/kernel/drivers/net/usb/

I had to add asix to the modules line in rc.conf

I don’t know how to contact the maintainer of the code within the mainline kernel.
Jim Anderson
3 Dockstars, 3 Pogoplug V2 and a Zyxel NSA325
Treasure Island, Fl
jeajea
 
Posts: 121
Joined: Wed Aug 25, 2010 4:00 pm

Re: Need new ASIX USB Ethernet module

Postby pepedog » Sat May 28, 2011 2:30 pm

$this->bbcode_second_pass_quote('jeajea', 'I') don’t know how to contact the maintainer of the code within the mainline kernel.

This can be daunting, Jim, plus I bet the guy(s) responsible know of this, it may be the case that this module breaks other devices?
Normally you wouldn't replace a kernel module, insmod it with path and blacklist asix, but you want it early.
pepedog
Developer
 
Posts: 2431
Joined: Mon Jun 07, 2010 3:30 pm
Location: London UK

Re: Need new ASIX USB Ethernet module

Postby Jeffman » Wed Jun 29, 2011 1:43 am

well I got the ASIX USB Ethernet driver pkg working with kernel 2.6.39
I pretty much just updated these files
PKGBUILD:
$this->bbcode_second_pass_code('', '# Maintainer: Maskawanian <aur AT cryingwolf.org>
pkgname=ax88178
pkgver=4.1.0
pkgrel=1
pkgdesc="Driver for AX88178 based USB Gigabit Ethernet Devices"
arch=(i686 x86_64)
depends=('kernel26>2.6.39')
license=('GPL')
install="ax88178.install"
url=('http://www.asix.com.tw/download.php?sub=driverdetail&PItemID=84')
source=('http://www.asix.com.tw/FrootAttach/driver/AX88772B_772A_760_772_178_LINUX_Driver_v4.1.0_Source.tar.bz2')
md5sums=('ec0c4624081f0b418434deb31b63c7e7')

build() {
cd ${startdir}/src/AX88772B_772A_760_772_178_LINUX_Driver_v4.1.0_Source || return 1
make || return 1
mkdir -p ${startdir}/pkg/lib/modules/2.6.39-ARCH/kernel/drivers/net/usb
cp -v asix.ko ${startdir}/pkg/lib/modules/2.6.39-ARCH/kernel/drivers/net/usb/asix.ko
}')

AX88178.tar.gz
Tarball
(665 Bytes) Downloaded 1283 times
Jeffman
 
Posts: 1
Joined: Wed Jun 29, 2011 12:37 am


Return to Packages

Who is online

Users browsing this forum: No registered users and 8 guests