Message ID | 20240731062814.215833-5-iivanov@suse.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add pin control driver for BCM2712 SoC | expand |
Am 31.07.24 um 08:28 schrieb Ivan T. Ivanov: > Add pin-control devicetree nodes and used them to > explicitly define uSD card interface pin configuration. > > Signed-off-by: Ivan T. Ivanov <iivanov@suse.de> > --- > .../boot/dts/broadcom/bcm2712-rpi-5-b.dts | 20 +++++++++++++++++++ > arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 10 ++++++++++ > 2 files changed, 30 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 b5921437e09f..8a0d20afebfe 100644 > --- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts > +++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts > @@ -53,10 +53,30 @@ &uart0 { > > /* SDIO1 is used to drive the SD card */ > &sdio1 { > + pinctrl-0 = <&emmc_sd_pulls>, <&emmc_aon_cd_pins>; > + pinctrl-names = "default"; > vqmmc-supply = <&sd_io_1v8_reg>; > vmmc-supply = <&sd_vcc_reg>; > bus-width = <4>; > sd-uhs-sdr50; > sd-uhs-ddr50; > sd-uhs-sdr104; > + cd-gpios = <&gio_aon 5 GPIO_ACTIVE_LOW>; > +}; > + > +&pinctrl_aon { > + emmc_aon_cd_pins: emmc-aon-cd-pins { > + function = "sd_card_g"; > + pins = "aon_gpio5"; > + bias-pull-up; > + }; > +}; > + > +&pinctrl { > + > + emmc_sd_pulls: emmc-sd-pulls { > + pins = "emmc_cmd", "emmc_dat0", "emmc_dat1", "emmc_dat2", "emmc_dat3"; > + bias-pull-up; > + }; > + > }; Please keep the references in alphabetical order (pinctrl comes before sdio). Except of this: Reviewed-by: Stefan Wahren <wahrenst@gmx.net> > diff --git a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi > index 398df13148bd..1099171cd435 100644 > --- a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi > +++ b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi > @@ -266,6 +266,16 @@ uart0: serial@7d001000 { > status = "disabled"; > }; > > + pinctrl: pinctrl@7d504100 { > + compatible = "brcm,bcm2712-pinctrl"; > + reg = <0x7d504100 0x30>; > + }; > + > + pinctrl_aon: pinctrl@7d510700 { > + compatible = "brcm,bcm2712-aon-pinctrl"; > + reg = <0x7d510700 0x20>; > + }; > + > interrupt-controller@7d517000 { > compatible = "brcm,bcm7271-l2-intc"; > reg = <0x7d517000 0x10>;
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 b5921437e09f..8a0d20afebfe 100644 --- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts +++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts @@ -53,10 +53,30 @@ &uart0 { /* SDIO1 is used to drive the SD card */ &sdio1 { + pinctrl-0 = <&emmc_sd_pulls>, <&emmc_aon_cd_pins>; + pinctrl-names = "default"; vqmmc-supply = <&sd_io_1v8_reg>; vmmc-supply = <&sd_vcc_reg>; bus-width = <4>; sd-uhs-sdr50; sd-uhs-ddr50; sd-uhs-sdr104; + cd-gpios = <&gio_aon 5 GPIO_ACTIVE_LOW>; +}; + +&pinctrl_aon { + emmc_aon_cd_pins: emmc-aon-cd-pins { + function = "sd_card_g"; + pins = "aon_gpio5"; + bias-pull-up; + }; +}; + +&pinctrl { + + emmc_sd_pulls: emmc-sd-pulls { + pins = "emmc_cmd", "emmc_dat0", "emmc_dat1", "emmc_dat2", "emmc_dat3"; + bias-pull-up; + }; + }; diff --git a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi index 398df13148bd..1099171cd435 100644 --- a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi +++ b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi @@ -266,6 +266,16 @@ uart0: serial@7d001000 { status = "disabled"; }; + pinctrl: pinctrl@7d504100 { + compatible = "brcm,bcm2712-pinctrl"; + reg = <0x7d504100 0x30>; + }; + + pinctrl_aon: pinctrl@7d510700 { + compatible = "brcm,bcm2712-aon-pinctrl"; + reg = <0x7d510700 0x20>; + }; + interrupt-controller@7d517000 { compatible = "brcm,bcm7271-l2-intc"; reg = <0x7d517000 0x10>;
Add pin-control devicetree nodes and used them to explicitly define uSD card interface pin configuration. Signed-off-by: Ivan T. Ivanov <iivanov@suse.de> --- .../boot/dts/broadcom/bcm2712-rpi-5-b.dts | 20 +++++++++++++++++++ arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 10 ++++++++++ 2 files changed, 30 insertions(+)