* [PATCH v1 0/2] StarFive's MMC nodes support
@ 2023-08-09 1:39 William Qiu
2023-08-09 1:39 ` [PATCH v1 1/2] riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060 William Qiu
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: William Qiu @ 2023-08-09 1:39 UTC (permalink / raw)
To: devicetree, linux-kernel, linux-riscv
Cc: Emil Renner Berthing, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, William Qiu
Hi,
This patchset adds dts nodes for the StarFive designware mobile storage
host controller driver. In device tree, we set mmc0 to eMMC, and set
mmc1 to sd card.
William Qiu (2):
riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060
riscv: dts: starfive: Add mmc nodes on VisionFive 2 board
.../jh7110-starfive-visionfive-2.dtsi | 112 ++++++++++++++++++
arch/riscv/boot/dts/starfive/jh7110.dtsi | 32 +++++
2 files changed, 144 insertions(+)
--
2.34.1
^ permalink raw reply [flat|nested] 6+ messages in thread* [PATCH v1 1/2] riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060 2023-08-09 1:39 [PATCH v1 0/2] StarFive's MMC nodes support William Qiu @ 2023-08-09 1:39 ` William Qiu 2023-08-10 11:31 ` Emil Renner Berthing 2023-08-09 1:39 ` [PATCH v1 2/2] riscv: dts: starfive: Add mmc nodes on VisionFive 2 board William Qiu 2023-08-09 18:46 ` [PATCH v1 0/2] StarFive's MMC nodes support Conor Dooley 2 siblings, 1 reply; 6+ messages in thread From: William Qiu @ 2023-08-09 1:39 UTC (permalink / raw) To: devicetree, linux-kernel, linux-riscv Cc: Emil Renner Berthing, Rob Herring, Krzysztof Kozlowski, Conor Dooley, William Qiu Enable DCDC1 node for vmmc-supply and enable ALDO4 node for vqmmc-supply. Signed-off-by: William Qiu <william.qiu@starfivetech.com> --- .../starfive/jh7110-starfive-visionfive-2.dtsi | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi index d2f3b9eb859b..d67e26b9c791 100644 --- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi +++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi @@ -165,12 +165,28 @@ axp15060: pmic@36 { #interrupt-cells = <1>; regulators { + vcc_3v3: dcdc1 { + regulator-boot-on; + regulator-always-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-name = "vcc_3v3"; + }; + vdd_cpu: dcdc2 { regulator-always-on; regulator-min-microvolt = <500000>; regulator-max-microvolt = <1540000>; regulator-name = "vdd-cpu"; }; + + emmc_vdd: aldo4 { + regulator-boot-on; + regulator-always-on; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-name = "emmc_vdd"; + }; }; }; }; -- 2.34.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v1 1/2] riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060 2023-08-09 1:39 ` [PATCH v1 1/2] riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060 William Qiu @ 2023-08-10 11:31 ` Emil Renner Berthing 2023-08-11 2:20 ` William Qiu 0 siblings, 1 reply; 6+ messages in thread From: Emil Renner Berthing @ 2023-08-10 11:31 UTC (permalink / raw) To: William Qiu Cc: devicetree, linux-kernel, linux-riscv, Emil Renner Berthing, Rob Herring, Krzysztof Kozlowski, Conor Dooley On Wed, 9 Aug 2023 at 03:41, William Qiu <william.qiu@starfivetech.com> wrote: > > Enable DCDC1 node for vmmc-supply and enable ALDO4 node for > vqmmc-supply. > > Signed-off-by: William Qiu <william.qiu@starfivetech.com> > --- > .../starfive/jh7110-starfive-visionfive-2.dtsi | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) > > diff --git a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi > index d2f3b9eb859b..d67e26b9c791 100644 > --- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi > +++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi > @@ -165,12 +165,28 @@ axp15060: pmic@36 { > #interrupt-cells = <1>; > > regulators { > + vcc_3v3: dcdc1 { > + regulator-boot-on; > + regulator-always-on; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-name = "vcc_3v3"; > + }; > + > vdd_cpu: dcdc2 { > regulator-always-on; > regulator-min-microvolt = <500000>; > regulator-max-microvolt = <1540000>; > regulator-name = "vdd-cpu"; > }; > + > + emmc_vdd: aldo4 { > + regulator-boot-on; > + regulator-always-on; Hi William, Just a question: You mark these regulators as always-on, so they'll never be shut off even if the device is suspended. Is that because the mmc driver can't deal with reinitializing the mmc/sd-card if the card has been shut off while suspended or is there some other reason to mark them always-on? > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-name = "emmc_vdd"; > + }; > }; > }; > }; > -- > 2.34.1 > > > _______________________________________________ > linux-riscv mailing list > linux-riscv@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-riscv ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v1 1/2] riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060 2023-08-10 11:31 ` Emil Renner Berthing @ 2023-08-11 2:20 ` William Qiu 0 siblings, 0 replies; 6+ messages in thread From: William Qiu @ 2023-08-11 2:20 UTC (permalink / raw) To: Emil Renner Berthing Cc: devicetree, linux-kernel, linux-riscv, Emil Renner Berthing, Rob Herring, Krzysztof Kozlowski, Conor Dooley On 2023/8/10 19:31, Emil Renner Berthing wrote: > On Wed, 9 Aug 2023 at 03:41, William Qiu <william.qiu@starfivetech.com> wrote: >> >> Enable DCDC1 node for vmmc-supply and enable ALDO4 node for >> vqmmc-supply. >> >> Signed-off-by: William Qiu <william.qiu@starfivetech.com> >> --- >> .../starfive/jh7110-starfive-visionfive-2.dtsi | 16 ++++++++++++++++ >> 1 file changed, 16 insertions(+) >> >> diff --git a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi >> index d2f3b9eb859b..d67e26b9c791 100644 >> --- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi >> +++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi >> @@ -165,12 +165,28 @@ axp15060: pmic@36 { >> #interrupt-cells = <1>; >> >> regulators { >> + vcc_3v3: dcdc1 { >> + regulator-boot-on; >> + regulator-always-on; >> + regulator-min-microvolt = <3300000>; >> + regulator-max-microvolt = <3300000>; >> + regulator-name = "vcc_3v3"; >> + }; >> + >> vdd_cpu: dcdc2 { >> regulator-always-on; >> regulator-min-microvolt = <500000>; >> regulator-max-microvolt = <1540000>; >> regulator-name = "vdd-cpu"; >> }; >> + >> + emmc_vdd: aldo4 { >> + regulator-boot-on; >> + regulator-always-on; > > Hi William, > > Just a question: You mark these regulators as always-on, so they'll > never be shut off even if the device is suspended. Is that because the > mmc driver can't deal with reinitializing the mmc/sd-card if the card > has been shut off while suspended or is there some other reason to > mark them always-on? > Hi Emil, Because now hibernation's storage medium is currently SD/eMMC, so we need to mark SD/eMMC always-on. Best Regards, William >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1800000>; >> + regulator-name = "emmc_vdd"; >> + }; >> }; >> }; >> }; >> -- >> 2.34.1 >> >> >> _______________________________________________ >> linux-riscv mailing list >> linux-riscv@lists.infradead.org >> http://lists.infradead.org/mailman/listinfo/linux-riscv ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v1 2/2] riscv: dts: starfive: Add mmc nodes on VisionFive 2 board 2023-08-09 1:39 [PATCH v1 0/2] StarFive's MMC nodes support William Qiu 2023-08-09 1:39 ` [PATCH v1 1/2] riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060 William Qiu @ 2023-08-09 1:39 ` William Qiu 2023-08-09 18:46 ` [PATCH v1 0/2] StarFive's MMC nodes support Conor Dooley 2 siblings, 0 replies; 6+ messages in thread From: William Qiu @ 2023-08-09 1:39 UTC (permalink / raw) To: devicetree, linux-kernel, linux-riscv Cc: Emil Renner Berthing, Rob Herring, Krzysztof Kozlowski, Conor Dooley, William Qiu Add the mmc nodes for the StarFive JH7110 SoC. Set mmc0 node to emmc and set mmc1 node to sd. Signed-off-by: William Qiu <william.qiu@starfivetech.com> Reviewed-by: Hal Feng <hal.feng@starfivetech.com> --- .../jh7110-starfive-visionfive-2.dtsi | 96 +++++++++++++++++++ arch/riscv/boot/dts/starfive/jh7110.dtsi | 32 +++++++ 2 files changed, 128 insertions(+) diff --git a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi index d67e26b9c791..d79f94432b27 100644 --- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi +++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi @@ -17,6 +17,8 @@ aliases { i2c2 = &i2c2; i2c5 = &i2c5; i2c6 = &i2c6; + mmc0 = &mmc0; + mmc1 = &mmc1; serial0 = &uart0; }; @@ -201,6 +203,35 @@ &i2c6 { status = "okay"; }; +&mmc0 { + max-frequency = <100000000>; + bus-width = <8>; + cap-mmc-highspeed; + mmc-ddr-1_8v; + mmc-hs200-1_8v; + non-removable; + cap-mmc-hw-reset; + post-power-on-delay-ms = <200>; + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_pins>; + vmmc-supply = <&vcc_3v3>; + vqmmc-supply = <&emmc_vdd>; + status = "okay"; +}; + +&mmc1 { + max-frequency = <100000000>; + bus-width = <4>; + no-sdio; + no-mmc; + broken-cd; + cap-sd-highspeed; + post-power-on-delay-ms = <200>; + pinctrl-names = "default"; + pinctrl-0 = <&mmc1_pins>; + status = "okay"; +}; + &qspi { #address-cells = <1>; #size-cells = <0>; @@ -306,6 +337,71 @@ GPOEN_SYS_I2C6_DATA, }; }; + mmc0_pins: mmc0-0 { + rst-pins { + pinmux = <GPIOMUX(62, GPOUT_SYS_SDIO0_RST, + GPOEN_ENABLE, + GPI_NONE)>; + bias-pull-up; + drive-strength = <12>; + input-disable; + input-schmitt-disable; + slew-rate = <0>; + }; + + mmc-pins { + pinmux = <PINMUX(64, 0)>, + <PINMUX(65, 0)>, + <PINMUX(66, 0)>, + <PINMUX(67, 0)>, + <PINMUX(68, 0)>, + <PINMUX(69, 0)>, + <PINMUX(70, 0)>, + <PINMUX(71, 0)>, + <PINMUX(72, 0)>, + <PINMUX(73, 0)>; + bias-pull-up; + drive-strength = <12>; + input-enable; + }; + }; + + mmc1_pins: mmc1-0 { + clk-pins { + pinmux = <GPIOMUX(10, GPOUT_SYS_SDIO1_CLK, + GPOEN_ENABLE, + GPI_NONE)>; + bias-pull-up; + drive-strength = <12>; + input-disable; + input-schmitt-disable; + slew-rate = <0>; + }; + + mmc-pins { + pinmux = <GPIOMUX(9, GPOUT_SYS_SDIO1_CMD, + GPOEN_SYS_SDIO1_CMD, + GPI_SYS_SDIO1_CMD)>, + <GPIOMUX(11, GPOUT_SYS_SDIO1_DATA0, + GPOEN_SYS_SDIO1_DATA0, + GPI_SYS_SDIO1_DATA0)>, + <GPIOMUX(12, GPOUT_SYS_SDIO1_DATA1, + GPOEN_SYS_SDIO1_DATA1, + GPI_SYS_SDIO1_DATA1)>, + <GPIOMUX(7, GPOUT_SYS_SDIO1_DATA2, + GPOEN_SYS_SDIO1_DATA2, + GPI_SYS_SDIO1_DATA2)>, + <GPIOMUX(8, GPOUT_SYS_SDIO1_DATA3, + GPOEN_SYS_SDIO1_DATA3, + GPI_SYS_SDIO1_DATA3)>; + bias-pull-up; + drive-strength = <12>; + input-enable; + input-schmitt-enable; + slew-rate = <0>; + }; + }; + spi0_pins: spi0-0 { mosi-pins { pinmux = <GPIOMUX(52, GPOUT_SYS_SPI0_TXD, diff --git a/arch/riscv/boot/dts/starfive/jh7110.dtsi b/arch/riscv/boot/dts/starfive/jh7110.dtsi index a608433200e8..18d4b60a7bbf 100644 --- a/arch/riscv/boot/dts/starfive/jh7110.dtsi +++ b/arch/riscv/boot/dts/starfive/jh7110.dtsi @@ -821,6 +821,38 @@ watchdog@13070000 { <&syscrg JH7110_SYSRST_WDT_CORE>; }; + mmc0: mmc@16010000 { + compatible = "starfive,jh7110-mmc"; + reg = <0x0 0x16010000 0x0 0x10000>; + clocks = <&syscrg JH7110_SYSCLK_SDIO0_AHB>, + <&syscrg JH7110_SYSCLK_SDIO0_SDCARD>; + clock-names = "biu","ciu"; + resets = <&syscrg JH7110_SYSRST_SDIO0_AHB>; + reset-names = "reset"; + interrupts = <74>; + fifo-depth = <32>; + fifo-watermark-aligned; + data-addr = <0>; + starfive,sysreg = <&sys_syscon 0x14 0x1a 0x7c000000>; + status = "disabled"; + }; + + mmc1: mmc@16020000 { + compatible = "starfive,jh7110-mmc"; + reg = <0x0 0x16020000 0x0 0x10000>; + clocks = <&syscrg JH7110_SYSCLK_SDIO1_AHB>, + <&syscrg JH7110_SYSCLK_SDIO1_SDCARD>; + clock-names = "biu","ciu"; + resets = <&syscrg JH7110_SYSRST_SDIO1_AHB>; + reset-names = "reset"; + interrupts = <75>; + fifo-depth = <32>; + fifo-watermark-aligned; + data-addr = <0>; + starfive,sysreg = <&sys_syscon 0x9c 0x1 0x3e>; + status = "disabled"; + }; + gmac0: ethernet@16030000 { compatible = "starfive,jh7110-dwmac", "snps,dwmac-5.20"; reg = <0x0 0x16030000 0x0 0x10000>; -- 2.34.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v1 0/2] StarFive's MMC nodes support 2023-08-09 1:39 [PATCH v1 0/2] StarFive's MMC nodes support William Qiu 2023-08-09 1:39 ` [PATCH v1 1/2] riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060 William Qiu 2023-08-09 1:39 ` [PATCH v1 2/2] riscv: dts: starfive: Add mmc nodes on VisionFive 2 board William Qiu @ 2023-08-09 18:46 ` Conor Dooley 2 siblings, 0 replies; 6+ messages in thread From: Conor Dooley @ 2023-08-09 18:46 UTC (permalink / raw) To: Emil Renner Berthing, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley, Palmer Dabbelt, Albert Ou, Jia Jie Ho, devicetree, linux-kernel, linux-riscv, William Qiu Cc: conor, Conor Dooley From: Conor Dooley <conor.dooley@microchip.com> On Wed, 09 Aug 2023 09:39:15 +0800, William Qiu wrote: > This patchset adds dts nodes for the StarFive designware mobile storage > host controller driver. In device tree, we set mmc0 to eMMC, and set > mmc1 to sd card. > > William Qiu (2): > riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060 > riscv: dts: starfive: Add mmc nodes on VisionFive 2 board > > [...] Applied to riscv-dt-for-next, thanks! [1/2] riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060 https://git.kernel.org/conor/c/7dafcfa79cc9 [2/2] riscv: dts: starfive: Add mmc nodes on VisionFive 2 board https://git.kernel.org/conor/c/b127dbf9e1eb Thanks, Conor. ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-08-11 2:20 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-08-09 1:39 [PATCH v1 0/2] StarFive's MMC nodes support William Qiu 2023-08-09 1:39 ` [PATCH v1 1/2] riscv: dts: starfive: enable DCDC1&ALDO4 node in axp15060 William Qiu 2023-08-10 11:31 ` Emil Renner Berthing 2023-08-11 2:20 ` William Qiu 2023-08-09 1:39 ` [PATCH v1 2/2] riscv: dts: starfive: Add mmc nodes on VisionFive 2 board William Qiu 2023-08-09 18:46 ` [PATCH v1 0/2] StarFive's MMC nodes support Conor Dooley
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).