Re: [PATCH] riscv: dts: jh7110: Enable PLL node in SPL

Leo Liang
2024-07-16T11:00:11Z

On Thu, Jul 11, 2024 at 12:55:05PM -0700, E Shattow wrote:
> [EXTERNAL MAIL]
>
> Ping. This regression still exists and is now in stable release.
> Should we revert this change or how must it be fixed?
>
> -E
>

Hi all,

I think I could revert this commit for now
if we cannot find the root cause and solution right away.

Best regards,
Leo

> On Sat, Apr 20, 2024 at 3:56 AM E Shattow <lucent@gmail.com> wrote:
> >
> > On Fri, Apr 19, 2024 at 5:51 PM Bo Gan <ganboing@gmail.com> wrote:
> > >
> > ...snip...
> > >
> > > If without the change (reverted), can you read/write the same SD media in U-boot
> > > proper? (U-boot proper will switch BUS_ROOT to PLL2).
> >
> > I tested again this change in commit e6b7aeef, before this change in
> > parent commit e6b7aeef~, af04f37a HEAD from today 19th Apr 2024 (which
> > due to not matching EEPROM product_id will be in the fall-through case
> > of board/starfive/visionfive2/spl.c), af04f37a with applied patchset
> > "board: starfive: add Milk-V Mars CM support" from 15th Apr 2024, and
> > af04f37a reverting changes from e6b7aeef also with applied patchset
> > "board: starfive: add Milk-V Mars CM support" from 15th Apr 2024.
> >
> > In all builds is OpenSBI at commit d4d2582e HEAD from today 19 Apr 2024.
> >
> > For each build tested per vendor Milk-V the Mars CM Lite (SD Card only
> > non-eMMC) has pinmux of GPIO22 instead of GPIO62:
> >
> > -- a/arch/riscv/dts/jh7110-starfive-visionfive-2.dtsi
> > +++ b/arch/riscv/dts/jh7110-starfive-visionfive-2.dtsi
> > @@ -233,7 +233,7 @@
> >
> > mmc0_pins: mmc0-pins {
> > mmc0-pins-rest {
> > - pinmux = <GPIOMUX(62, GPOUT_SYS_SDIO0_RST,
> > + pinmux = <GPIOMUX(22, GPOUT_SYS_SDIO0_RST,
> > GPOEN_ENABLE, GPI_NONE)>;
> > bias-pull-up;
> > drive-strength = <12>;
> >
> > U-Boot config is simply starfive_visionfive2_defconfig.
> >
> > Results are as follows.
> >
> > StarFive # mac
> > --------EEPROM INFO--------
> > Vendor : MILK-V
> > Product full SN: MARC-V10-2340-D004E000-000006DF
> > data version: 0x2
> > PCB revision: 0xc1
> > BOM revision: A
> > Ethernet MAC0 address: 6c:cf:39:00:83:11
> > Ethernet MAC1 address: 6c:cf:39:00:83:12
> > --------EEPROM INFO--------
> >
> > e6b7aeef: 2GB microSD (no speed class markings)
> > af04f37a: 2GB microSD (no speed class markings)
> > af04f37a with Mars CM patchset: 2GB microSD (no speed class markings)
> > StarFive # mmc rescan ; mmc info
> > unable to select a mode
> > unable to select a mode
> >
> > e6b7aeef~: 2GB microSD (no speed class markings)
> > af04f37a revert e6b7aeef with Mars CM patchset: 2GB microSD (no speed
> > class markings)
> > StarFive # mmc rescan ; mmc info
> > Device: mmc@16010000
> > Manufacturer ID: 1c
> > OEM: 5356
> > Name: USD
> > Bus Speed: 50000000
> > Mode: SD High Speed (50MHz)
> > Rd Block Len: 512
> > SD version 2.0
> > High Capacity: No
> > Capacity: 1.9 GiB
> > Bus Width: 1-bit
> > Erase Group Size: 512 Bytes
> >
> > e6b7aeef: 8GB microSD Class 4
> > e6b7aeef~: 8GB microSD Class 4
> > af04f37a: 8GB microSD Class 4
> > af04f37a with Mars CM patchset: 8GB microSD Class 4
> > af04f37a revert e6b7aeef with Mars CM patchset: 8GB microSD Class 4
> > StarFive # mmc rescan ; mmc info
> > Device: mmc@16010000
> > Manufacturer ID: 2
> > OEM: 544d
> > Name: SA08G
> > Bus Speed: 50000000
> > Mode: SD High Speed (50MHz)
> > Rd Block Len: 512
> > SD version 3.0
> > High Capacity: Yes
> > Capacity: 7.4 GiB
> > Bus Width: 1-bit
> > Erase Group Size: 512 Bytes
> >
> > e6b7aeef: 8GB microSD Class 10
> > e6b7aeef~: 8GB microSD Class 10
> > af04f37a: 8GB microSD Class 10
> > af04f37a with Mars CM patchset: 8GB microSD Class 10
> > af04f37a revert e6b7aeef with Mars CM patchset: 8GB microSD Class 10
> > StarFive # mmc rescan ; mmc info
> > Device: mmc@16010000
> > Manufacturer ID: 74
> > OEM: 4a60
> > Name: USD
> > Bus Speed: 50000000
> > Mode: SD High Speed (50MHz)
> > Rd Block Len: 512
> > SD version 3.0
> > High Capacity: Yes
> > Capacity: 7.5 GiB
> > Bus Width: 1-bit
> > Erase Group Size: 512 Bytes
> >
> > e6b7aeef: 32GB microSD Class 10 A1 U1 HC1
> > e6b7aeef~: 32GB microSD Class 10 A1 U1 HC1
> > af04f37a: 32GB microSD Class 10 A1 U1 HC1
> > af04f37a with Mars CM patchset: 32GB microSD Class 10 A1 U1 HC1
> > af04f37a revert e6b7aeef with Mars CM patchset: 32GB microSD Class 10 A1 U1 HC1
> > StarFive # mmc rescan ; mmc info
> > Device: mmc@16010000
> > Manufacturer ID: 3
> > OEM: 5344
> > Name: SC32G
> > Bus Speed: 50000000
> > Mode: SD High Speed (50MHz)
> > Rd Block Len: 512
> > SD version 3.0
> > High Capacity: Yes
> > Capacity: 29.7 GiB
> > Bus Width: 1-bit
> > Erase Group Size: 512 Bytes
> >
> > e6b7aeef: 200GB microSD Class 10 A1 U1 XC1
> > e6b7aeef~: 200GB microSD Class 10 A1 U1 XC1
> > af04f37a: 200GB microSD Class 10 A1 U1 XC1
> > af04f37a with Mars CM patchset: 200GB microSD Class 10 A1 U1 XC1
> > af04f37a revert e6b7aeef with Mars CM patchset: 200GB microSD Class 10 A1 U1 XC1
> > StarFive # mmc rescan ; mmc info
> > Device: mmc@16010000
> > Manufacturer ID: 3
> > OEM: 5344
> > Name: SC200
> > Bus Speed: 50000000
> > Mode: SD High Speed (50MHz)
> > Rd Block Len: 512
> > SD version 3.0
> > High Capacity: Yes
> > Capacity: 183.3 GiB
> > Bus Width: 1-bit
> > Erase Group Size: 512 Bytes
> >
> > e6b7aeef: 256GB microSD Class U3 XC1
> > e6b7aeef~: 256GB microSD Class U3 XC1
> > af04f37a: 256GB microSD Class U3 XC1
> > af04f37a with Mars CM patchset: 256GB microSD Class U3 XC1
> > af04f37a revert e6b7aeef with Mars CM patchset: 256GB microSD Class U3 XC1
> > StarFive # mmc rescan ; mmc info
> > Device: mmc@16010000
> > Manufacturer ID: 1b
> > OEM: 534d
> > Name: GE4S5
> > Bus Speed: 50000000
> > Mode: SD High Speed (50MHz)
> > Rd Block Len: 512
> > SD version 3.0
> > High Capacity: Yes
> > Capacity: 238.8 GiB
> > Bus Width: 1-bit
> > Erase Group Size: 512 Bytes
> >
> > > One potential problem I
> > > could think of is perhaps the SPL built is without SPL_PINCTRL_STARFIVE/JH7110
> > > or the u-boot dts is missing the pinctrl that properly sets drive-strength and
> > > other properties of the mmc0/1 pins. What dtb are you using? I tested this with
> > > visionfive2 and it's working fine. Can you share the tree/config you used to
> > > built for Milk-V Mars CM Lite? I don't see the corresponding dts being checked-
> > > in to u-boot tree, so it helps if you can share the code. Thanks!
> > >
> > > Bo
> >
> > As described, this is upstream U-Boot. Does this 'mmc info' testing
> > help give some ideas to suggest?
> >
> > -E