blob: 9c401664e4c20c8b0087d11cb438eb776e0aab7e [file] [log] [blame] [edit]
export KERNEL_SRC := /lib/modules/$(shell uname -r)/build
#################### Configurations ####################
# Compile Options for bt driver configuration.
CONFIG_SUPPORT_BT_DL_WIFI_PATCH=y
CONFIG_SUPPORT_BT_DL_ZB_PATCH=y
CONFIG_SUPPORT_BLUEZ=n
CONFIG_SUPPORT_DVT=n
CONFIG_SUPPORT_HW_DVT=n
CONFIG_SUPPORT_MULTI_DEV_NODE=n
ifndef TOP
TOP := $(srctree)/..
endif
ifneq ($(TARGET_BUILD_VARIANT), user)
ccflags-y += -DBUILD_QA_DBG=1
else
ccflags-y += -DBUILD_QA_DBG=0
endif
ifeq ($(CONFIG_SUPPORT_BT_DL_WIFI_PATCH), y)
ccflags-y += -DCFG_SUPPORT_BT_DL_WIFI_PATCH=1
else
ccflags-y += -DCFG_SUPPORT_BT_DL_WIFI_PATCH=0
endif
ifeq ($(CONFIG_SUPPORT_BT_DL_ZB_PATCH), y)
ccflags-y += -DCFG_SUPPORT_BT_DL_ZB_PATCH=1
else
ccflags-y += -DCFG_SUPPORT_BT_DL_ZB_PATCH=0
endif
ifeq ($(CONFIG_SUPPORT_BLUEZ), y)
ccflags-y += -DCFG_SUPPORT_BLUEZ=1
else
ccflags-y += -DCFG_SUPPORT_BLUEZ=0
endif
ifeq ($(CONFIG_SUPPORT_HW_DVT), y)
ccflags-y += -DCFG_SUPPORT_HW_DVT=1
else
ccflags-y += -DCFG_SUPPORT_HW_DVT=0
endif
ifeq ($(SUPPORT_WAKEUP_IRQ), yes)
ccflags-y += -DCFG_SUPPORT_WAKEUP_IRQ
endif
ifeq ($(CONFIG_SUPPORT_DVT), y)
ccflags-y += -DCFG_SUPPORT_DVT=1
else
ccflags-y += -DCFG_SUPPORT_DVT=0
endif
ifeq ($(CONFIG_SUPPORT_MULTI_DEV_NODE), y)
ccflags-y += -DCFG_SUPPORT_MULTI_DEV_NODE=1
else
ccflags-y += -DCFG_SUPPORT_MULTI_DEV_NODE=0
endif
#################### Configurations ####################
# For chip interface, driver supports "usb", "sdio", "uart_tty", "uart_serdev" and "btif"
MTK_CHIP_IF := uart_tty
ifeq ($(MTK_CHIP_IF), sdio)
MOD_NAME = btmtk_sdio_unify
CFILES := sdio/btmtksdio.c btmtk_woble.c btmtk_buffer_mode.c btmtk_chip_reset.c
ccflags-y += -DCHIP_IF_SDIO
ccflags-y += -DSDIO_DEBUG=0
ccflags-y += -I$(src)/include/sdio
else ifeq ($(MTK_CHIP_IF), usb)
MOD_NAME = btmtk_usb_unify
CFILES := usb/btmtkusb.c btmtk_woble.c btmtk_chip_reset.c
ccflags-y += -DCHIP_IF_USB
ccflags-y += -I$(src)/include/usb
else ifeq ($(MTK_CHIP_IF), uart_tty)
MOD_NAME = btmtk_uart_unify
CONFIG_SUPPORT_DEVICE_NODE = y
CFILES := uart/btmtktty.c btmtk_woble.c btmtk_chip_reset.c
ccflags-y += -DCHIP_IF_UART_TTY
ccflags-y += -I$(src)/include/uart/tty
else ifeq ($(MTK_CHIP_IF), uart_serdev)
MOD_NAME = btmtk_uart_unify
ccflags-y += -DCHIP_IF_UART_SERDEV
CFILES := uart/btmtkserdev.c
ccflags-y += -I$(src)/include/uart/serdev
else
MOD_NAME = btmtk_btif_unify
CFILES := btif/btmtk_btif.c
ccflags-y += -DCHIP_IF_BTIF
ccflags-y += -I$(src)/include/btif
endif
MTK_PROJ_TYPE := ce
ifeq ($(CONFIG_SUPPORT_DEVICE_NODE), y)
CFILES += btmtk_queue.c btmtk_char_dev.c
endif
ifeq ($(CONFIG_SUPPORT_DEVICE_NODE), y)
ccflags-y += -DUSE_DEVICE_NODE=1
ccflags-y += -DSLEEP_ENABLE=1
else
ccflags-y += -DUSE_DEVICE_NODE=0
ccflags-y += -DSLEEP_ENABLE=0
endif
$(info [BT_Drv] MTK_PROJ_TYPE = $(MTK_PROJ_TYPE) src = $(src))
#ifeq ($(MTK_PROJ_TYPE), sp)
ifeq ($(CONFIG_SUPPORT_DEVICE_NODE), y)
CFILES += proj/btmtk_proj_sp.c proj/btmtk_proj_sp_debug.c
ccflags-y += -DANDROID_OS
ccflags-y += -I$(srctree)/drivers/misc/mediatek/connectivity/power_throttling
#else ifeq ($(MTK_PROJ_TYPE), ce)
else
CFILES += proj/btmtk_proj_ce.c
ccflags-y += -DLINUX_OS
endif
CFILES += btmtk_main.c btmtk_fw_log.c
ccflags-y += -I$(src)/include/ -I$(KERNEL_SRC)/include/ -I$(KERNEL_SRC)/drivers/bluetooth -I$(src)/proj/include/
ifeq ($(CONFIG_SUPPORT_DEVICE_NODE), y)
$(info [BT_Drv] TOP = $(TOP))
$(info [BT_Drv] KBUILD_EXTRA_SYMBOLS = $(KBUILD_EXTRA_SYMBOLS))
#KBUILD_EXTRA_SYMBOLS := /mfs/mtkslt1121/mtk24223/CAS_REAL/alps-dev-s0_bsp-connac3-1210--2022_03_08_12_00/merged/out_krn/target/product/mgk_64_k510/obj/ETC/conninfra.ko_intermediates/LINKED/Module.symvers
CONN_INFRA_SRC := $(TOP)/vendor/mediatek/kernel_modules/connectivity/conninfra
CONN_FEM_SRC := $(TOP)/vendor/mediatek/kernel_modules/connectivity/connfem
ccflags-y += -I$(CONN_INFRA_SRC)/include
ccflags-y += -I$(CONN_INFRA_SRC)/conn_drv/connv3/debug_utility
ccflags-y += -I$(CONN_INFRA_SRC)/conn_drv/connv3/debug_utility/include
ccflags-y += -I$(CONN_INFRA_SRC)/conn_drv/connv3/debug_utility/connsyslog
ccflags-y += -I$(CONN_INFRA_SRC)/conn_drv/connv3/debug_utility/coredump
ccflags-y += -I$(CONN_FEM_SRC)/include
endif
ccflags-y += -Werror
$(MOD_NAME)-objs := $(CFILES:.c=.o)
obj-m += $(MOD_NAME).o
ifneq ($(TARGET_BUILD_VARIANT), user)
ccflags-y += -DBTMTK_DEBUG_SOP
endif
#VPATH = /opt/toolchains/gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux
#UART_MOD_NAME = btmtk_uart
#UART_CFILES := \
# btmtk_uart_main.c
#$(UART_MOD_NAME)-objs := $(UART_CFILES:.c=.o)
###############################################################################
# Common
###############################################################################
#obj-m := $(UART_MOD_NAME).o
all:
make -C $(KERNEL_SRC) M=$(PWD) modules
clean:
make -C $(KERNEL_SRC) M=$(PWD) clean
# Check coding style
# export IGNORE_CODING_STYLE_RULES := NEW_TYPEDEFS,LEADING_SPACE,CODE_INDENT,SUSPECT_CODE_INDENT
ccs:
./util/checkpatch.pl -f ./sdio/btmtksdio.c
./util/checkpatch.pl -f ./include/sdio/btmtk_sdio.h
./util/checkpatch.pl -f ./include/btmtk_define.h
./util/checkpatch.pl -f ./include/btmtk_drv.h
./util/checkpatch.pl -f ./include/btmtk_chip_if.h
./util/checkpatch.pl -f ./include/btmtk_main.h
./util/checkpatch.pl -f ./include/btmtk_buffer_mode.h
./util/checkpatch.pl -f ./include/uart/tty/btmtk_uart_tty.h
./util/checkpatch.pl -f ./uart/btmtktty.c
./util/checkpatch.pl -f ./include/btmtk_fw_log.h
./util/checkpatch.pl -f ./include/btmtk_woble.h
./util/checkpatch.pl -f ./include/uart/btmtk_uart.h
./util/checkpatch.pl -f ./uart/btmtk_uart_main.c
./util/checkpatch.pl -f ./include/usb/btmtk_usb.h
./util/checkpatch.pl -f ./usb/btmtkusb.c
./util/checkpatch.pl -f ./proj/btmtk_proj_ce.c
./util/checkpatch.pl -f ./proj/btmtk_proj_sp.c
./util/checkpatch.pl -f btmtk_fw_log.c
./util/checkpatch.pl -f btmtk_main.c
./util/checkpatch.pl -f btmtk_buffer_mode.c
./util/checkpatch.pl -f btmtk_woble.c
./util/checkpatch.pl -f btmtk_chip_reset.c
./util/checkpatch.pl -f btmtk_queue.c
./util/checkpatch.pl -f btmtk_char_dev.c