[PATCH 7/7] arm64: dts: broadcom: bcm2712: Add UARTA controller node.
Stefan Wahren
wahrenst at gmx.net
Fri Aug 2 12:12:16 PDT 2024
Hi Ivan,
Am 31.07.24 um 08:28 schrieb Ivan T. Ivanov:
> On RPi5 device Bluetooth chips is connected to UARTA
> port. Add Bluetooth chips and related pin definitions.
> With this and firmware already provided by distributions,
> at least on openSUSE Tumbleweed, this is sufficient to make
> Bluetooth operational on RPi5 \o/.
>
> Signed-off-by: Ivan T. Ivanov <iivanov at suse.de>
> ---
> .../boot/dts/broadcom/bcm2712-rpi-5-b.dts | 45 +++++++++++++++++++
> arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 11 +++++
> 2 files changed, 56 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts
> index b6bfe0abb774..a557cbd8ba17 100644
> --- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts
> +++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts
> @@ -133,11 +133,39 @@ wl_on_pins: wl-on-pins {
> pins = "gpio28";
> };
>
> + bt_shutdown_pins: bt-shutdown-pins {
> + function = "gpio";
> + pins = "gpio29";
> + };
> +
> emmc_sd_pulls: emmc-sd-pulls {
> pins = "emmc_cmd", "emmc_dat0", "emmc_dat1", "emmc_dat2", "emmc_dat3";
> bias-pull-up;
> };
>
> + uarta_24_pins: uarta-24-pins {
> + pin-rts {
> + function = "uart0";
> + pins = "gpio24";
> + bias-disable;
> + };
> + pin-cts {
> + function = "uart0";
> + pins = "gpio25";
> + bias-pull-up;
> + };
> + pin-txd {
> + function = "uart0";
> + pins = "gpio26";
> + bias-disable;
> + };
> + pin-rxd {
> + function = "uart0";
> + pins = "gpio27";
> + bias-pull-up;
> + };
> + };
> +
> sdio2_30_pins: sdio2-30-pins {
> pin-clk {
> function = "sd2";
> @@ -156,3 +184,20 @@ pins-dat {
> };
> };
> };
> +
> +/* uarta communicates with the BT module */
> +&uarta {
> + uart-has-rtscts;
> + auto-flow-control;
> + status = "okay";
> + clock-frequency = <96000000>;
> + pinctrl-0 = <&uarta_24_pins &bt_shutdown_pins>;
> + pinctrl-names = "default";
Please add status here
> +
> + bluetooth: bluetooth {
> + compatible = "brcm,bcm43438-bt";
> + max-speed = <3000000>;
> + shutdown-gpios = <&gio 29 GPIO_ACTIVE_HIGH>;
> + local-bd-address = [ 00 00 00 00 00 00 ];
Can we drop this?
Thanks
> + };
> +};
> diff --git a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
> index 3c0663dc6712..e972f94d6828 100644
> --- a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
> +++ b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
> @@ -305,6 +305,17 @@ gio: gpio at 7d508500 {
> brcm,gpio-direct;
> };
>
> + uarta: serial at 7d50c000 {
> + compatible = "brcm,bcm7271-uart";
> + reg = <0x7d50c000 0x20>;
> + reg-names = "uart";
> + reg-shift = <2>;
> + reg-io-width = <4>;
> + interrupts = <GIC_SPI 276 IRQ_TYPE_LEVEL_HIGH>;
> + skip-init;
> + status = "disabled";
> + };
> +
> pinctrl_aon: pinctrl at 7d510700 {
> compatible = "brcm,bcm2712-aon-pinctrl";
> reg = <0x7d510700 0x20>;
More information about the linux-arm-kernel
mailing list