AX88179x/178A/772D Linux Command Line Programming Tool

The ax88179_programmer can be used to read/write the EEPROM/eFuse of
AX88179/AX88178A.
The ax88179a_programmer can be used to read/write the Flash/eFuse of
AX88179A/AX88772D. 

===============================================================================
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 ioctl will be created under the current
   directory.

Note:	The default way to find the interface is to scan the ASIX device using
	the ethx (x: 0~255).It is defined in the file, command.h.

	(As follows)
	...
	// DEFAULT_SCAN   : scan "eth0" - "eth255"
	// INTERFACE_SCAN : scan all available network interfaces
	#define NET_INTERFACE	DEFAULT_SCAN
	#define	DEFAULT_SCAN	0x00
	#define	INTERFACE_SCAN	0x01
	...
	
	Adjust the contents of #define NET_INTERFACE to select the method
	you want.

===============================================================================
Usage for AX88179/178A
===============================================================================

1. If you want to read out values of the EEPROM/EFUSE to a file, go to the
   driver directory and execute the following command:

	# ./ax88179_programmer reeprom 0 eeprom 512
	# ./ax88179_programmer reeprom 1 efuse 64

2. If you want to write values of a file to the EEPROM/EFUSE,  go to the driver 
   directory and execute the following command:

	# ./ax88179_programmer weeprom 0 eeprom 512
	# ./ax88179_programmer weeprom 1 efuse 64

3. If you want to change the MAC address of a dongle, go to the driver directory
    and execute the following command:

	# ./ax88179_programmer chgmac 0 mac_addr 512
	# ./ax88179_programmer chgmac 1 mac_addr 64

4. If you need more information about the instructions, go to the driver
   directory and execute the following commands:

	# ./ax88179_programmer reeprom help

AX88179/AX88178A Linux EEPROM/eFuse Programming Tool vX.X.X
./ax88179_programmer reeprom [type] [file] [size]
    -- AX88179_178A EEPROM/eFuse read tool
        [type]    - 0: EEPROM,  1: eFuse
        [file]    - Output file
        [size]    - EEPROM/eFuse SIZE (bytes). EEPROM maximum 512 bytes, eFuse
		    maximum 64 bytes.

or

	# ./ioctl weeprom help

AX88179/AX88178A Linux EEPROM/eFuse Programming Tool vX.X.X
./ax88179_programmer weeeprom [type] [file] [size]
    -- AX88179_178A EEPROM/eFuse write tool
        [type]    - 0: EEPROM,  1: eFuse
        [file]    - Input file
        [size]    - EEPROM/eFuse SIZE (bytes). EEPROM size 12-512 bytes, eFuse
		    maximum 64 bytes.

or

	# ./ioctl chgmac help

AX88179/AX88178A Linux EEPROM/eFuse Programming Tool vX.X.X
./ax88179_programmer chgmac [type] [mac_addr] [size]
    -- AX88179_178A EEPROM/eFuse write tool (specify MAC address)
        [type]    - 0: EEPROM,  1: eFuse
        [mac_addr]- MAC address (xx:xx:xx:xx:xx:xx)
        [size]    - EEPROM/eFuse SIZE (bytes). EEPROM size 12-512 bytes, eFuse 
		    maximum 64 bytes.

===============================================================================
Usage for AX88179A/772D
===============================================================================

(Use root)

1. If you want to get help message for specific command, go to the driver
...directory and execute the following command:

	# ./ax88179a_programmer help [command]
ex:
	# ./ax88179a_programmer help refuse
	AX88179A/AX88772D Linux Flash/eFuse Programming Tool vX.X.X
	./ax88179a_programmer refuse -f [File]
	    -- AX88179A_772D Read eFuse
	        -f [File]   - eFuse file path

2. If you want to get the version of firmware, go to the driver directory
   and execute the following command:

	# ./ax88179a_programmer rversion
ex:
	# ./ax88179a_programmer rversion
	AX88179A/AX88772D Linux Flash/eFuse Programming Tool vX.X.X
	Firmware Version: vX.X.X
	SUCCESS./ax88179a_programmer rmacaddr

3. If you want to get the MAC address, go to the driver directory and execute
   the following command:

	# ./ax88179a_programmer rmacaddr
ex:
	# ./ax88179a_programmer rmacaddr
	AX88179A/AX88772D Linux Flash/eFuse Programming Tool vX.X.X
	MAC address: XX:XX:XX:XX:XX:XX
	SUCCESS

4. If you want to write values of a file to the flash, go to the driver
   directory and execute the following command:

	# ./ax88179a_programmer wflash [file]
ex:
	# ./ax88179a_programmer wflash flash.txt
	AX88179A/AX88772D Linux Flash/eFuse Programming Tool vX.X.X
	File FW Version: vX.X.X
	SUCCESS

5. If you want to write the eFuse, go to the driver directory and execute
   the following command:

	# ./ax88179a_programmer wefuse -m [MAC] -s [SN] -f [File]
ex:
	(Change MAC address)
	# ./ax88179a_programmer wefuse -m XX:XX:XX:XX:XX:XX -f efuse.txt
	AX88179A/AX88772D Linux Flash/eFuse Programming Tool vX.X.X
	SUCCESS

	(Change Serial number)
	# ./ax88179a_programmer wefuse -s 1234568790 -f efuse.txt
	AX88179A/AX88772D Linux Flash/eFuse Programming Tool vX.X.X
	SUCCESS

	(Change MAC address & Serial number)
	# ./ax88179a_programmer wefuse -m XX:XX:XX:XX:XX:XX -s 1234 -f efuse.txt
	AX88179A/AX88772D Linux Flash/eFuse Programming Tool vX.X.X
	SUCCESS

6. If you want to read the eFuse, go to the driver directory and execute
   the following command:

	# ./ax88179a_programmer refuse -f [File]
ex:
	# ./ax88179a_programmer refuse -f dump.txt
	AX88179A/AX88772D Linux Flash/eFuse Programming Tool vX.X.X
	SUCCESS

7. If you want to reload the flash or eFuse to check version or MAC address
   and so, go to the driver directory and execute the following command:

	# ./ax88179a_programmer reload
ex:
	# ./ax88179a_programmer reload
	AX88179A/AX88772D Linux Flash/eFuse Programming Tool vX.X.X
	SUCCESS