Skip to contentSkip to conversation

Bluetooth: btmtk: add USB dependencies

PATCH In review Arnd Bergmann 4 participants 4 messages Jul 19, 2024

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Bluetooth: btmtk: add USB dependencies

From: Arnd Bergmann <[email protected]>

The mediatek bluetooth drivers have a common portion that is now used for all front-ends (usb, sdio, uart) but that internally relies on USB interface functions:

ERROR: modpost: "usb_alloc_urb" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_anchor_urb" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_submit_urb" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_free_urb" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_unanchor_urb" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_kill_anchored_urbs" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_set_interface" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_control_msg" [drivers/bluetooth/btmtk.ko] undefined!

It would be possible to split this up further, but in practice anything that uses this driver will have USB enabled anyway and it only matters for build testing, so just go with a much stricter dependency.

Fixes f5c3f98946e3 ("Bluetooth: btmtkuart: rely on BT_MTK module")
Fixes 3a722044aacf ("Bluetooth: btmtksido: rely on BT_MTK module")
---
 drivers/bluetooth/Kconfig | 3 +++
 1 file changed, 3 insertions(+)
drivers/bluetooth/Kconfig +3 -0
index 44a2de58337b..2894a345562c 100644
@@ -21,6 +21,7 @@ config BT_QCA
 
 config BT_MTK
 	tristate
+	depends on USB
 	select FW_LOADER
 
 config BT_HCIBTUSB
@@ -413,6 +414,7 @@ config BT_ATH3K
 config BT_MTKSDIO
 	tristate "MediaTek HCI SDIO driver"
 	depends on MMC
+	depends on USB
 	select BT_MTK
 	help
 	  MediaTek Bluetooth HCI SDIO driver.
@@ -425,6 +427,7 @@ config BT_MTKSDIO
 config BT_MTKUART
 	tristate "MediaTek HCI UART driver"
 	depends on SERIAL_DEV_BUS
+	depends on USB
 	select BT_MTK
 	help
 	  MediaTek Bluetooth HCI UART driver.
Signature · 1 line
2.39.2
#1 lore raw

This is automated email and please do not reply to this email!

Dear submitter,

Thank you for submitting the patches to the linux bluetooth mailing list. This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=872493

---Test result---

Test Summary:

CheckPatch                    FAIL      0.88 seconds
GitLint                       PASS      0.31 seconds
SubjectPrefix                 PASS      0.12 seconds
BuildKernel                   PASS      29.64 seconds
CheckAllWarning               PASS      32.00 seconds
CheckSparse                   PASS      37.68 seconds
CheckSmatch                   PASS      101.93 seconds
BuildKernel32                 PASS      28.50 seconds
TestRunnerSetup               PASS      525.23 seconds
TestRunner_l2cap-tester       PASS      22.27 seconds
TestRunner_iso-tester         PASS      32.67 seconds
TestRunner_bnep-tester        PASS      4.85 seconds
TestRunner_mgmt-tester        PASS      113.03 seconds
TestRunner_rfcomm-tester      PASS      7.46 seconds
TestRunner_sco-tester         PASS      15.01 seconds
TestRunner_ioctl-tester       PASS      7.97 seconds
TestRunner_mesh-tester        PASS      5.99 seconds
TestRunner_smp-tester         PASS      6.95 seconds
TestRunner_userchan-tester    PASS      5.07 seconds
IncrementalBuild              PASS      27.55 seconds

Details
##############################
Test: CheckPatch - FAIL
Desc: Run checkpatch.pl script
Output:
Bluetooth: btmtk: add USB dependencies
WARNING: Prefer a maximum 75 chars per line (possible unwrapped commit description?) #79:
ERROR: modpost: "usb_kill_anchored_urbs" [drivers/bluetooth/btmtk.ko] undefined!

total: 0 errors, 1 warnings, 21 lines checked

NOTE: For some of the reported defects, checkpatch may be able to
mechanically convert to the typical style using --fix or --fix-inplace.

/github/workspace/src/src/13737152.patch has style problems, please review.

NOTE: Ignored message types: UNKNOWN_COMMIT_ID

NOTE: If any of the errors are false positives, please report
them to the maintainer, see CHECKPATCH in MAINTAINERS.

---
Regards,
Linux Bluetooth

#2 lore raw
In reply to Arnd Bergmann

Hi Arnd,

Quoted 56 lines · Arnd Bergmann

From: Arnd Bergmann <[email protected]>

The mediatek bluetooth drivers have a common portion that is now used for all front-ends (usb, sdio, uart) but that internally relies on USB interface functions:

ERROR: modpost: "usb_alloc_urb" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_anchor_urb" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_submit_urb" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_free_urb" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_unanchor_urb" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_kill_anchored_urbs" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_set_interface" [drivers/bluetooth/btmtk.ko] undefined!
ERROR: modpost: "usb_control_msg" [drivers/bluetooth/btmtk.ko] undefined!

It would be possible to split this up further, but in practice anything that uses this driver will have USB enabled anyway and it only matters for build testing, so just go with a much stricter dependency.

Fixes f5c3f98946e3 ("Bluetooth: btmtkuart: rely on BT_MTK module")
Fixes 3a722044aacf ("Bluetooth: btmtksido: rely on BT_MTK module")
---
 drivers/bluetooth/Kconfig | 3 +++
 1 file changed, 3 insertions(+)
drivers/bluetooth/Kconfig +3 -1
index 44a2de58337b..2894a345562c 100644
@@ -21,6 +21,7 @@ config BT_QCA
 
 config BT_MTK
        tristate
+       depends on USB
        select FW_LOADER
 
 config BT_HCIBTUSB
@@ -413,6 +414,7 @@ config BT_ATH3K
 config BT_MTKSDIO
        tristate "MediaTek HCI SDIO driver"
        depends on MMC
+       depends on USB
        select BT_MTK
        help
          MediaTek Bluetooth HCI SDIO driver.
@@ -425,6 +427,7 @@ config BT_MTKSDIO
 config BT_MTKUART
        tristate "MediaTek HCI UART driver"
        depends on SERIAL_DEV_BUS
+       depends on USB
        select BT_MTK
        help
          MediaTek Bluetooth HCI UART driver.
--
Quoted 1 line

2.39.2

Thanks for the fix, but we went with a different one:
https://patchwork.kernel.org/project/bluetooth/patch/[email protected]/

Signature · 1 line
Luiz Augusto von Dentz
#3 lore raw
Quoted 4 lines · Luiz Augusto von Dentz

On Fri, Jul 19, 2024 at 6:06 AM Arnd Bergmann <[email protected]> wrote:

Thanks for the fix, but we went with a different one:
https://patchwork.kernel.org/project/bluetooth/patch/[email protected]/

I thought about doing that at first, but I believe this is still broken for a configuration with CONFIG_USB=m, CONFIG_BT_HCIBTUSB=m, CONFIG_MMC=y, CONFIG_BT_MTKSDIO=y. I haven't tried this, but I think this should result in a CONFIG_BT_MTK=y with the common module being built-in but unable to link against the USB module.

Arnd