svn commit: r194426 - in stable/7/sys: . amd64/conf boot/forth conf
contrib/pf dev/alc i386/conf modules modules/alc
Pyun YongHyeon
yongari at FreeBSD.org
Thu Jun 18 06:04:00 UTC 2009
Author: yongari
Date: Thu Jun 18 06:03:58 2009
New Revision: 194426
URL: http://svn.freebsd.org/changeset/base/194426
Log:
MFC 193880,193887:
r193880:
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.
r193887:
fix directory name.
Added:
stable/7/sys/dev/alc/
- copied from r193880, head/sys/dev/alc/
stable/7/sys/modules/alc/
- copied from r193880, head/sys/modules/alc/
Modified:
stable/7/sys/ (props changed)
stable/7/sys/amd64/conf/GENERIC
stable/7/sys/boot/forth/loader.conf
stable/7/sys/conf/NOTES
stable/7/sys/conf/files
stable/7/sys/contrib/pf/ (props changed)
stable/7/sys/i386/conf/GENERIC
stable/7/sys/modules/Makefile
Modified: stable/7/sys/amd64/conf/GENERIC
==============================================================================
--- stable/7/sys/amd64/conf/GENERIC Thu Jun 18 05:56:24 2009 (r194425)
+++ stable/7/sys/amd64/conf/GENERIC Thu Jun 18 06:03:58 2009 (r194426)
@@ -193,6 +193,7 @@ device vx # 3Com 3c590, 3c595 (``Vorte
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device miibus # MII bus support
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
Modified: stable/7/sys/boot/forth/loader.conf
==============================================================================
--- stable/7/sys/boot/forth/loader.conf Thu Jun 18 05:56:24 2009 (r194425)
+++ stable/7/sys/boot/forth/loader.conf Thu Jun 18 06:03:58 2009 (r194426)
@@ -208,6 +208,7 @@ pf_load="NO" # packet filter
miibus_load="NO" # miibus support, needed for some drivers
if_age_load="NO" # Attansic/Atheros L1 Gigabit Ethernet
+if_alc_load="NO" # Atheros AR8131/AR8132 Ethernet
if_ale_load="NO" # Atheros AR8121/AR8113/AR8114 Ethernet
if_an_load="NO" # Aironet 4500/4800 802.11 wireless NICs
if_ar_load="NO" # Digi SYNC/570i
Modified: stable/7/sys/conf/NOTES
==============================================================================
--- stable/7/sys/conf/NOTES Thu Jun 18 05:56:24 2009 (r194425)
+++ stable/7/sys/conf/NOTES Thu Jun 18 06:03:58 2009 (r194426)
@@ -1724,6 +1724,7 @@ device miibus
# Harris (Intersil) Chipset with PCnetMobile firmware by AMD.
# 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.
@@ -1869,6 +1870,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
Modified: stable/7/sys/conf/files
==============================================================================
--- stable/7/sys/conf/files Thu Jun 18 05:56:24 2009 (r194425)
+++ stable/7/sys/conf/files Thu Jun 18 06:03:58 2009 (r194426)
@@ -446,6 +446,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/alc/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
Modified: stable/7/sys/i386/conf/GENERIC
==============================================================================
--- stable/7/sys/i386/conf/GENERIC Thu Jun 18 05:56:24 2009 (r194425)
+++ stable/7/sys/i386/conf/GENERIC Thu Jun 18 06:03:58 2009 (r194426)
@@ -204,6 +204,7 @@ device vx # 3Com 3c590, 3c595 (``Vorte
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device miibus # MII bus support
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
Modified: stable/7/sys/modules/Makefile
==============================================================================
--- stable/7/sys/modules/Makefile Thu Jun 18 05:56:24 2009 (r194425)
+++ stable/7/sys/modules/Makefile Thu Jun 18 06:03:58 2009 (r194426)
@@ -18,6 +18,7 @@ SUBDIR= ${_3dfx} \
aio \
${_amd} \
${_amdtemp} \
+ alc \
ale \
amr \
${_an} \
More information about the svn-src-stable-7
mailing list