summaryrefslogtreecommitdiffstats
path: root/linux/Makefile.inc
diff options
context:
space:
mode:
Diffstat (limited to 'linux/Makefile.inc')
-rw-r--r--linux/Makefile.inc604
1 files changed, 604 insertions, 0 deletions
diff --git a/linux/Makefile.inc b/linux/Makefile.inc
new file mode 100644
index 0000000..3078959
--- /dev/null
+++ b/linux/Makefile.inc
@@ -0,0 +1,604 @@
+#
+# Copyright (c) 2002-2008 Sam Leffler, Errno Consulting
+# Copyright (c) 2002-2008 Atheros Communications, Inc.
+#
+# Permission to use, copy, modify, and/or distribute this software for any
+# purpose with or without fee is hereby granted, provided that the above
+# copyright notice and this permission notice appear in all copies.
+#
+# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+#
+# $Id: Makefile.inc,v 1.9 2008/11/10 03:37:38 sam Exp $
+#
+HAL= ..
+PUBLIC= ${HAL}/public
+DEBUG= ${HAL}/debug
+#
+# Makefile for building the Atheros/MADWIFI HAL from source code on Linux.
+#
+# This file is intended to be called by the Makefile in the hal
+# directory with TARGET set to the desired target platform.
+#
+# There is support for multiple "generations" of Atheros hardware devices:
+#
+# AH_SUPPORT_AR5210 802.11a only MAC
+# AH_SUPPORT_AR5211 802.11a+802.11b MAC (also pure g, but not yet supported)
+# AH_SUPPORT_AR5212 802.11a+802.11b+802.11g MAC
+# AH_SUPPORT_AR5312 5212 MAC WiSoC (requires AH_SUPPORT_AR5212)
+# AH_SUPPORT_AR5416 802.11a+802.11g+802.11n MAC (requires AH_SUPPORT_5212)
+# AH_SUPPORT_AR9160 802.11a+802.11g+802.11n MAC (requires AH_SUPPORT_5416)
+#
+# AH_SUPPORT_2133 2133 RF support for 5416
+# AH_SUPPORT_2316 2316 RF (Cobra) support for 5212 et. al.
+# AH_SUPPORT_2317 2317 RF (Spyder) support for 5212 et. al.
+# AH_SUPPORT_2413 2413 RF support for 5212 et. al.
+# AH_SUPPORT_2417 2425 RF (Nala) support for 5212 et. al.
+# AH_SUPPORT_2425 2425 RF (Swan) support for 5212 et. al.
+# AH_SUPPORT_5111 5111 RF support for 5212 et. al.
+# AH_SUPPORT_5112 5112 RF support for 5212 et. al.
+# AH_SUPPORT_5413 5413 RF support for 5212 et. al.
+#
+# and numerous optional debugging facilities (typically named AH_DEBUG_*):
+#
+# AH_DEBUG enables debugging stuff that's controlled by the sysctl:
+# hw.ath.hal.debug
+# AH_ASSERT enables assertions that panic or trap into the debugger.
+# AH_DEBUG_ALQ enables support for tracing register reads+writes
+# via alq
+# AH_DEBUG_COUNTRY accept the CTR_DEBUG country code (for debugging
+# the regulatory domain support)
+# AH_REGOPS_FUNC arrange for OS_REG_READ and OS_REG_WRITE to be function
+# calls and not inline expanded to memory references
+# AH_ENABLE_AP_SUPPORT enables AP-specific support not publicly available
+# (e.g. don't cap turbo power limits)
+# AH_DISABLE_WME disable HAL_TXQ_USE_LOCKOUT_BKOFF_DIS support
+#
+# AH_PRIVATE_DIAG enable private diagnostic support
+# AH_WRITE_EEPROM permit EEPROM writes (use with AH_PRIVATE_DIAG)
+# AH_WRITE_REGDOMAIN permit EEPROM writes of the regulatory domain through
+# ah_setRegulatoryDomain (implies AH_WRITE_EEPROM)
+#
+
+#
+# Default settings...
+#
+AH_SUPPORT_AR5210?=1 # 5210 support
+AH_SUPPORT_AR5211?=1 # 5211 support
+AH_SUPPORT_AR5212?=1 # 5212 support
+AH_SUPPORT_AR5312?=0 # 5312 support
+AH_SUPPORT_AR5416?=1 # 5416 support
+AH_SUPPORT_AR9160?=0 # 9160 support
+AH_SUPPORT_2316?=0 # 2316 RF support
+AH_SUPPORT_2317?=0 # 2317 RF support
+AH_SUPPORT_2133?=0 # 2133 RF support
+AH_SUPPORT_2413?=1 # 2413 RF support
+AH_SUPPORT_2417?=1 # 2417 RF support
+AH_SUPPORT_2425?=1 # 2425 RF support
+AH_SUPPORT_5111?=1 # 5111 RF support
+AH_SUPPORT_5112?=1 # 5112 RF support
+AH_SUPPORT_5413?=1 # 5413 RF support
+
+AH_EEPROM_V3?=0 # v3+ EEPROM support
+AH_EEPROM_V14?=0 # v14+ EEPROM support
+
+AH_DEBUG?=0 # debugging (e.g. hw.ath.hal.debug)
+AH_ASSERT?=0 # assertions (pretty lame)
+AH_DEBUG_ALQ?=0 # ALQ register tracing support
+AH_REGOPS_FUNC?=0 # use inline memory references
+AH_WRITE_REGDOMAIN?=0 # support EEPROM writes of the regulatory domain
+AH_DEBUG_COUNTRY?=0 # accept CTR_DEBUG country code
+AH_DISABLE_WME?=0 # disable HAL_TXQ_USE_LOCKOUT_BKOFF_DIS
+AH_ENABLE_AP_SUPPORT?=0 # enable AP-specific support
+AH_WRITE_EEPROM?=0 # support EEPROM writes
+AH_PRIVATE_DIAG?=0 # non-public diagnostic support
+AH_NEED_DESC_SWAP?=0 # Need to swap TX descriptor
+AH_ENABLE_FORCEBIAS?=0 # 2133 orientation sensitivity
+
+#
+# If 5312 support is enabled it's certain we're not going
+# to use the 5210, 5211, or 5416 support so disable them.
+#
+ifeq ($(strip ${AH_SUPPORT_AR5312}),1)
+AH_SUPPORT_AR5210=0
+AH_SUPPORT_AR5211=0
+AH_SUPPORT_AR5416=0
+AH_SUPPORT_2133=0
+AH_SUPPORT_2413=0
+AH_SUPPORT_2417=0
+AH_SUPPORT_2425=0
+AH_SUPPORT_5413=0
+AH_SUPPORT_AR5212=1 # force 5212 support
+endif
+
+#
+# 5211 and 5212 require v3 EEPROM support; do it here
+# before we enable 5212 to support 5416 (this way we don't
+# pull in v3 support as a side effect).
+#
+ifeq ($(strip ${AH_SUPPORT_AR5212}),1)
+AH_EEPROM_V3=1
+endif
+ifeq ($(strip ${AH_SUPPORT_AR5211}),1)
+AH_EEPROM_V3=1
+endif
+
+#
+# If 9160 support is enabled force 5416 on also.
+#
+ifeq ($(strip ${AH_SUPPORT_AR9160}),1)
+AH_SUPPORT_AR5416=1
+endif
+
+#
+# If 5416 support is enabled force 5212 on also.
+#
+ifeq ($(strip ${AH_SUPPORT_AR5416}),1)
+AH_SUPPORT_AR5212=1
+endif
+
+#
+# 5416 support presently =>'s 2133 and force bias support;
+# do those automatically (but separately from 5212 for now).
+#
+ifeq ($(strip ${AH_SUPPORT_AR5416}),1)
+AH_SUPPORT_2133=1
+AH_ENABLE_FORCEBIAS=1
+AH_EEPROM_V14=1
+endif
+
+#
+# 2417 support presently requires 2425 support
+#
+ifeq ($(strip ${AH_SUPPORT_2417}),1)
+AH_SUPPORT_2425=1
+endif
+
+#
+# Basic build components.
+#
+OBJDIR= obj/${TARGET}
+
+WARNFLAGS=-Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \
+ -Wmissing-prototypes -Winline -Wcast-qual -std=c99
+# NB: can't do this until we fix register r/w macros
+WARNFLAGS_NOTYET=-Wpointer-arith
+COPTS= -Werror -g -O ${WARNFLAGS}
+INCS= -I${OBJDIR} -I. -I..
+CLEANFILES= ${OBJDIR}/.depend
+
+include ${PUBLIC}/${TARGET}.inc
+
+CFLAGS= ${INCS} ${COPTS}
+
+HAL_SRCS=${HAL}/ah.c ${HAL}/ah_regdomain.c
+HAL_OBJS=${OBJDIR}/ah.o ${OBJDIR}/ah_regdomain.o
+
+ifeq ($(strip ${AH_EEPROM_V3}),1)
+HAL_SRCS+=${HAL}/ah_eeprom_v3.c
+HAL_OBJS+=${OBJDIR}/ah_eeprom_v3.o
+endif
+
+ifeq ($(strip ${AH_EEPROM_V14}),1)
+HAL_SRCS+=${HAL}/ah_eeprom_v14.c
+HAL_OBJS+=${OBJDIR}/ah_eeprom_v14.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_AR5210}),1)
+AR5210= ${HAL}/ar5210
+HAL_SRCS+=${AR5210}/ar5210_attach.c ${AR5210}/ar5210_beacon.c \
+ ${AR5210}/ar5210_interrupts.c ${AR5210}/ar5210_keycache.c \
+ ${AR5210}/ar5210_misc.c ${AR5210}/ar5210_power.c \
+ ${AR5210}/ar5210_phy.c ${AR5210}/ar5210_recv.c \
+ ${AR5210}/ar5210_reset.c ${AR5210}/ar5210_xmit.c
+HAL_OBJS+=${OBJDIR}/ar5210_attach.o ${OBJDIR}/ar5210_beacon.o \
+ ${OBJDIR}/ar5210_interrupts.o ${OBJDIR}/ar5210_keycache.o \
+ ${OBJDIR}/ar5210_misc.o ${OBJDIR}/ar5210_power.o \
+ ${OBJDIR}/ar5210_phy.o ${OBJDIR}/ar5210_recv.o \
+ ${OBJDIR}/ar5210_reset.o ${OBJDIR}/ar5210_xmit.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_AR5211}),1)
+AR5211= ${HAL}/ar5211
+HAL_SRCS+=${AR5211}/ar5211_attach.c ${AR5211}/ar5211_beacon.c \
+ ${AR5211}/ar5211_interrupts.c ${AR5211}/ar5211_keycache.c \
+ ${AR5211}/ar5211_misc.c ${AR5211}/ar5211_power.c \
+ ${AR5211}/ar5211_phy.c ${AR5211}/ar5211_recv.c \
+ ${AR5211}/ar5211_reset.c ${AR5211}/ar5211_xmit.c
+HAL_OBJS+=${OBJDIR}/ar5211_attach.o ${OBJDIR}/ar5211_beacon.o \
+ ${OBJDIR}/ar5211_interrupts.o ${OBJDIR}/ar5211_keycache.o \
+ ${OBJDIR}/ar5211_misc.o ${OBJDIR}/ar5211_power.o \
+ ${OBJDIR}/ar5211_phy.o ${OBJDIR}/ar5211_recv.o \
+ ${OBJDIR}/ar5211_reset.o ${OBJDIR}/ar5211_xmit.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_AR5212}),1)
+AR5212= ${HAL}/ar5212
+HAL_SRCS+=${AR5212}/ar5212_attach.c ${AR5212}/ar5212_beacon.c \
+ ${AR5212}/ar5212_eeprom.c ${AR5212}/ar5212_gpio.c \
+ ${AR5212}/ar5212_interrupts.c ${AR5212}/ar5212_keycache.c \
+ ${AR5212}/ar5212_misc.c ${AR5212}/ar5212_power.c \
+ ${AR5212}/ar5212_phy.c ${AR5212}/ar5212_recv.c \
+ ${AR5212}/ar5212_reset.c ${AR5212}/ar5212_xmit.c \
+ ${AR5212}/ar5212_ani.c
+HAL_OBJS+=${OBJDIR}/ar5212_attach.o ${OBJDIR}/ar5212_beacon.o \
+ ${OBJDIR}/ar5212_eeprom.o ${OBJDIR}/ar5212_gpio.o \
+ ${OBJDIR}/ar5212_interrupts.o ${OBJDIR}/ar5212_keycache.o \
+ ${OBJDIR}/ar5212_misc.o ${OBJDIR}/ar5212_power.o \
+ ${OBJDIR}/ar5212_phy.o ${OBJDIR}/ar5212_recv.o \
+ ${OBJDIR}/ar5212_reset.o ${OBJDIR}/ar5212_xmit.o \
+ ${OBJDIR}/ar5212_ani.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_AR5312}),1)
+AR5312= ${HAL}/ar5312
+HAL_SRCS+=${AR5312}/ar5312_attach.c ${AR5312}/ar5312_interrupts.c \
+ ${AR5312}/ar5312_eeprom.c \
+ ${AR5312}/ar5312_gpio.c ${AR5312}/ar5315_gpio.c \
+ ${AR5312}/ar5312_misc.c ${AR5312}/ar5312_power.c \
+ ${AR5312}/ar5312_reset.c
+HAL_OBJS+=${OBJDIR}/ar5312_attach.o ${OBJDIR}/ar5312_interrupts.o \
+ ${OBJDIR}/ar5312_eeprom.o \
+ ${OBJDIR}/ar5312_gpio.o ${OBJDIR}/ar5315_gpio.o \
+ ${OBJDIR}/ar5312_misc.o ${OBJDIR}/ar5312_power.o \
+ ${OBJDIR}/ar5312_reset.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_AR5416}),1)
+AR5416= ${HAL}/ar5416
+HAL_SRCS+=${AR5416}/ar5416_attach.c ${AR5416}/ar5416_beacon.c \
+ ${AR5416}/ar5416_eeprom.c ${AR5416}/ar5416_gpio.c \
+ ${AR5416}/ar5416_interrupts.c ${AR5416}/ar5416_keycache.c \
+ ${AR5416}/ar5416_misc.c ${AR5416}/ar5416_power.c \
+ ${AR5416}/ar5416_phy.c ${AR5416}/ar5416_recv.c \
+ ${AR5416}/ar5416_reset.c ${AR5416}/ar5416_xmit.c
+HAL_OBJS+=${OBJDIR}/ar5416_attach.o ${OBJDIR}/ar5416_beacon.o \
+ ${OBJDIR}/ar5416_eeprom.o ${OBJDIR}/ar5416_gpio.o \
+ ${OBJDIR}/ar5416_interrupts.o ${OBJDIR}/ar5416_keycache.o \
+ ${OBJDIR}/ar5416_misc.o ${OBJDIR}/ar5416_power.o \
+ ${OBJDIR}/ar5416_phy.o ${OBJDIR}/ar5416_recv.o \
+ ${OBJDIR}/ar5416_reset.o ${OBJDIR}/ar5416_xmit.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_AR9160}),1)
+HAL_SRCS+=${AR5416}/ar9160_attach.c
+HAL_OBJS+=${OBJDIR}/ar9160_attach.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_2316}),1)
+HAL_SRCS+=${AR5212}/ar2316.c
+HAL_OBJS+=${OBJDIR}/ar2316.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_2317}),1)
+HAL_SRCS+=${AR5212}/ar2317.c
+HAL_OBJS+=${OBJDIR}/ar2317.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_2133}),1)
+HAL_SRCS+=${AR5416}/ar2133.c
+HAL_OBJS+=${OBJDIR}/ar2133.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_2413}),1)
+HAL_SRCS+=${AR5212}/ar2413.c
+HAL_OBJS+=${OBJDIR}/ar2413.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_2425}),1)
+HAL_SRCS+=${AR5212}/ar2425.c
+HAL_OBJS+=${OBJDIR}/ar2425.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_5111}),1)
+HAL_SRCS+=${AR5212}/ar5111.c
+HAL_OBJS+=${OBJDIR}/ar5111.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_5112}),1)
+HAL_SRCS+=${AR5212}/ar5112.c
+HAL_OBJS+=${OBJDIR}/ar5112.o
+endif
+
+ifeq ($(strip ${AH_SUPPORT_5413}),1)
+HAL_SRCS+=${AR5212}/ar5413.c
+HAL_OBJS+=${OBJDIR}/ar5413.o
+endif
+
+SRCS+= ${HAL_SRCS}
+CLEANFILES+= ${OBJDIR}/opt_ah.h ${HAL_OBJS}
+
+#
+# NB: These are typically overridden in the target-specific specification.
+#
+LD?= ld
+#
+# These are specific to the host doing the build.
+#
+SED?= sed
+UUENCODE?=uuencode
+
+ALL= ${OBJDIR}/hal.o
+
+all: ${ALL}
+
+#
+# ARM binaries need their ELF header patched so they are marked
+# as using "virtual floating point"; otherwise the resulting .o
+# files will generate linker errors because they are marked as
+# using hardware floating point.
+#
+ifneq (,$(findstring arm-elf,${TOOLPREFIX}))
+${OBJDIR}/hal.o: ${HAL_OBJS} Makefile wackelf
+ ${LD} -o $@ -r ${LDOPTS} ${HAL_OBJS}
+ ./wackelf $@
+
+# NB: use host tools; not cross-compilation tools
+wackelf: ${PUBLIC}/wackelf.c
+ cc -o wackelf ${PUBLIC}/wackelf.c
+
+CLEANFILES+= wackelf
+else
+${OBJDIR}/hal.o: ${HAL_OBJS} Makefile
+ ${LD} -o $@ -r ${LDOPTS} ${HAL_OBJS}
+endif
+
+release: ${OBJDIR}/hal.o
+ rm -f ${PUBLIC}/${TARGET}.hal.o.uu
+ (${SED} -e '1,/^$$/d' ${HAL}/COPYRIGHT; \
+ ${SED} -n -e '/ATH_HAL_VERSION/p' ${HAL}/version.h; \
+ ${UUENCODE} ${OBJDIR}/hal.o hal.o) > ${PUBLIC}/${TARGET}.hal.o.uu
+ cmp -s ${OBJDIR}/opt_ah.h ${PUBLIC}/${TARGET}.opt_ah.h || \
+ cp ${OBJDIR}/opt_ah.h ${PUBLIC}/${TARGET}.opt_ah.h
+
+debug: ${OBJDIR}/hal.o
+ rm -f ${DEBUG}/${TARGET}.hal.o.uu
+ (${SED} -e '1,/^$$/d' ${HAL}/COPYRIGHT; \
+ ${SED} -n -e '/ATH_HAL_VERSION/p' ${HAL}/version.h; \
+ ${UUENCODE} ${OBJDIR}/hal.o hal.o) > ${DEBUG}/${TARGET}.hal.o.uu
+ cmp -s ${OBJDIR}/opt_ah.h ${DEBUG}/${TARGET}.opt_ah.h || \
+ cp ${OBJDIR}/opt_ah.h ${DEBUG}/${TARGET}.opt_ah.h
+
+${OBJDIR}/ah.o: ${HAL}/ah.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ah_eeprom_v3.o: ${HAL}/ah_eeprom_v3.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ah_eeprom_v14.o: ${HAL}/ah_eeprom_v14.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ah_regdomain.o: ${HAL}/ah_regdomain.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+
+${OBJDIR}/ar5210_attach.o: ${AR5210}/ar5210_attach.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5210_beacon.o: ${AR5210}/ar5210_beacon.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5210_interrupts.o: ${AR5210}/ar5210_interrupts.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5210_keycache.o: ${AR5210}/ar5210_keycache.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5210_misc.o: ${AR5210}/ar5210_misc.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5210_power.o: ${AR5210}/ar5210_power.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5210_phy.o: ${AR5210}/ar5210_phy.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5210_recv.o: ${AR5210}/ar5210_recv.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5210_reset.o: ${AR5210}/ar5210_reset.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5210_xmit.o: ${AR5210}/ar5210_xmit.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+
+${OBJDIR}/ar5211_attach.o: ${AR5211}/ar5211_attach.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5211_beacon.o: ${AR5211}/ar5211_beacon.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5211_interrupts.o: ${AR5211}/ar5211_interrupts.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5211_keycache.o: ${AR5211}/ar5211_keycache.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5211_misc.o: ${AR5211}/ar5211_misc.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5211_power.o: ${AR5211}/ar5211_power.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5211_phy.o: ${AR5211}/ar5211_phy.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5211_recv.o: ${AR5211}/ar5211_recv.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5211_reset.o: ${AR5211}/ar5211_reset.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5211_xmit.o: ${AR5211}/ar5211_xmit.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+
+${OBJDIR}/ar5212_ani.o: ${AR5212}/ar5212_ani.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_attach.o: ${AR5212}/ar5212_attach.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_beacon.o: ${AR5212}/ar5212_beacon.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_eeprom.o: ${AR5212}/ar5212_eeprom.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_gpio.o: ${AR5212}/ar5212_gpio.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_interrupts.o: ${AR5212}/ar5212_interrupts.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_keycache.o: ${AR5212}/ar5212_keycache.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_misc.o: ${AR5212}/ar5212_misc.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_power.o: ${AR5212}/ar5212_power.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_phy.o: ${AR5212}/ar5212_phy.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_recv.o: ${AR5212}/ar5212_recv.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_reset.o: ${AR5212}/ar5212_reset.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5212_xmit.o: ${AR5212}/ar5212_xmit.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+
+${OBJDIR}/ar5312_attach.o: ${AR5312}/ar5312_attach.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5312_eeprom.o: ${AR5312}/ar5312_eeprom.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5312_gpio.o: ${AR5312}/ar5312_gpio.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5315_gpio.o: ${AR5312}/ar5315_gpio.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5312_interrupts.o: ${AR5312}/ar5312_interrupts.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5312_misc.o: ${AR5312}/ar5312_misc.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5312_power.o: ${AR5312}/ar5312_power.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5312_reset.o: ${AR5312}/ar5312_reset.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+
+${OBJDIR}/ar2316.o: ${AR5212}/ar2316.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar2317.o: ${AR5212}/ar2317.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar2413.o: ${AR5212}/ar2413.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar2425.o: ${AR5212}/ar2425.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5111.o: ${AR5212}/ar5111.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5112.o: ${AR5212}/ar5112.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5413.o: ${AR5212}/ar5413.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+
+${OBJDIR}/ar5416_attach.o: ${AR5416}/ar5416_attach.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_beacon.o: ${AR5416}/ar5416_beacon.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_eeprom.o: ${AR5416}/ar5416_eeprom.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_gpio.o: ${AR5416}/ar5416_gpio.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_interrupts.o: ${AR5416}/ar5416_interrupts.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_keycache.o: ${AR5416}/ar5416_keycache.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_misc.o: ${AR5416}/ar5416_misc.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_power.o: ${AR5416}/ar5416_power.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_phy.o: ${AR5416}/ar5416_phy.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_recv.o: ${AR5416}/ar5416_recv.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_reset.o: ${AR5416}/ar5416_reset.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+${OBJDIR}/ar5416_xmit.o: ${AR5416}/ar5416_xmit.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+
+${OBJDIR}/ar9160_attach.o: ${AR5416}/ar9160_attach.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+
+${OBJDIR}/ar2133.o: ${AR5416}/ar2133.c
+ ${CC} -c -o $@ ${CFLAGS} $<
+
+${OBJDIR}/opt_ah.h:
+ test -d ${OBJDIR} || mkdir -p ${OBJDIR}
+ifeq ($(strip ${AH_SUPPORT_AR5210}),1)
+ echo "#define AH_SUPPORT_AR5210 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_AR5211}),1)
+ echo "#define AH_SUPPORT_AR5211 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_AR5212}),1)
+ echo "#define AH_SUPPORT_AR5212 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_AR5312}),1)
+ echo "#define AH_SUPPORT_AR5312 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_AR5416}),1)
+ echo "#define AH_SUPPORT_AR5416 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_AR9160}),1)
+ echo "#define AH_SUPPORT_AR9160 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_2316}),1)
+ echo "#define AH_SUPPORT_2316 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_2317}),1)
+ echo "#define AH_SUPPORT_2317 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_2133}),1)
+ echo "#define AH_SUPPORT_2133 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_2413}),1)
+ echo "#define AH_SUPPORT_2413 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_2417}),1)
+ echo "#define AH_SUPPORT_2417 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_2425}),1)
+ echo "#define AH_SUPPORT_2425 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_5111}),1)
+ echo "#define AH_SUPPORT_5111 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_5112}),1)
+ echo "#define AH_SUPPORT_5112 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_SUPPORT_5413}),1)
+ echo "#define AH_SUPPORT_5413 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_ASSERT}),1)
+ echo "#define AH_ASSERT 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_DEBUG_ALQ}),1)
+ echo "#define AH_DEBUG_ALQ 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_DEBUG}),1)
+ echo "#define AH_DEBUG 1" >> ${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_WRITE_REGDOMAIN}),1)
+ echo "#define AH_SUPPORT_WRITE_REGDOMAIN 1" >>${OBJDIR}/opt_ah.h
+ echo "#define AH_SUPPORT_WRITE_EEPROM 1">>${OBJDIR}/opt_ah.h
+else
+ifeq ($(strip ${AH_WRITE_EEPROM}),1)
+ echo "#define AH_SUPPORT_WRITE_EEPROM 1">>${OBJDIR}/opt_ah.h
+endif
+endif
+ifeq ($(strip ${AH_DEBUG_COUNTRY}),1)
+ echo "#define AH_DEBUG_COUNTRY 1" >>${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_REGOPS_FUNC}),1)
+ echo "#define AH_REGOPS_FUNC 1" >>${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_DISABLE_WME}),1)
+ echo "#define AH_DISABLE_WME 1" >>${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_ENABLE_AP_SUPPORT}),1)
+ echo "#define AH_ENABLE_AP_SUPPORT 1" >>${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_PRIVATE_DIAG}),1)
+ echo "#define AH_PRIVATE_DIAG 1" >>${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_NEED_DESC_SWAP}),1)
+ echo "#define AH_NEED_DESC_SWAP 1" >>${OBJDIR}/opt_ah.h
+endif
+ifeq ($(strip ${AH_ENABLE_FORCEBIAS}),1)
+ echo "#define AH_ENABLE_FORCEBIAS 1" >>${OBJDIR}/opt_ah.h
+endif
+
+clean:
+ rm -f ${ALL} ${OBJS} ${CLEANFILES}
+ -rmdir -p ${OBJDIR}
+
+depend: beforedepend .depend afterdepend
+${OBJDIR}/.depend: ${SRCS} ${OBJDIR}/opt_ah.h
+ rm -f ${OBJDIR}/.depend
+ ${CC} -M ${CFLAGS} ${SRCS} | \
+ ${SED} 's,\(.*\)\.o:,${OBJDIR}/\1.o:,g' > ${OBJDIR}/.depend
+afterdepend:
+-include ${OBJDIR}/.depend
OpenPOWER on IntegriCloud