Re: [PATCH] Bluetooth: fix BT dependency for submodules

Luiz Augusto von Dentz <[email protected]>
Newsgroups org.kernel.vger.linux-bluetooth
Message-ID <CABBYNZLJALsURmOgwnyEaLqj76nxVqdaGpEFAc2qzqGUNant6Q@mail.gmail.com>
Hi Iva,

On Mon, Jul 20, 2026 at 11:09 AM Iva Kasprzaková <[email protected]> wrote:
>
> Rfcomm (BT_RFCOMM), bnep (BT_BNEP), and hidp (BT_HIDP) modules are
> dependent on the bluetooth module (BT, tristate) only transitively
> through the boolean BT_BREDR. Therefore, the modules can be selected as
> built-in even if the BT=m. The combination of BT=m and =y for the said
> modules leads to the kernel build system silently ignoring those
> modules, without ever compiling them as built-in or as loadable modules.
>
> Add BT as a direct dependency to Kconfig of rfcomm, bnep and hidp. The
> modules set to =y when BT=m will default to =m, rather then getting
> silently ignored by the build system.
>
> Signed-off-by: Iva Kasprzaková <[email protected]>
> ---
>  net/bluetooth/bnep/Kconfig   | 2 +-
>  net/bluetooth/hidp/Kconfig   | 2 +-
>  net/bluetooth/rfcomm/Kconfig | 2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/net/bluetooth/bnep/Kconfig b/net/bluetooth/bnep/Kconfig
> index aac02b5b0d17..f8087e2d2c00 100644
> --- a/net/bluetooth/bnep/Kconfig
> +++ b/net/bluetooth/bnep/Kconfig
> @@ -1,7 +1,7 @@
>  # SPDX-License-Identifier: GPL-2.0-only
>  config BT_BNEP
>         tristate "BNEP protocol support"
> -       depends on BT_BREDR
> +       depends on BT && BT_BREDR
>         select CRC32
>         help
>           BNEP (Bluetooth Network Encapsulation Protocol) is Ethernet
> diff --git a/net/bluetooth/hidp/Kconfig b/net/bluetooth/hidp/Kconfig
> index e08aae35351a..ba52c7296f18 100644
> --- a/net/bluetooth/hidp/Kconfig
> +++ b/net/bluetooth/hidp/Kconfig
> @@ -1,7 +1,7 @@
>  # SPDX-License-Identifier: GPL-2.0-only
>  config BT_HIDP
>         tristate "HIDP protocol support"
> -       depends on BT_BREDR && HID
> +       depends on BT && BT_BREDR && HID
>         help
>           HIDP (Human Interface Device Protocol) is a transport layer
>           for HID reports.  HIDP is required for the Bluetooth Human
> diff --git a/net/bluetooth/rfcomm/Kconfig b/net/bluetooth/rfcomm/Kconfig
> index 9b9953ebf4c0..e7af2d565cea 100644
> --- a/net/bluetooth/rfcomm/Kconfig
> +++ b/net/bluetooth/rfcomm/Kconfig
> @@ -1,7 +1,7 @@
>  # SPDX-License-Identifier: GPL-2.0-only
>  config BT_RFCOMM
>         tristate "RFCOMM protocol support"
> -       depends on BT_BREDR
> +       depends on BT && BT_BREDR
>         help
>           RFCOMM provides connection oriented stream transport.  RFCOMM
>           support is required for Dialup Networking, OBEX and other Bluetooth
>
> base-commit: c1cec2bbbeb5922d42d28c6af1707c4f3f8647e3
> --
> 2.55.0

Looks like BT_6LOWPAN could also use the same logic:

https://sashiko.dev/#/patchset/20260720150919.9602-1-iva%40yenya.net

-- 
Luiz Augusto von Dentz
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.