Devicetree
 help / color / mirror / Atom feed
* [PATCH v1 0/2] Add support for the Synaptics BCM4384 Bluetooth controller
@ 2026-08-27 11:02 Andy Chang
  2026-08-27 11:02 ` [PATCH v1 1/2] Bluetooth: dt-bindings: net: bluetooth: add BCM4384 Andy Chang
  2026-08-27 11:02 ` [PATCH v1 2/2] Bluetooth: btbcm: Add Synaptics 4384 chip support Andy Chang
  0 siblings, 2 replies; 4+ messages in thread
From: Andy Chang @ 2026-08-27 11:02 UTC (permalink / raw)
  To: linux-bluetooth, Marcel Holtmann, Luiz Augusto von Dentz
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree,
	Linus Walleij, linux-kernel, Andy Chang

The first patch adds the BCM4384 Device Tree compatible string.

The second patch adds the controller support to the Broadcom
Bluetooth driver

Andy Chang (2):
  Bluetooth: dt-bindings: net: bluetooth: add BCM4384
  Bluetooth: btbcm: Add Synaptics 4384 chip support

 .../devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml   | 1 +
 drivers/bluetooth/btbcm.c                                   | 6 +++++-
 drivers/bluetooth/hci_bcm.c                                 | 1 +
 3 files changed, 7 insertions(+), 1 deletion(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v1 1/2] Bluetooth: dt-bindings: net: bluetooth: add BCM4384
  2026-08-27 11:02 [PATCH v1 0/2] Add support for the Synaptics BCM4384 Bluetooth controller Andy Chang
@ 2026-08-27 11:02 ` Andy Chang
  2026-08-27 16:38   ` Conor Dooley
  2026-08-27 11:02 ` [PATCH v1 2/2] Bluetooth: btbcm: Add Synaptics 4384 chip support Andy Chang
  1 sibling, 1 reply; 4+ messages in thread
From: Andy Chang @ 2026-08-27 11:02 UTC (permalink / raw)
  To: linux-bluetooth, Marcel Holtmann, Luiz Augusto von Dentz
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree,
	Linus Walleij, linux-kernel, Andy Chang

Add the brcm,bcm4384-bt compatible string to support the
Synaptics BCM4384 Bluetooth controller.

Signed-off-by: Andy Chang <andy.chang@synaptics.corp-partner.google.com>
---
 .../devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml        | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml b/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml
index 95501e858e6f..612d21123aaa 100644
--- a/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml
+++ b/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml
@@ -31,6 +31,7 @@ properties:
           - brcm,bcm43540-bt
           - brcm,bcm4335a0
           - brcm,bcm4349-bt
+          - brcm,bcm4384-bt
           - cypress,cyw4373a0-bt
           - infineon,cyw55572-bt
 
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH v1 2/2] Bluetooth: btbcm: Add Synaptics 4384 chip support
  2026-08-27 11:02 [PATCH v1 0/2] Add support for the Synaptics BCM4384 Bluetooth controller Andy Chang
  2026-08-27 11:02 ` [PATCH v1 1/2] Bluetooth: dt-bindings: net: bluetooth: add BCM4384 Andy Chang
@ 2026-08-27 11:02 ` Andy Chang
  1 sibling, 0 replies; 4+ messages in thread
From: Andy Chang @ 2026-08-27 11:02 UTC (permalink / raw)
  To: linux-bluetooth, Marcel Holtmann, Luiz Augusto von Dentz
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree,
	Linus Walleij, linux-kernel, Andy Chang

Add support for the Synaptics 4384 Bluetooth controller
by adding the corresponding chip IDs.

Tested on the VIM3 platform. Verified that the controller initializes
successfully and that firmware loading and basic Bluetooth operation
work as expected.

The VIM3 is a Khadas single-board computer that I used as the host
platform for testing the BCM4384 Bluetooth controller.

Signed-off-by: Andy Chang <andy.chang@synaptics.corp-partner.google.com>
---
 drivers/bluetooth/btbcm.c   | 6 +++++-
 drivers/bluetooth/hci_bcm.c | 1 +
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/bluetooth/btbcm.c b/drivers/bluetooth/btbcm.c
index 463d59890bef..63c4c788d9c4 100644
--- a/drivers/bluetooth/btbcm.c
+++ b/drivers/bluetooth/btbcm.c
@@ -31,6 +31,7 @@
 #define BDADDR_BCM4334B0 (&(bdaddr_t) {{0x00, 0x00, 0x00, 0xb0, 0x34, 0x43}})
 #define BDADDR_BCM4345C5 (&(bdaddr_t) {{0xac, 0x1f, 0x00, 0xc5, 0x45, 0x43}})
 #define BDADDR_BCM43341B (&(bdaddr_t) {{0xac, 0x1f, 0x00, 0x1b, 0x34, 0x43}})
+#define BDADDR_BCM4384B0 (&(bdaddr_t) {{0x93, 0x76, 0x00, 0xb0, 0x84, 0x43}})
 
 #define BCM_FW_NAME_LEN			64
 #define BCM_FW_NAME_COUNT_MAX		4
@@ -130,7 +131,8 @@ int btbcm_check_bdaddr(struct hci_dev *hdev)
 	    !bacmp(&bda->bdaddr, BDADDR_BCM4345C5) ||
 	    !bacmp(&bda->bdaddr, BDADDR_BCM43430A0) ||
 	    !bacmp(&bda->bdaddr, BDADDR_BCM43430A1) ||
-	    !bacmp(&bda->bdaddr, BDADDR_BCM43341B)) {
+	    !bacmp(&bda->bdaddr, BDADDR_BCM43341B) ||
+	    !bacmp(&bda->bdaddr, BDADDR_BCM4384B0)) {
 		/* Try falling back to BDADDR EFI variable */
 		if (btbcm_set_bdaddr_from_efi(hdev) != 0) {
 			bt_dev_info(hdev, "BCM: Using default device address (%pMR)",
@@ -514,6 +516,8 @@ static const struct bcm_subver_table bcm_uart_subver_table[] = {
 	{ 0x4106, "BCM4335A0"	},	/* 002.001.006 */
 	{ 0x410c, "BCM43430B0"	},	/* 002.001.012 */
 	{ 0x2119, "BCM4373A0"	},	/* 001.001.025 */
+	{ 0x2128, "BCM4384A0"	},	/* 001.001.040 */
+	{ 0x4119, "BCM4384B0"	},	/* 002.001.025 */
 	{ }
 };
 
diff --git a/drivers/bluetooth/hci_bcm.c b/drivers/bluetooth/hci_bcm.c
index 9a103db7e355..e70b9f3fd968 100644
--- a/drivers/bluetooth/hci_bcm.c
+++ b/drivers/bluetooth/hci_bcm.c
@@ -1593,6 +1593,7 @@ static const struct of_device_id bcm_bluetooth_of_match[] = {
 	{ .compatible = "brcm,bcm4349-bt", .data = &bcm43438_device_data },
 	{ .compatible = "brcm,bcm43540-bt", .data = &bcm4354_device_data },
 	{ .compatible = "brcm,bcm4335a0" },
+	{ .compatible = "brcm,bcm4384-bt" },
 	{ .compatible = "cypress,cyw4373a0-bt", .data = &cyw4373a0_device_data },
 	{ .compatible = "infineon,cyw55572-bt", .data = &cyw55572_device_data },
 	{ },
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v1 1/2] Bluetooth: dt-bindings: net: bluetooth: add BCM4384
  2026-08-27 11:02 ` [PATCH v1 1/2] Bluetooth: dt-bindings: net: bluetooth: add BCM4384 Andy Chang
@ 2026-08-27 16:38   ` Conor Dooley
  0 siblings, 0 replies; 4+ messages in thread
From: Conor Dooley @ 2026-08-27 16:38 UTC (permalink / raw)
  To: Andy Chang
  Cc: linux-bluetooth, Marcel Holtmann, Luiz Augusto von Dentz,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley, devicetree,
	Linus Walleij, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1130 bytes --]

On Thu, Aug 27, 2026 at 07:02:41PM +0800, Andy Chang wrote:
> Add the brcm,bcm4384-bt compatible string to support the
> Synaptics BCM4384 Bluetooth controller.

Please explain why a fallback compatible is not suitable here, or
alternatively if it is, use one.

pw-bot: changes-requested

Thanks,
Conor.

> 
> Signed-off-by: Andy Chang <andy.chang@synaptics.corp-partner.google.com>
> ---
>  .../devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml        | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml b/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml
> index 95501e858e6f..612d21123aaa 100644
> --- a/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml
> +++ b/Documentation/devicetree/bindings/net/bluetooth/brcm,bluetooth.yaml
> @@ -31,6 +31,7 @@ properties:
>            - brcm,bcm43540-bt
>            - brcm,bcm4335a0
>            - brcm,bcm4349-bt
> +          - brcm,bcm4384-bt
>            - cypress,cyw4373a0-bt
>            - infineon,cyw55572-bt
>  
> -- 
> 2.25.1
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-08-27 16:38 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-27 11:02 [PATCH v1 0/2] Add support for the Synaptics BCM4384 Bluetooth controller Andy Chang
2026-08-27 11:02 ` [PATCH v1 1/2] Bluetooth: dt-bindings: net: bluetooth: add BCM4384 Andy Chang
2026-08-27 16:38   ` Conor Dooley
2026-08-27 11:02 ` [PATCH v1 2/2] Bluetooth: btbcm: Add Synaptics 4384 chip support Andy Chang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox