Table of Contents

ASIX AX88180 Gigabit Ethernet controller

The driver for the ASIX AX88180 has been removed from the Linux kernel since they were not maintained by the vendor (ASIX). If you still want to see things, check out the old revisions of this page. If the drivers are ever mainlined, we will add this page back.

The AX88180 is a non-PCI Gigabit Ethernet controller for various embedded systems including consumer electronics and home network markets that require a higher bandwidth of network connectivity. The AX88180 supports 16/32-bit SRAM-like host interface and Gigabit Ethernet MAC, which is IEEE802.3 10Base-T, IEEE802.3u 100Base-T, and IEEE802.3ab 1000Base-T compatible. The AX88180 supports full-duplex or half-duplex operation at 10/100/1000Mbps speed with auto-negotiation or manual setting.

The AX88180 SMDK2440 Demo Board can be purchased on the ASIX homepage.

AX88180 SMDK2440 Demo Board Interface http://www.asix.com.tw/products.php?op=pItemdetail&PItemID=88;65;102

The Blackfin Adaptor Card is currently not for sale.

Schematics can be found here: ASIX_AX88180_Adaptor_Card

Hardware modifications to the AX88180 Demo Board (v2.0)

Action Component Comment
Remove R37 Zero Ohm Resistor
Populate R34 Zero Ohm Resistor
Populate R24 4k7 Ohm Resistor
Populate J4 100mil spacing Jumper Bridge
32-bit Bus Mode
Open J4
16-bit Bus Mode
Short J4

Options on the AX88180 Ethernet Demo Board Blackfin Adaptor Card

For Blackfin SCLK > 100MHz move slide switch SW1 towards OSC Label

Default Jumper Settings

IRQ Settings
JP1 set J1-80 BF537 IRQ_PF7 (57)
JP1 set J1-80 BF561 IRQ_PF10 (83)

Linux Kernel Support

Contact ASIX for all device drivers and support.

U-Boot Support

In case the AX88180 is mapped to ASYNC MEMORY BANK 3 (AMS3) use following defines to enable the AX88180 u-boot driver support.

Known good timings for BANK3 @ 125MHz SCLK: 0x8850

#define CONFIG_EBIU_AMBCTL1_VAL		0x8850xxxx 

Then in your board file, you need a normal board eth init function call similar to:

...
#include <netdev.h>
...
int board_eth_init(bd_t *bis)
{
    return ax88180_initialize(bis);
}
...

BF537/6/4 BF533/2/1 and BF52x

#define CONFIG_NET_MULTI
#define CONFIG_DRIVER_AX88180  1
#define AX88180_BASE                   0x20300000
#define CONFIG_DRIVER_AX88180_16BIT 1

BF54x

#define CONFIG_NET_MULTI
#define CONFIG_DRIVER_AX88180  1
#define AX88180_BASE                   0x2c000000
#define CONFIG_DRIVER_AX88180_16BIT 1

BF561

#define CONFIG_NET_MULTI
#define CONFIG_DRIVER_AX88180  1
#define AX88180_BASE                   0x2c000000