* [PATCH 0/2] Use platform Bluetooth addresses on Broadcom UART controllers
@ 2026-11-10 10:45 Linus Walleij
2026-11-10 10:45 ` [PATCH 1/2] dt-bindings: bluetooth: brcm: Allow a platform BD address Linus Walleij
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Linus Walleij @ 2026-11-10 10:45 UTC (permalink / raw)
To: Marcel Holtmann, Luiz Augusto von Dentz, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Linus Walleij
Cc: linux-bluetooth, devicetree
Allow local-bd-address through the common Bluetooth controller binding,
including its six-byte little-endian representation.
Enable the existing HCI core property.
Absent, unreadable and all-zero properties preserve the existing setup
path.
Developed with LLM assistance.
---
Linus Walleij (2):
dt-bindings: bluetooth: brcm: Allow a platform BD address
Bluetooth: hci_bcm: Prefer a valid platform BD address
.../devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml | 2 ++
drivers/bluetooth/hci_bcm.c | 8 ++++++++
2 files changed, 10 insertions(+)
---
base-commit: 6628e7d4c6b25c8d18f1345e3a20d21829aae7e4
change-id: 20261110-brcm-bcmbt-mac-8a8145bf531a
Best regards,
--
Linus Walleij <linusw@kernel.org>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/2] dt-bindings: bluetooth: brcm: Allow a platform BD address
2026-11-10 10:45 [PATCH 0/2] Use platform Bluetooth addresses on Broadcom UART controllers Linus Walleij
@ 2026-11-10 10:45 ` Linus Walleij
2026-11-10 18:49 ` Conor Dooley
2026-11-10 10:45 ` [PATCH 2/2] Bluetooth: hci_bcm: Prefer a valid " Linus Walleij
2026-11-11 19:40 ` [PATCH 0/2] Use platform Bluetooth addresses on Broadcom UART controllers patchwork-bot+bluetooth
2 siblings, 1 reply; 5+ messages in thread
From: Linus Walleij @ 2026-11-10 10:45 UTC (permalink / raw)
To: Marcel Holtmann, Luiz Augusto von Dentz, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Linus Walleij
Cc: linux-bluetooth, devicetree
The bootloader can recover the device-specific Bluetooth address from
persistent storage on Samsung phones using BCM4334B0, and pass it in
the Bluetooth node. The Broadcom UART binding currently rejects the
standard local-bd-address property.
Reference the common Bluetooth controller binding to accept the optional
six-byte, little-endian address, and illustrate it in the example.
Signed-off-by: Linus Walleij <linusw@kernel.org>
---
Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml b/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml
index 612d21123aaa..5c44d8459166 100644
--- a/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml
+++ b/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml
@@ -127,6 +127,7 @@ dependencies:
brcm,requires-autobaud-mode: [ shutdown-gpios ]
allOf:
+ - $ref: bluetooth-controller.yaml#
- $ref: /schemas/serial/serial-peripheral-props.yaml#
- if:
not:
@@ -153,6 +154,7 @@ examples:
bluetooth {
compatible = "brcm,bcm4330-bt";
+ local-bd-address = [55 44 33 22 11 00];
max-speed = <921600>;
brcm,bt-pcm-int-params = [01 02 00 01 01];
shutdown-gpios = <&gpio 30 GPIO_ACTIVE_HIGH>;
--
2.56.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/2] Bluetooth: hci_bcm: Prefer a valid platform BD address
2026-11-10 10:45 [PATCH 0/2] Use platform Bluetooth addresses on Broadcom UART controllers Linus Walleij
2026-11-10 10:45 ` [PATCH 1/2] dt-bindings: bluetooth: brcm: Allow a platform BD address Linus Walleij
@ 2026-11-10 10:45 ` Linus Walleij
2026-11-11 19:40 ` [PATCH 0/2] Use platform Bluetooth addresses on Broadcom UART controllers patchwork-bot+bluetooth
2 siblings, 0 replies; 5+ messages in thread
From: Linus Walleij @ 2026-11-10 10:45 UTC (permalink / raw)
To: Marcel Holtmann, Luiz Augusto von Dentz, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Linus Walleij
Cc: linux-bluetooth, devicetree
Samsung phones with BCM4334B0 store the assigned Bluetooth address in
persistent EFS storage. The bootloader can supply that address through
local-bd-address even when the controller reports a non-default address.
Signed-off-by: Linus Walleij <linusw@kernel.org>
---
drivers/bluetooth/hci_bcm.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/bluetooth/hci_bcm.c b/drivers/bluetooth/hci_bcm.c
index e70b9f3fd968..1f62a8c2fb38 100644
--- a/drivers/bluetooth/hci_bcm.c
+++ b/drivers/bluetooth/hci_bcm.c
@@ -584,6 +584,7 @@ static int bcm_setup(struct hci_uart *hu)
bool fw_load_done = false;
bool use_autobaud_mode = (bcm->dev ? bcm->dev->use_autobaud_mode : 0);
unsigned int speed;
+ bdaddr_t bdaddr;
int err;
bt_dev_dbg(hu->hdev, "hu %p", hu);
@@ -595,6 +596,13 @@ static int bcm_setup(struct hci_uart *hu)
if (err)
return err;
+ /* Prefer a valid platform address, even if the controller has one. */
+ if (!device_property_read_u8_array(hu->hdev->dev.parent,
+ "local-bd-address", bdaddr.b,
+ sizeof(bdaddr.b)) &&
+ bacmp(&bdaddr, BDADDR_ANY))
+ hci_set_quirk(hu->hdev, HCI_QUIRK_USE_BDADDR_PROPERTY);
+
if (!fw_load_done)
return 0;
--
2.56.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/2] dt-bindings: bluetooth: brcm: Allow a platform BD address
2026-11-10 10:45 ` [PATCH 1/2] dt-bindings: bluetooth: brcm: Allow a platform BD address Linus Walleij
@ 2026-11-10 18:49 ` Conor Dooley
0 siblings, 0 replies; 5+ messages in thread
From: Conor Dooley @ 2026-11-10 18:49 UTC (permalink / raw)
To: Linus Walleij
Cc: Marcel Holtmann, Luiz Augusto von Dentz, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, linux-bluetooth, devicetree
[-- Attachment #1: Type: text/plain, Size: 75 bytes --]
Acked-by: Conor Dooley <conor.dooley@microchip.com>
pw-bot: not-applicable
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 0/2] Use platform Bluetooth addresses on Broadcom UART controllers
2026-11-10 10:45 [PATCH 0/2] Use platform Bluetooth addresses on Broadcom UART controllers Linus Walleij
2026-11-10 10:45 ` [PATCH 1/2] dt-bindings: bluetooth: brcm: Allow a platform BD address Linus Walleij
2026-11-10 10:45 ` [PATCH 2/2] Bluetooth: hci_bcm: Prefer a valid " Linus Walleij
@ 2026-11-11 19:40 ` patchwork-bot+bluetooth
2 siblings, 0 replies; 5+ messages in thread
From: patchwork-bot+bluetooth @ 2026-11-11 19:40 UTC (permalink / raw)
To: Linus Walleij
Cc: marcel, luiz.dentz, robh, krzk+dt, conor+dt, linux-bluetooth,
devicetree
Hello:
This series was applied to bluetooth/bluetooth-next.git (master)
by Luiz Augusto von Dentz <luiz.von.dentz@intel.com>:
On Tue, 10 Nov 2026 11:45:25 +0100 you wrote:
> Allow local-bd-address through the common Bluetooth controller binding,
> including its six-byte little-endian representation.
>
> Enable the existing HCI core property.
>
> Absent, unreadable and all-zero properties preserve the existing setup
> path.
>
> [...]
Here is the summary with links:
- [1/2] dt-bindings: bluetooth: brcm: Allow a platform BD address
https://git.kernel.org/bluetooth/bluetooth-next/c/05ad7f2dee07
- [2/2] Bluetooth: hci_bcm: Prefer a valid platform BD address
https://git.kernel.org/bluetooth/bluetooth-next/c/afafcb373fd0
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2026-11-11 19:40 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-10 10:45 [PATCH 0/2] Use platform Bluetooth addresses on Broadcom UART controllers Linus Walleij
2026-11-10 10:45 ` [PATCH 1/2] dt-bindings: bluetooth: brcm: Allow a platform BD address Linus Walleij
2026-11-10 18:49 ` Conor Dooley
2026-11-10 10:45 ` [PATCH 2/2] Bluetooth: hci_bcm: Prefer a valid " Linus Walleij
2026-11-11 19:40 ` [PATCH 0/2] Use platform Bluetooth addresses on Broadcom UART controllers patchwork-bot+bluetooth
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox