svn commit: r186094 - in head/sys/modules: . ath ath_rate_amrr ath_rate_onoe ath_rate_sample

Sam Leffler sam at FreeBSD.org
Sun Dec 14 22:26:58 UTC 2008


Author: sam
Date: Sun Dec 14 22:26:57 2008
New Revision: 186094
URL: http://svn.freebsd.org/changeset/base/186094

Log:
  Combine ath rate control modules with ath after bringing ath_hal
  src into the tree.  The old split was balanced on module dependencies
  and symbol exposure that no longer exists.  Users that want a module
  setup with rate control algorithm other than sample must override
  ATH_RATE in the ath module Makefile.
  
  Reviewed by:	imp

Deleted:
  head/sys/modules/ath_rate_amrr/
  head/sys/modules/ath_rate_onoe/
  head/sys/modules/ath_rate_sample/
Modified:
  head/sys/modules/Makefile
  head/sys/modules/ath/Makefile

Modified: head/sys/modules/Makefile
==============================================================================
--- head/sys/modules/Makefile	Sun Dec 14 20:15:30 2008	(r186093)
+++ head/sys/modules/Makefile	Sun Dec 14 22:26:57 2008	(r186094)
@@ -30,9 +30,6 @@ SUBDIR=	${_3dfx} \
 	${_asr} \
 	ata \
 	ath \
-	ath_rate_amrr \
-	ath_rate_onoe \
-	ath_rate_sample \
 	aue \
 	${_auxio} \
 	axe \

Modified: head/sys/modules/ath/Makefile
==============================================================================
--- head/sys/modules/ath/Makefile	Sun Dec 14 20:15:30 2008	(r186093)
+++ head/sys/modules/ath/Makefile	Sun Dec 14 22:26:57 2008	(r186094)
@@ -29,44 +29,80 @@
 # $FreeBSD$
 #
 
-.PATH:	${.CURDIR}/../../dev/ath \
-	${.CURDIR}/../../dev/ath/ath_hal \
-	${.CURDIR}/../../dev/ath/ath_hal/ar5210 \
-	${.CURDIR}/../../dev/ath/ath_hal/ar5211 \
-	${.CURDIR}/../../dev/ath/ath_hal/ar5212 \
-	${.CURDIR}/../../dev/ath/ath_hal/ar5416
+ATH_RATE?=	sample		# tx rate control algorithm
 
-AR5210_SRCS=ah_eeprom_v1.c \
+.PATH:	${.CURDIR}/../../dev/ath
+.PATH:	${.CURDIR}/../../dev/ath/ath_hal
+
+KMOD=	if_ath
+SRCS=	if_ath.c if_ath_pci.c
+# NB: v3 eeprom support used by both AR5211 and AR5212; just include it
+SRCS+=	ah_osdep.c ah.c ah_regdomain.c ah_eeprom_v3.c
+SRCS+=	device_if.h bus_if.h pci_if.h opt_inet.h opt_ath.h opt_ah.h
+
+#
+# AR5210 support; these are first generation 11a-only devices.
+#
+.PATH:	${.CURDIR}/../../dev/ath/ath_hal/ar5210
+SRCS+=	ah_eeprom_v1.c \
 	ar5210_attach.c ar5210_beacon.c ar5210_interrupts.c \
 	ar5210_keycache.c ar5210_misc.c ar5210_phy.c ar5210_power.c \
 	ar5210_recv.c ar5210_reset.c ar5210_xmit.c
-AR5211_SRCS=ar5211_attach.c ar5211_beacon.c ar5211_interrupts.c \
+
+#
+# AR5211 support; these are second generation 11b/g/a devices
+# (but 11g was OFDM only and is not supported).
+#
+.PATH:	${.CURDIR}/../../dev/ath/ath_hal/ar5211
+SRCS+=	ar5211_attach.c ar5211_beacon.c ar5211_interrupts.c \
 	ar5211_keycache.c ar5211_misc.c	ar5211_phy.c ar5211_power.c \
 	ar5211_recv.c ar5211_reset.c ar5211_xmit.c
-AR5212_SRCS=ar5212_ani.c ar5212_attach.c ar5212_beacon.c ar5212_eeprom.c \
+
+#
+# AR5212 support; this covers all other pci/cardbus legacy parts.
+#
+.PATH:	${.CURDIR}/../../dev/ath/ath_hal/ar5212
+SRCS+=	ar5212_ani.c ar5212_attach.c ar5212_beacon.c ar5212_eeprom.c \
 	ar5212_gpio.c ar5212_interrupts.c ar5212_keycache.c ar5212_misc.c \
 	ar5212_phy.c ar5212_power.c ar5212_recv.c ar5212_reset.c \
-	ar5212_rfgain.c ar5212_xmit.c \
-	ar2413.c ar2425.c ar5111.c ar5112.c ar5413.c
-AR5416_SRCS=ah_eeprom_v14.c \
+	ar5212_rfgain.c ar5212_xmit.c
+# RF backends
+SRCS+=	ar5111.c
+SRCS+=	ar5112.c
+SRCS+=	ar2413.c
+SRCS+=	ar2425.c
+SRCS+=	ar5413.c
+
+#
+# AR5416, AR9160 support; these are 11n parts but only really
+# supported (right now) operating in legacy mode.  Note enabling
+# this support requires defining AH_SUPPORT_AR5416 in opt_ah.h
+# so the 11n tx/rx descriptor format is handled.
+#
+# NB: 9160 depends on 5416 but 5416 does not require 9160
+#
+.PATH:	${.CURDIR}/../../dev/ath/ath_hal/ar5416
+SRCS+=	ah_eeprom_v14.c \
 	ar5416_ani.c ar5416_attach.c ar5416_beacon.c ar5416_cal.c \
 	ar5416_cal_iq.c ar5416_cal_adcgain.c ar5416_cal_adcdc.c \
 	ar5416_eeprom.c ar5416_gpio.c ar5416_interrupts.c ar5416_keycache.c \
 	ar5416_misc.c ar5416_phy.c ar5416_power.c ar5416_recv.c \
-	ar5416_reset.c ar5416_xmit.c \
-	ar2133.c
-AR9160_SRCS=ar9160_attach.c
-
-KMOD=	if_ath
-SRCS=	if_ath.c if_ath_pci.c
-# NB: v3 eeprom support used by both AR5211 and AR5212; just include it
-SRCS+=	ah_osdep.c ah.c ah_regdomain.c ah_eeprom_v3.c
-SRCS+=	${AR5210_SRCS}
-SRCS+=	${AR5211_SRCS}
-SRCS+=	${AR5212_SRCS}
-SRCS+=	${AR5416_SRCS}
-SRCS+=	${AR9160_SRCS}
-SRCS+=	device_if.h bus_if.h pci_if.h opt_inet.h opt_ath.h opt_ah.h
+	ar5416_reset.c ar5416_xmit.c
+SRCS+=	ar9160_attach.c
+# RF backend for 5416 and 9160
+SRCS+=	ar2133.c
+
+# NB: rate control is bound to the driver by symbol names so only pick one
+.if ${ATH_RATE} == "sample"
+.PATH:	${.CURDIR}/../../dev/ath/ath_rate/sample
+SRCS+=	sample.c opt_wlan.h
+.elif ${ATH_RATE} == "onoe"
+.PATH:	${.CURDIR}/../../dev/ath/ath_rate/onoe
+SRCS+=	onoe.c
+.elif ${ATH_RATE} == "amrr"
+.PATH:	${.CURDIR}/../../dev/ath/ath_rate/amrr
+SRCS+=	amrr.c
+.endif
 
 CFLAGS+=  -I. -I${.CURDIR}/../../dev/ath -I${.CURDIR}/../../dev/ath/ath_hal
 


More information about the svn-src-all mailing list