xref: /freebsd/sys/modules/brcm80211/brcmfmac/Makefile (revision 98c44ccb01d9461da477ec8d784c763e4d03fb36)
1902136e0SBjoern A. ZeebDEVDIR=	${SRCTOP}/sys/contrib/dev/broadcom/brcm80211/brcmfmac
2902136e0SBjoern A. Zeeb
3902136e0SBjoern A. Zeeb.PATH:	${DEVDIR}
4902136e0SBjoern A. Zeeb
5902136e0SBjoern A. Zeeb# Should split this up into a core driver and 3 more
6*98c44ccbSBjoern A. ZeebWITH_PCI=1
7902136e0SBjoern A. ZeebWITH_SDIO=0
8902136e0SBjoern A. ZeebWITH_USB=0
9902136e0SBjoern A. Zeeb
10902136e0SBjoern A. ZeebWITH_DMI=0
11902136e0SBjoern A. ZeebWITH_OF=0
12902136e0SBjoern A. ZeebWITH_DEBUG=1
13902136e0SBjoern A. ZeebWITH_TRACING=0	# ftrace probes; simple enough to change possibly; keep 0!
14902136e0SBjoern A. Zeeb
15902136e0SBjoern A. ZeebKMOD=	if_brcmfmac
16902136e0SBjoern A. Zeeb
17902136e0SBjoern A. ZeebSRCS=	core.c
18902136e0SBjoern A. ZeebSRCS+=	btcoex.c cfg80211.c chip.c common.c feature.c firmware.c
19902136e0SBjoern A. ZeebSRCS+=	fweh.c fwil.c fwvid.c p2p.c pno.c proto.c vendor.c xtlv.c
20902136e0SBjoern A. Zeeb
21902136e0SBjoern A. ZeebSRCS+=	wcc/core.c cyw/core.c bca/core.c
22902136e0SBjoern A. Zeeb
23*98c44ccbSBjoern A. Zeeb# PCI parts; PCI needs to be compiled into the kernel and cannot be loaded.
24*98c44ccbSBjoern A. Zeeb.if defined(WITH_PCI) && ${WITH_PCI} > 0 && ${KERN_OPTS:MDEV_PCI}
25902136e0SBjoern A. ZeebSRCS+=	pcie.c msgbuf.c commonring.c flowring.c
26*98c44ccbSBjoern A. ZeebCFLAGS+=	-DCONFIG_BRCMFMAC_PCIE=1
27902136e0SBjoern A. Zeeb.endif
28902136e0SBjoern A. Zeeb
29*98c44ccbSBjoern A. Zeeb# SDIO parts; SDIO depends on an MMCCAM kernel.
30*98c44ccbSBjoern A. Zeeb.if defined(WITH_SDIO) && ${WITH_SDIO} > 0 && ${KERN_OPTS:MMMCCAM}
31902136e0SBjoern A. ZeebSRCS+=	sdio.c bcmsdh.c
32902136e0SBjoern A. ZeebSRCS+=	sdio_if.h
33902136e0SBjoern A. ZeebSRCS+=	sdiodevs.h
34*98c44ccbSBjoern A. ZeebCFLAGS+=	-DCONFIG_BRCMFMAC_SDIO=1
35902136e0SBjoern A. Zeeb.endif
36902136e0SBjoern A. Zeeb
37*98c44ccbSBjoern A. Zeeb# USB parts; USB can be loaded and is unconditional on any kernel config.
38902136e0SBjoern A. Zeeb.if defined(WITH_USB) && ${WITH_USB} > 0
39902136e0SBjoern A. ZeebSRCS+=	usb.c
40*98c44ccbSBjoern A. ZeebCFLAGS+=	-DCONFIG_BRCMFMAC_USB=1
41902136e0SBjoern A. Zeeb.endif
42902136e0SBjoern A. Zeeb
43902136e0SBjoern A. Zeeb.if (defined(WITH_SDIO) && ${WITH_SDIO} > 0) || \
44902136e0SBjoern A. Zeeb    (defined(WITH_USB) && ${WITH_USB} > 0)
45902136e0SBjoern A. ZeebCFLAGS+=	-DCONFIG_BRCMFMAC_PROTO_BCDC=1
46902136e0SBjoern A. ZeebSRCS+=	bcdc.c fwsignal.c
47902136e0SBjoern A. Zeeb.endif
48902136e0SBjoern A. Zeeb
49902136e0SBjoern A. Zeeb.if defined(WITH_DMI) && ${WITH_DMI} > 0
50902136e0SBjoern A. ZeebSRCS+=	dmi.c
51902136e0SBjoern A. Zeeb.endif
52902136e0SBjoern A. Zeeb
53902136e0SBjoern A. Zeeb.if defined(WITH_OF) && ${WITH_OF} > 0
54902136e0SBjoern A. ZeebSRCS+=	of.c
55902136e0SBjoern A. Zeeb.endif
56902136e0SBjoern A. Zeeb
57902136e0SBjoern A. Zeeb.if defined(WITH_DEBUG) && ${WITH_DEBUG} > 0
58902136e0SBjoern A. ZeebCFLAGS+=	-DDEBUG=${WITH_DEBUG}
59902136e0SBjoern A. ZeebSRCS+=	debug.c
60902136e0SBjoern A. Zeeb.endif
61902136e0SBjoern A. Zeeb
62902136e0SBjoern A. Zeeb.if defined(WITH_TRACING) && ${WITH_TRACING} > 0
63902136e0SBjoern A. ZeebSRCS+=	tracepoint.c
64902136e0SBjoern A. Zeeb.endif
65902136e0SBjoern A. Zeeb
66902136e0SBjoern A. Zeeb# Other
67902136e0SBjoern A. ZeebSRCS+=	bus_if.h device_if.h pci_if.h vnode_if.h
68902136e0SBjoern A. ZeebSRCS+=	${LINUXKPI_GENSRCS}
69902136e0SBjoern A. ZeebSRCS+=	opt_wlan.h opt_inet6.h opt_inet.h opt_acpi.h
70902136e0SBjoern A. Zeeb
71902136e0SBjoern A. ZeebCFLAGS+=	-DKBUILD_MODNAME='"brcmfmac"'
72902136e0SBjoern A. ZeebCFLAGS+=	-DLINUXKPI_VERSION=61700
73902136e0SBjoern A. Zeeb
74902136e0SBjoern A. ZeebCFLAGS+=	-I${DEVDIR}
75902136e0SBjoern A. ZeebCFLAGS+=	-I${DEVDIR}/../include
76902136e0SBjoern A. ZeebCFLAGS+=	${LINUXKPI_INCLUDES}
77902136e0SBjoern A. ZeebCFLAGS+=	-ferror-limit=0
78902136e0SBjoern A. Zeeb
79902136e0SBjoern A. Zeeb#CFLAGS+=	-DCONFIG_BRCM_TRACING=${WITH_TRACING}
80*98c44ccbSBjoern A. ZeebCFLAGS+=	-DCONFIG_BRCMFMAC_PROTO_MSGBUF=${WITH_PCI}
81902136e0SBjoern A. ZeebCFLAGS+=	-DCONFIG_BRCMDBG=${WITH_DEBUG}
82902136e0SBjoern A. Zeeb
83902136e0SBjoern A. Zeeb#CFLAGS+=	-DCONFIG_DMI=${WITH_DMI}
84902136e0SBjoern A. Zeeb#CFLAGS+=	-DCONFIG_OF=${WITH_OF}
85902136e0SBjoern A. Zeeb
86902136e0SBjoern A. Zeeb#CFLAGS+=	-DCONFIG_PM_SLEEP=
87902136e0SBjoern A. Zeeb
88902136e0SBjoern A. Zeeb#CFLAGS+=	-DCONFIG_ACPI=0
89902136e0SBjoern A. Zeeb#CFLAGS+=	-DCONFIG_PM
90902136e0SBjoern A. Zeeb#CFLAGS+=	-DCONFIG_IPV6=0
91902136e0SBjoern A. Zeeb
92902136e0SBjoern A. Zeeb.include <bsd.kmod.mk>
93