summaryrefslogtreecommitdiffstats
path: root/sys/conf
diff options
context:
space:
mode:
authoryongari <yongari@FreeBSD.org>2009-06-10 02:07:58 +0000
committeryongari <yongari@FreeBSD.org>2009-06-10 02:07:58 +0000
commitc9be81a52036d522206f5b4d09a630eac428fce7 (patch)
tree180f5ec2bed6cdb5a8a59c08588c0311a0ea52ae /sys/conf
parent50dfd13368b16d34acedc6d54147e83745cc1da8 (diff)
downloadFreeBSD-src-c9be81a52036d522206f5b4d09a630eac428fce7.zip
FreeBSD-src-c9be81a52036d522206f5b4d09a630eac428fce7.tar.gz
Add alc(4), a driver for Atheros AR8131/AR8132 PCIe ethernet
controller. These controllers are also known as L1C(AR8131) and L2C(AR8132) respectively. These controllers resembles the first generation controller L1 but usage of different descriptor format and new register mappings over L1 register space requires a new driver. There are a couple of registers I still don't understand but the driver seems to have no critical issues for performance and stability. Currently alc(4) supports the following hardware features. o MSI o TCP Segmentation offload o Hardware VLAN tag insertion/stripping o Tx/Rx interrupt moderation o Hardware statistics counters(dev.alc.%d.stats) o Jumbo frame o WOL AR8131/AR8132 also supports Tx checksum offloading but I disabled it due to stability issues. I'm not sure this comes from broken sample boards or hardware bugs. If you know your controller works without problems you can still enable it. The controller has a silicon bug for Rx checksum offloading, so the feature was not implemented. I'd like to say big thanks to Atheros. Atheros kindly sent sample boards to me and answered several questions I had. HW donated by: Atheros Communications, Inc.
Diffstat (limited to 'sys/conf')
-rw-r--r--sys/conf/NOTES2
-rw-r--r--sys/conf/files1
2 files changed, 3 insertions, 0 deletions
diff --git a/sys/conf/NOTES b/sys/conf/NOTES
index 5befc87..7de53a2 100644
--- a/sys/conf/NOTES
+++ b/sys/conf/NOTES
@@ -1754,6 +1754,7 @@ device miibus
# L2 PCI-Express FastEthernet controllers.
# age: Support for gigabit ethernet adapters based on the Attansic/Atheros
# L1 PCI express gigabit ethernet controllers.
+# alc: Support for Atheros AR8131/AR8132 PCIe ethernet controllers.
# ale: Support for Atheros AR8121/AR8113/AR8114 PCIe ethernet controllers.
# bce: Broadcom NetXtreme II (BCM5706/BCM5708) PCI/PCIe Gigabit Ethernet
# adapters.
@@ -1896,6 +1897,7 @@ device xe
# PCI Ethernet NICs that use the common MII bus controller code.
device ae # Attansic/Atheros L2 FastEthernet
device age # Attansic/Atheros L1 Gigabit Ethernet
+device alc # Atheros AR8131/AR8132 Ethernet
device ale # Atheros AR8121/AR8113/AR8114 Ethernet
device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet
device bfe # Broadcom BCM440x 10/100 Ethernet
diff --git a/sys/conf/files b/sys/conf/files
index 158d262..e4795b5 100644
--- a/sys/conf/files
+++ b/sys/conf/files
@@ -471,6 +471,7 @@ dev/aic7xxx/aic7xxx.c optional ahc
dev/aic7xxx/aic7xxx_93cx6.c optional ahc
dev/aic7xxx/aic7xxx_osm.c optional ahc
dev/aic7xxx/aic7xxx_pci.c optional ahc pci
+dev/ale/if_alc.c optional alc pci
dev/ale/if_ale.c optional ale pci
dev/amd/amd.c optional amd
dev/amr/amr.c optional amr
OpenPOWER on IntegriCloud