MediaTek move some usb interface related function to btmtk.c which may cause build failed if BT USB Kconfig wasn't enabled. Fix undefined reference by adding config check. Fixes: 39a9e1c69e74 Bluetooth: btmtk: move btusb_mtk_hci_wmt_sync to btmtk.c Reported-by: kernel test robot <lkp@xxxxxxxxx> Closes: https://lore.kernel.org/oe-kbuild-all/202407091928.AH0aGZnx-lkp@xxxxxxxxx/ Signed-off-by: Chris Lu <chris.lu@xxxxxxxxxxxx> --- drivers/bluetooth/btmtk.c | 2 ++ drivers/bluetooth/btmtk.h | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/drivers/bluetooth/btmtk.c b/drivers/bluetooth/btmtk.c index b7c348687a77..9789296ad4f6 100644 --- a/drivers/bluetooth/btmtk.c +++ b/drivers/bluetooth/btmtk.c @@ -437,6 +437,7 @@ int btmtk_process_coredump(struct hci_dev *hdev, struct sk_buff *skb) } EXPORT_SYMBOL_GPL(btmtk_process_coredump); +#if IS_ENABLED(CONFIG_BT_HCIBTUSB_MTK) static void btmtk_usb_wmt_recv(struct urb *urb) { struct hci_dev *hdev = urb->context; @@ -1487,6 +1488,7 @@ int btmtk_usb_shutdown(struct hci_dev *hdev) return 0; } EXPORT_SYMBOL_GPL(btmtk_usb_shutdown); +#endif MODULE_AUTHOR("Sean Wang <sean.wang@xxxxxxxxxxxx>"); MODULE_AUTHOR("Mark Chen <mark-yw.chen@xxxxxxxxxxxx>"); diff --git a/drivers/bluetooth/btmtk.h b/drivers/bluetooth/btmtk.h index 453ed5131a37..890dbe9beff8 100644 --- a/drivers/bluetooth/btmtk.h +++ b/drivers/bluetooth/btmtk.h @@ -165,6 +165,7 @@ struct btmtk_data { btmtk_reset_sync_func_t reset_sync; struct btmtk_coredump_info cd_info; +#if IS_ENABLED(CONFIG_BT_HCIBTUSB_MTK) struct usb_device *udev; struct usb_interface *intf; struct usb_anchor *ctrl_anchor; @@ -177,6 +178,7 @@ struct btmtk_data { /* spinlock for ISO data transmission */ spinlock_t isorxlock; +#endif }; typedef int (*wmt_cmd_sync_func_t)(struct hci_dev *, @@ -202,6 +204,7 @@ int btmtk_process_coredump(struct hci_dev *hdev, struct sk_buff *skb); void btmtk_fw_get_filename(char *buf, size_t size, u32 dev_id, u32 fw_ver, u32 fw_flavor); +#if IS_ENABLED(CONFIG_BT_HCIBTUSB_MTK) int btmtk_usb_subsys_reset(struct hci_dev *hdev, u32 dev_id); int btmtk_usb_recv_acl(struct hci_dev *hdev, struct sk_buff *skb); @@ -216,6 +219,7 @@ int btmtk_usb_suspend(struct hci_dev *hdev); int btmtk_usb_setup(struct hci_dev *hdev); int btmtk_usb_shutdown(struct hci_dev *hdev); +#endif #else static inline int btmtk_set_bdaddr(struct hci_dev *hdev, -- 2.18.0