Makefile revision 221163
1180740Sdes# 2180740Sdes# Copyright (c) 2002-2008 Sam Leffler, Errno Consulting 3180740Sdes# All rights reserved. 4180740Sdes# 5180740Sdes# Redistribution and use in source and binary forms, with or without 6180740Sdes# modification, are permitted provided that the following conditions 7180740Sdes# are met: 8180740Sdes# 1. Redistributions of source code must retain the above copyright 9180740Sdes# notice, this list of conditions and the following disclaimer, 10180740Sdes# without modification. 11180750Sdes# 2. Redistributions in binary form must reproduce at minimum a disclaimer 12180740Sdes# similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any 13180740Sdes# redistribution must be conditioned upon including a substantially 14180740Sdes# similar Disclaimer requirement for further binary redistribution. 15180740Sdes# 16180740Sdes# NO WARRANTY 17180740Sdes# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18180740Sdes# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19180740Sdes# LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY 20180740Sdes# AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL 21180740Sdes# THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, 22180740Sdes# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23180740Sdes# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 24180740Sdes# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER 25180740Sdes# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 26180740Sdes# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 27180740Sdes# THE POSSIBILITY OF SUCH DAMAGES. 28180740Sdes# 29180740Sdes# $FreeBSD: head/sys/modules/ath/Makefile 221163 2011-04-28 12:47:40Z adrian $ 30180740Sdes# 31180750Sdes 32180750SdesATH_RATE?= sample # tx rate control algorithm 33180750Sdes 34180750Sdes.PATH: ${.CURDIR}/../../dev/ath 35180740Sdes.PATH: ${.CURDIR}/../../dev/ath/ath_hal 36180740Sdes 37180740SdesKMOD= if_ath 38180740SdesSRCS= if_ath.c if_ath_debug.c if_ath_keycache.c if_ath_sysctl.c 39180740SdesSRCS+= if_ath_tx.c if_ath_tx_ht.c 40180740Sdes# NB: v3 eeprom support used by both AR5211 and AR5212; just include it 41189006SdesSRCS+= ah_osdep.c ah.c ah_regdomain.c ah_eeprom_v3.c 42189006SdesSRCS+= device_if.h bus_if.h pci_if.h opt_inet.h opt_ath.h opt_ah.h opt_wlan.h 43180740Sdes 44180740Sdes# 45189006Sdes# AR5210 support; these are first generation 11a-only devices. 46180740Sdes# 47180740Sdes.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar5210 48180740SdesSRCS+= ah_eeprom_v1.c \ 49180740Sdes ar5210_attach.c ar5210_beacon.c ar5210_interrupts.c \ 50180740Sdes ar5210_keycache.c ar5210_misc.c ar5210_phy.c ar5210_power.c \ 51180740Sdes ar5210_recv.c ar5210_reset.c ar5210_xmit.c 52180740Sdes 53180740Sdes# 54180740Sdes# AR5211 support; these are second generation 11b/g/a devices 55180740Sdes# (but 11g was OFDM only and is not supported). 56180740Sdes# 57180740Sdes.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar5211 58180740SdesSRCS+= ar5211_attach.c ar5211_beacon.c ar5211_interrupts.c \ 59180740Sdes ar5211_keycache.c ar5211_misc.c ar5211_phy.c ar5211_power.c \ 60180740Sdes ar5211_recv.c ar5211_reset.c ar5211_xmit.c 61180740Sdes 62180750Sdes# 63180740Sdes# AR5212 support; this covers all other pci/cardbus legacy parts. 64# 65.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar5212 66SRCS+= ar5212_ani.c ar5212_attach.c ar5212_beacon.c ar5212_eeprom.c \ 67 ar5212_gpio.c ar5212_interrupts.c ar5212_keycache.c ar5212_misc.c \ 68 ar5212_phy.c ar5212_power.c ar5212_recv.c ar5212_reset.c \ 69 ar5212_rfgain.c ar5212_xmit.c 70# RF backends 71SRCS+= ar5111.c 72SRCS+= ar5112.c 73SRCS+= ar2413.c 74SRCS+= ar2425.c 75SRCS+= ar5413.c 76 77# 78# AR5416, AR9130, AR9160, AR9220, AR9280, AR9285 support. 79 80# Note enabling this support requires defining AH_SUPPORT_AR5416 81# in opt_ah.h so the 11n tx/rx descriptor format is handled. 82# 83# NB: 9160 depends on 5416 but 5416 does not require 9160 84# 85# + 5416 (Owl) 86.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar5416 87SRCS+= ah_eeprom_v14.c ah_eeprom_v4k.c \ 88 ar5416_ani.c ar5416_attach.c ar5416_beacon.c ar5416_cal.c \ 89 ar5416_cal_iq.c ar5416_cal_adcgain.c ar5416_cal_adcdc.c \ 90 ar5416_eeprom.c ar5416_gpio.c ar5416_interrupts.c ar5416_keycache.c \ 91 ar5416_misc.c ar5416_phy.c ar5416_power.c ar5416_recv.c \ 92 ar5416_reset.c ar5416_xmit.c 93 94# RF backend for 5416, 9130 and 9160 95SRCS+= ar2133.c 96 97# + AR9160 (Sowl) 98.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar9001 99SRCS+= ar9160_attach.c 100 101# + AR9130 - (Sowl) - Embedded (AR913x SoC) 102# 103# This requires AH_SUPPORT_AR9130 in order to function as some 104# register values have shifted for this chipset. Definig this however 105# (currently) breaks non-AR9130 chipsets - since this is an embedded 106# chipset and no other radios are glued to it, this shouldn't pose a 107# problem. 108SRCS+= ar9130_attach.c ar9130_eeprom.c ar9130_phy.c 109 110# AR9002 series chips 111# + AR9220/AR9280 - Merlin 112.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar9002 113SRCS+= ar9280.c ar9280_attach.c ar9280_olc.c 114 115# + AR9285 - Kite 116SRCS+= ar9285.c ar9285_reset.c ar9285_attach.c ar9285_cal.c ar9285_phy.c 117SRCS+= ar9285_diversity.c 118 119# NB: rate control is bound to the driver by symbol names so only pick one 120.if ${ATH_RATE} == "sample" 121.PATH: ${.CURDIR}/../../dev/ath/ath_rate/sample 122SRCS+= sample.c 123.elif ${ATH_RATE} == "onoe" 124.PATH: ${.CURDIR}/../../dev/ath/ath_rate/onoe 125SRCS+= onoe.c 126.elif ${ATH_RATE} == "amrr" 127.PATH: ${.CURDIR}/../../dev/ath/ath_rate/amrr 128SRCS+= amrr.c 129.endif 130 131CFLAGS+= -I. -I${.CURDIR}/../../dev/ath -I${.CURDIR}/../../dev/ath/ath_hal 132 133opt_ah.h: 134 echo '#define AH_SUPPORT_AR5416 1' > $@ 135 136.include <bsd.kmod.mk> 137