Makefile revision 238056
1169695Skan# 2169695Skan# Copyright (c) 2002-2008 Sam Leffler, Errno Consulting 3169695Skan# All rights reserved. 4169695Skan# 5169695Skan# Redistribution and use in source and binary forms, with or without 6169695Skan# modification, are permitted provided that the following conditions 7169695Skan# are met: 8169695Skan# 1. Redistributions of source code must retain the above copyright 9169695Skan# notice, this list of conditions and the following disclaimer, 10169695Skan# without modification. 11169695Skan# 2. Redistributions in binary form must reproduce at minimum a disclaimer 12169695Skan# similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any 13169695Skan# redistribution must be conditioned upon including a substantially 14169695Skan# similar Disclaimer requirement for further binary redistribution. 15169695Skan# 16169695Skan# NO WARRANTY 17169695Skan# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18169695Skan# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19169695Skan# LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY 20169695Skan# AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL 21169695Skan# THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, 22169695Skan# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23169695Skan# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 24169695Skan# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER 25169695Skan# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 26169695Skan# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 27169695Skan# THE POSSIBILITY OF SUCH DAMAGES. 28169695Skan# 29169695Skan# $FreeBSD: head/sys/modules/ath/Makefile 238056 2012-07-03 07:01:12Z adrian $ 30169695Skan# 31169695Skan 32169695SkanATH_RATE?= sample # tx rate control algorithm 33169695Skan 34169695Skan.PATH: ${.CURDIR}/../../dev/ath 35169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_hal 36169695Skan 37169695SkanKMOD= if_ath 38169695SkanSRCS= if_ath.c if_ath_debug.c if_ath_keycache.c if_ath_sysctl.c 39169695SkanSRCS+= if_ath_tx.c if_ath_tx_ht.c if_ath_led.c if_ath_rx.c if_ath_tdma.c 40169695SkanSRCS+= if_ath_beacon.c if_ath_rx_edma.c 41169695Skan# NB: v3 eeprom support used by both AR5211 and AR5212; just include it 42169695SkanSRCS+= ah_osdep.c ah.c ah_regdomain.c ah_eeprom_v3.c 43169695SkanSRCS+= device_if.h bus_if.h pci_if.h opt_inet.h opt_ath.h opt_ah.h opt_wlan.h 44169695Skan 45169695Skan# 46169695Skan# AR5210 support; these are first generation 11a-only devices. 47169695Skan# 48169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar5210 49169695SkanSRCS+= ah_eeprom_v1.c \ 50169695Skan ar5210_attach.c ar5210_beacon.c ar5210_interrupts.c \ 51169695Skan ar5210_keycache.c ar5210_misc.c ar5210_phy.c ar5210_power.c \ 52169695Skan ar5210_recv.c ar5210_reset.c ar5210_xmit.c 53169695Skan 54169695Skan# 55169695Skan# AR5211 support; these are second generation 11b/g/a devices 56169695Skan# (but 11g was OFDM only and is not supported). 57169695Skan# 58169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar5211 59169695SkanSRCS+= ar5211_attach.c ar5211_beacon.c ar5211_interrupts.c \ 60169695Skan ar5211_keycache.c ar5211_misc.c ar5211_phy.c ar5211_power.c \ 61169695Skan ar5211_recv.c ar5211_reset.c ar5211_xmit.c 62169695Skan 63169695Skan# 64169695Skan# AR5212 support; this covers all other pci/cardbus legacy parts. 65169695Skan# 66169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar5212 67169695SkanSRCS+= ar5212_ani.c ar5212_attach.c ar5212_beacon.c ar5212_eeprom.c \ 68169695Skan ar5212_gpio.c ar5212_interrupts.c ar5212_keycache.c ar5212_misc.c \ 69169695Skan ar5212_phy.c ar5212_power.c ar5212_recv.c ar5212_reset.c \ 70169695Skan ar5212_rfgain.c ar5212_xmit.c 71169695Skan# RF backends 72169695SkanSRCS+= ar5111.c 73169695SkanSRCS+= ar5112.c 74169695SkanSRCS+= ar2413.c 75169695SkanSRCS+= ar2425.c 76169695SkanSRCS+= ar5413.c 77169695Skan 78169695Skan# 79169695Skan# AR5416, AR9130, AR9160, AR9220, AR9280, AR9285, AR9287 support. 80169695Skan 81169695Skan# Note enabling this support requires defining AH_SUPPORT_AR5416 82169695Skan# in opt_ah.h so the 11n tx/rx descriptor format is handled. 83169695Skan# 84169695Skan# NB: 9160 depends on 5416 but 5416 does not require 9160 85169695Skan# 86169695Skan# + 5416 (Owl) 87169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar5416 88169695SkanSRCS+= ah_eeprom_v14.c ah_eeprom_v4k.c \ 89169695Skan ar5416_ani.c ar5416_attach.c ar5416_beacon.c ar5416_cal.c \ 90169695Skan ar5416_cal_iq.c ar5416_cal_adcgain.c ar5416_cal_adcdc.c \ 91169695Skan ar5416_eeprom.c ar5416_gpio.c ar5416_interrupts.c ar5416_keycache.c \ 92169695Skan ar5416_misc.c ar5416_phy.c ar5416_power.c ar5416_radar.c \ 93169695Skan ar5416_recv.c ar5416_reset.c ar5416_xmit.c 94169695Skan 95169695Skan# RF backend for 5416, 9130 and 9160 96169695SkanSRCS+= ar2133.c 97169695Skan 98169695Skan# + AR9160 (Sowl) 99169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar9001 100169695SkanSRCS+= ar9160_attach.c 101169695Skan 102169695Skan# + AR9130 - (Sowl) - Embedded (AR913x SoC) 103169695Skan# 104169695Skan# This requires AH_SUPPORT_AR9130 in order to function as some 105169695Skan# register values have shifted for this chipset. Definig this however 106169695Skan# (currently) breaks non-AR9130 chipsets - since this is an embedded 107169695Skan# chipset and no other radios are glued to it, this shouldn't pose a 108169695Skan# problem. 109169695SkanSRCS+= ar9130_attach.c ar9130_eeprom.c ar9130_phy.c 110169695Skan 111169695Skan# AR9002 series chips 112169695Skan# + AR9220/AR9280 - Merlin 113169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar9002 114169695SkanSRCS+= ar9280.c ar9280_attach.c ar9280_olc.c 115169695Skan 116169695Skan# + AR9285 - Kite 117169695SkanSRCS+= ar9285.c ar9285_reset.c ar9285_attach.c ar9285_cal.c ar9285_phy.c 118169695SkanSRCS+= ar9285_diversity.c 119169695Skan 120169695Skan# + AR9287 - Kiwi 121169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_hal 122169695SkanSRCS+= ah_eeprom_9287.c 123169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_hal/ar9002 124169695SkanSRCS+= ar9287.c ar9287_reset.c ar9287_attach.c ar9287_cal.c ar9287_olc.c 125169695Skan 126169695Skan# NB: rate control is bound to the driver by symbol names so only pick one 127169695Skan.if ${ATH_RATE} == "sample" 128169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_rate/sample 129169695SkanSRCS+= sample.c 130169695Skan.elif ${ATH_RATE} == "onoe" 131169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_rate/onoe 132169695SkanSRCS+= onoe.c 133169695Skan.elif ${ATH_RATE} == "amrr" 134169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_rate/amrr 135169695SkanSRCS+= amrr.c 136169695Skan.endif 137169695Skan 138169695Skan# DFS 139169695Skan.PATH: ${.CURDIR}/../../dev/ath/ath_dfs/null 140169695SkanSRCS+= dfs_null.c 141169695Skan 142169695SkanCFLAGS+= -I. -I${.CURDIR}/../../dev/ath -I${.CURDIR}/../../dev/ath/ath_hal 143169695Skan 144169695Skan.if !defined(KERNBUILDDIR) 145169695Skanopt_ah.h: 146169695Skan echo '#define AH_SUPPORT_AR5416 1' > $@ 147169695Skan.endif 148169695Skan 149169695Skan.include <bsd.kmod.mk> 150169695Skan 151169695SkanCWARNFLAGS.ah_regdomain.c= ${NO_WSHIFT_COUNT_NEGATIVE} ${NO_WSHIFT_COUNT_OVERFLOW} 152169695SkanCWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} 153169695Skan