KMOD	= df5547
SRCS	= df5547.c
SRCS	+= bus_if.h device_if.h

# The production firewire.c + fwmem.c are #included into df5547.c.  The
# guest kernel (X86_64_GENERIC, `device firewire`) already defines their
# globals, so every exported symbol is -D-renamed to a module-private
# dfw_* name (same proven set as the DF-5413 family harness, minus the
# fwdev.c/fwdma.c entries those files needed, plus the fwmem.c block-RPC
# exports and M_FWMEM).
KCFLAGS+= -Dfirewire=dfw_firewire -D_hw_firewire=_hw_dfw_firewire \
	-D_hw_firewire_fwmem=_hw_dfw_firewire_fwmem \
	-Dfirewire_debug=dfw_debug -Dtry_bmr=dfw_try_bmr \
	-Dfirewire_devclass=dfw_devclass -Dlinkspeed=dfw_linkspeed \
	-Dgap_cnt=dfw_gap_cnt \
	-DM_FW=DFW_M_FW -DM_FWXFER=DFW_M_FWXFER -DM_FWMEM=DFW_M_FWMEM \
	-Dfw_noderesolve_nodeid=dfw_nrn -Dfw_noderesolve_eui64=dfw_nre \
	-Dfw_asyreq=dfw_asyreq -Dfw_asy_callback=dfw_asycb \
	-Dfw_asybusy=dfw_asybusy -Dfw_busreset=dfw_busreset \
	-Dfw_init=dfw_init -Dfw_bindlookup=dfw_bindlookup \
	-Dfw_bindadd=dfw_bindadd -Dfw_bindremove=dfw_bindremove \
	-Dfw_xfer_alloc=dfw_xa -Dfw_xfer_alloc_buf=dfw_xab \
	-Dfw_xfer_done=dfw_xd -Dfw_xfer_unload=dfw_xu \
	-Dfw_xfer_free_buf=dfw_xfb -Dfw_xfer_free=dfw_xf \
	-Dfw_asy_callback_free=dfw_asycbf -Dfw_sidrcv=dfw_sidrcv \
	-Dasyreqq=dfw_asyreqq -Dfw_rcv=dfw_rcv \
	-Dfw_drain_txq=dfw_drain -Dfw_crc16=dfw_crc16 \
	-Dfwdev_makedev=dfw_fwdev_makedev \
	-Dfwdev_destroydev=dfw_fwdev_destroydev \
	-Dfwdev_clone=dfw_fwdev_clone \
	-Dfwmem_open=dfw_fwmem_open -Dfwmem_close=dfw_fwmem_close \
	-Dfwmem_ioctl=dfw_fwmem_ioctl -Dfwmem_mmap=dfw_fwmem_mmap \
	-Dfwmem_strategy=dfw_fwmem_strategy \
	-Dfwmem_read_quad=dfw_mrq -Dfwmem_write_quad=dfw_mwq \
	-Dfwmem_read_block=dfw_mrb -Dfwmem_write_block=dfw_mwb \
	-Dfwmem_debug=dfw_fwmem_debug
KCFLAGS+= -I${.CURDIR}/shim -I${SYSDIR} -Wall

.include <bsd.kmod.mk>
