From 618b667f81471b08c15c71e64a3ed1741c6d91b0 Mon Sep 17 00:00:00 2001 From: Mykola Kvach Date: Wed, 12 Jul 2023 09:57:55 +0300 Subject: [PATCH] boards: arm64: rcar: add board-specific configuration for MMC node Add pin control group for UHS modes for H3ULCB, Salvator XS M3 boards to appropriate dts files. Both 'uhs' and 'default' pins states have the same properties for eMMC, e.g. 1.8V. Signed-off-by: Mykola Kvach --- .../rcar_h3ulcb/doc/rcar_h3ulcb_a57.rst | 2 + .../rcar_h3ulcb_r8a77951_a57-pinctrl.dtsi | 44 +++++++++++++++++++ .../rcar_h3ulcb/rcar_h3ulcb_r8a77951_a57.dts | 23 ++++++++++ boards/renesas/rcar_salvator_xs/doc/index.rst | 2 + .../rcar_salvator_xs-pinctrl.dtsi | 44 +++++++++++++++++++ .../rcar_salvator_xs/rcar_salvator_xs.dts | 23 ++++++++++ 6 files changed, 138 insertions(+) diff --git a/boards/renesas/rcar_h3ulcb/doc/rcar_h3ulcb_a57.rst b/boards/renesas/rcar_h3ulcb/doc/rcar_h3ulcb_a57.rst index d7a261dbb5..aefe429f5c 100644 --- a/boards/renesas/rcar_h3ulcb/doc/rcar_h3ulcb_a57.rst +++ b/boards/renesas/rcar_h3ulcb/doc/rcar_h3ulcb_a57.rst @@ -58,6 +58,8 @@ hardware features: +-----------+------------------------------+--------------------------------+ | UART | uart | serial port-polling | +-----------+------------------------------+--------------------------------+ +| MMC | renesas_rcar_mmc | DMA and SCC | ++-----------+------------------------------+--------------------------------+ Other hardware features have not been enabled yet for this board. diff --git a/boards/renesas/rcar_h3ulcb/rcar_h3ulcb_r8a77951_a57-pinctrl.dtsi b/boards/renesas/rcar_h3ulcb/rcar_h3ulcb_r8a77951_a57-pinctrl.dtsi index 088f930051..6dc65b0331 100644 --- a/boards/renesas/rcar_h3ulcb/rcar_h3ulcb_r8a77951_a57-pinctrl.dtsi +++ b/boards/renesas/rcar_h3ulcb/rcar_h3ulcb_r8a77951_a57-pinctrl.dtsi @@ -14,4 +14,48 @@ scif2_data_a_rx_default: scif2_data_a_rx_default { pin = ; }; + + emmc2_clk: emmc2_clk { + pin = ; + }; + + emmc2_cmd: emmc2_cmd { + pin = ; + }; + + emmc2_data0: emmc2_data0 { + pin = ; + }; + + emmc2_data1: emmc2_data1 { + pin = ; + }; + + emmc2_data2: emmc2_data2 { + pin = ; + }; + + emmc2_data3: emmc2_data3 { + pin = ; + }; + + emmc2_data4: emmc2_data4 { + pin = ; + }; + + emmc2_data5: emmc2_data5 { + pin = ; + }; + + emmc2_data6: emmc2_data6 { + pin = ; + }; + + emmc2_data7: emmc2_data7 { + pin = ; + }; + + emmc2_ds: emmc2_ds { + pin = ; + }; }; diff --git a/boards/renesas/rcar_h3ulcb/rcar_h3ulcb_r8a77951_a57.dts b/boards/renesas/rcar_h3ulcb/rcar_h3ulcb_r8a77951_a57.dts index 5a2bef11c8..599a0f2531 100644 --- a/boards/renesas/rcar_h3ulcb/rcar_h3ulcb_r8a77951_a57.dts +++ b/boards/renesas/rcar_h3ulcb/rcar_h3ulcb_r8a77951_a57.dts @@ -23,6 +23,11 @@ device_type = "mmio-sram"; reg = <0x0 0x48000000 0x0 DT_SIZE_M(512)>; }; + + /* These aliases are provided for compatibility with samples */ + aliases { + sdhc0 = &emmc2; + }; }; &scif2 { @@ -30,3 +35,21 @@ pinctrl-names = "default"; status = "okay"; }; + +&emmc2 { + pinctrl-0 = <&emmc2_clk &emmc2_cmd &emmc2_ds + &emmc2_data0 &emmc2_data1 &emmc2_data2 &emmc2_data3 + &emmc2_data4 &emmc2_data5 &emmc2_data6 &emmc2_data7>; + pinctrl-1 = <&emmc2_clk &emmc2_cmd &emmc2_ds + &emmc2_data0 &emmc2_data1 &emmc2_data2 &emmc2_data3 + &emmc2_data4 &emmc2_data5 &emmc2_data6 &emmc2_data7>; + pinctrl-names = "default", "uhs"; + disk { + compatible = "zephyr,mmc-disk"; + status = "disabled"; + }; + bus-width = <8>; + mmc-hs200-1_8v; + mmc-hs400-1_8v; + non-removable; +}; diff --git a/boards/renesas/rcar_salvator_xs/doc/index.rst b/boards/renesas/rcar_salvator_xs/doc/index.rst index a990015816..464b4e659d 100644 --- a/boards/renesas/rcar_salvator_xs/doc/index.rst +++ b/boards/renesas/rcar_salvator_xs/doc/index.rst @@ -43,6 +43,8 @@ hardware features: +-----------+------------------------------+--------------------------------+ | UART | uart | serial port-polling | +-----------+------------------------------+--------------------------------+ +| MMC | renesas_rcar_mmc | DMA and SCC | ++-----------+------------------------------+--------------------------------+ Other hardware features have not been enabled yet for this board. diff --git a/boards/renesas/rcar_salvator_xs/rcar_salvator_xs-pinctrl.dtsi b/boards/renesas/rcar_salvator_xs/rcar_salvator_xs-pinctrl.dtsi index 69529f233a..b563a72007 100644 --- a/boards/renesas/rcar_salvator_xs/rcar_salvator_xs-pinctrl.dtsi +++ b/boards/renesas/rcar_salvator_xs/rcar_salvator_xs-pinctrl.dtsi @@ -14,4 +14,48 @@ scif2_data_a_rx_default: scif2_data_a_rx_default { pin = ; }; + + emmc2_clk: emmc2_clk { + pin = ; + }; + + emmc2_cmd: emmc2_cmd { + pin = ; + }; + + emmc2_data0: emmc2_data0 { + pin = ; + }; + + emmc2_data1: emmc2_data1 { + pin = ; + }; + + emmc2_data2: emmc2_data2 { + pin = ; + }; + + emmc2_data3: emmc2_data3 { + pin = ; + }; + + emmc2_data4: emmc2_data4 { + pin = ; + }; + + emmc2_data5: emmc2_data5 { + pin = ; + }; + + emmc2_data6: emmc2_data6 { + pin = ; + }; + + emmc2_data7: emmc2_data7 { + pin = ; + }; + + emmc2_ds: emmc2_ds { + pin = ; + }; }; diff --git a/boards/renesas/rcar_salvator_xs/rcar_salvator_xs.dts b/boards/renesas/rcar_salvator_xs/rcar_salvator_xs.dts index 9c6bfc9a6e..bc926dfddd 100644 --- a/boards/renesas/rcar_salvator_xs/rcar_salvator_xs.dts +++ b/boards/renesas/rcar_salvator_xs/rcar_salvator_xs.dts @@ -19,6 +19,11 @@ zephyr,shell-uart = &scif2; }; + /* These aliases are provided for compatibility with samples */ + aliases { + sdhc0 = &emmc2; + }; + ram: memory@48000000 { device_type = "mmio-sram"; reg = <0x0 0x48000000 0x0 DT_SIZE_M(512)>; @@ -30,3 +35,21 @@ pinctrl-names = "default"; status = "okay"; }; + +&emmc2 { + pinctrl-0 = <&emmc2_clk &emmc2_cmd &emmc2_ds + &emmc2_data0 &emmc2_data1 &emmc2_data2 &emmc2_data3 + &emmc2_data4 &emmc2_data5 &emmc2_data6 &emmc2_data7>; + pinctrl-1 = <&emmc2_clk &emmc2_cmd &emmc2_ds + &emmc2_data0 &emmc2_data1 &emmc2_data2 &emmc2_data3 + &emmc2_data4 &emmc2_data5 &emmc2_data6 &emmc2_data7>; + pinctrl-names = "default", "uhs"; + disk { + compatible = "zephyr,mmc-disk"; + status = "disabled"; + }; + bus-width = <8>; + mmc-hs200-1_8v; + mmc-hs400-1_8v; + non-removable; +};