drivers/bluetooth/hci_bcm.c | 1 + 1 file changed, 1 insertion(+)
The ACPI path already did default to 4000000 baud, while the OF path did
not, for some reason. This meant that unless overridden with the
'max-speed' OF property, the serial port would stay at the init speed of
115200 bps, making it unsuitable with high-speed Bluetooth devices like
audio equipment.
Signed-off-by: Paul Cercueil <paul@crapouillou.net>
---
drivers/bluetooth/hci_bcm.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/bluetooth/hci_bcm.c b/drivers/bluetooth/hci_bcm.c
index 9a103db7e355..c44d552f9ad5 100644
--- a/drivers/bluetooth/hci_bcm.c
+++ b/drivers/bluetooth/hci_bcm.c
@@ -1224,6 +1224,7 @@ static int bcm_acpi_probe(struct bcm_device *dev)
static int bcm_of_probe(struct bcm_device *bdev)
{
+ bdev->oper_speed = 4000000;
bdev->use_autobaud_mode = device_property_read_bool(bdev->dev,
"brcm,requires-autobaud-mode");
device_property_read_u32(bdev->dev, "max-speed", &bdev->oper_speed);
--
2.53.0
Hi Paul,
On Sat, Aug 29, 2026 at 6:02 AM Paul Cercueil <paul@crapouillou.net> wrote:
>
> The ACPI path already did default to 4000000 baud, while the OF path did
> not, for some reason. This meant that unless overridden with the
> 'max-speed' OF property, the serial port would stay at the init speed of
> 115200 bps, making it unsuitable with high-speed Bluetooth devices like
> audio equipment.
>
> Signed-off-by: Paul Cercueil <paul@crapouillou.net>
> ---
> drivers/bluetooth/hci_bcm.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/bluetooth/hci_bcm.c b/drivers/bluetooth/hci_bcm.c
> index 9a103db7e355..c44d552f9ad5 100644
> --- a/drivers/bluetooth/hci_bcm.c
> +++ b/drivers/bluetooth/hci_bcm.c
> @@ -1224,6 +1224,7 @@ static int bcm_acpi_probe(struct bcm_device *dev)
>
> static int bcm_of_probe(struct bcm_device *bdev)
> {
> + bdev->oper_speed = 4000000;
> bdev->use_autobaud_mode = device_property_read_bool(bdev->dev,
> "brcm,requires-autobaud-mode");
> device_property_read_u32(bdev->dev, "max-speed", &bdev->oper_speed);
> --
> 2.53.0
Sashiko flagged a problem with this:
https://sashiko.dev/#/patchset/20260829100205.113655-1-paul%40crapouillou.net
--
Luiz Augusto von Dentz
Hi Luiz,
Le lundi 31 août 2026 à 10:56 -0400, Luiz Augusto von Dentz a écrit :
> Hi Paul,
>
> On Sat, Aug 29, 2026 at 6:02 AM Paul Cercueil <paul@crapouillou.net>
> wrote:
> >
> > The ACPI path already did default to 4000000 baud, while the OF
> > path did
> > not, for some reason. This meant that unless overridden with the
> > 'max-speed' OF property, the serial port would stay at the init
> > speed of
> > 115200 bps, making it unsuitable with high-speed Bluetooth devices
> > like
> > audio equipment.
> >
> > Signed-off-by: Paul Cercueil <paul@crapouillou.net>
> > ---
> > drivers/bluetooth/hci_bcm.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/bluetooth/hci_bcm.c
> > b/drivers/bluetooth/hci_bcm.c
> > index 9a103db7e355..c44d552f9ad5 100644
> > --- a/drivers/bluetooth/hci_bcm.c
> > +++ b/drivers/bluetooth/hci_bcm.c
> > @@ -1224,6 +1224,7 @@ static int bcm_acpi_probe(struct bcm_device
> > *dev)
> >
> > static int bcm_of_probe(struct bcm_device *bdev)
> > {
> > + bdev->oper_speed = 4000000;
> > bdev->use_autobaud_mode = device_property_read_bool(bdev-
> > >dev,
> >
> > "brcm,requires-autobaud-mode");
> > device_property_read_u32(bdev->dev, "max-speed", &bdev-
> > >oper_speed);
> > --
> > 2.53.0
>
> Sashiko flagged a problem with this:
>
> https://sashiko.dev/#/patchset/20260829100205.113655-1-paul%40crapouillou.net
Noted.
The argument about breaking Devicetree backwards compatibility is a
good point, I didn't think about that.
Disregard this patch then.
Cheers,
-Paul
© 2016 - 2026 Red Hat, Inc.