[PATCH] rockchip: rk3328: rock64 - fix gen3 SPL hang

Matwey V. Kornilov matwey.kornilov at gmail.com
Tue May 19 11:48:18 CEST 2020


вт, 19 мая 2020 г. в 01:06, Kurt Miller <lists at intricatesoftware.com>:
>
> On Wed, 2020-05-13 at 16:10 -0400, Kurt Miller wrote:
> > On Wed, 2020-05-13 at 22:58 +0300, Matwey V. Kornilov wrote:
> > >
> > > Thanks. Have you already checked it on gen2? I think I have gen2 board to test.
> > Yes, I have both gen3 and gen2 boards. gen2 continues to work
> > with this patch as well.
>
> Hi Matwey,

Hi Kurt,

Sorry for the late reply. I've just managed to apply you patch on top
of ed9a3aa645 and it didn't work for me on 2GB v2.0 rock64 board.

U-Boot TPL 2020.07-rc2-00133-ged9a3aa645-dirty (May 19 2020 - 12:44:16)
LPDDR3, 800MHz
BW=32 Col=10 Bk=8 CS0 Row=15 CS1 Row=15 CS=2 Die BW=16 Size=2048MB
Trying to boot from BOOTROM
Returning to boot ROM...

U-Boot SPL 2020.07-rc2-00133-ged9a3aa645-dirty (May 19 2020 - 12:44:16 +0300)
Trying to boot from MMC1
[and nothing else happens here]

What do you think may be the reason?

>
> Is there anything else you need to complete your review of
> this patch?
>
> Thanks,
> -Kurt
>
> >
> > >
> > >
> > > ср, 13 мая 2020 г. в 22:55, Kurt Miller <kurt at intricatesoftware.com>:
> > > >
> > > >
> > > >
> > > > Use the same approach as ROC-RK3328-CC which enables SPL GPIO,
> > > > pinctl and regulator support. This allows the gen3 board to
> > > > boot through SPL and does not break gen2 in the process.
> > > >
> > > > Signed-off-by: Kurt Miller <kurt at intricatesoftware.com>
> > > > ---
> > > >
> > > >  arch/arm/dts/rk3328-rock64-u-boot.dtsi | 21 +++++++++++++++++++++
> > > >  configs/rock64-rk3328_defconfig        |  7 ++++++-
> > > >  2 files changed, 27 insertions(+), 1 deletion(-)
> > > >
> > > > diff --git a/arch/arm/dts/rk3328-rock64-u-boot.dtsi b/arch/arm/dts/rk3328-rock64-u-boot.dtsi
> > > > index 8318bf4e60..f076075076 100644
> > > > --- a/arch/arm/dts/rk3328-rock64-u-boot.dtsi
> > > > +++ b/arch/arm/dts/rk3328-rock64-u-boot.dtsi
> > > > @@ -11,6 +11,22 @@
> > > >         };
> > > >  };
> > > >
> > > > +&gpio0 {
> > > > +       u-boot,dm-spl;
> > > > +};
> > > > +
> > > > +&pinctrl {
> > > > +       u-boot,dm-spl;
> > > > +};
> > > > +
> > > > +&sdmmc0m1_gpio {
> > > > +       u-boot,dm-spl;
> > > > +};
> > > > +
> > > > +&pcfg_pull_up_4ma {
> > > > +       u-boot,dm-spl;
> > > > +};
> > > > +
> > > >  &usb_host0_xhci {
> > > >         vbus-supply = <&vcc_host_5v>;
> > > >         status = "okay";
> > > > @@ -25,3 +41,8 @@
> > > >         /delete-property/ regulator-always-on;
> > > >         /delete-property/ regulator-boot-on;
> > > >  };
> > > > +
> > > > +/* Need this and all the pinctrl/gpio stuff above to set pinmux */
> > > > +&vcc_sd {
> > > > +       u-boot,dm-spl;
> > > > +};
> > > > diff --git a/configs/rock64-rk3328_defconfig b/configs/rock64-rk3328_defconfig
> > > > index 7d096d38c6..0bc2198f5c 100644
> > > > --- a/configs/rock64-rk3328_defconfig
> > > > +++ b/configs/rock64-rk3328_defconfig
> > > > @@ -1,6 +1,7 @@
> > > >  CONFIG_ARM=y
> > > >  CONFIG_ARCH_ROCKCHIP=y
> > > >  CONFIG_SYS_TEXT_BASE=0x00200000
> > > > +CONFIG_SPL_GPIO_SUPPORT=y
> > > >  CONFIG_ENV_OFFSET=0x3F8000
> > > >  CONFIG_ROCKCHIP_RK3328=y
> > > >  CONFIG_TPL_ROCKCHIP_COMMON_BOARD=y
> > > > @@ -25,6 +26,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y
> > > >  # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
> > > >  CONFIG_TPL_SYS_MALLOC_SIMPLE=y
> > > >  CONFIG_SPL_STACK_R=y
> > > > +CONFIG_SPL_I2C_SUPPORT=y
> > > > +CONFIG_SPL_POWER_SUPPORT=y
> > > >  CONFIG_SPL_ATF=y
> > > >  CONFIG_SPL_ATF_NO_PLATFORM_PARAM=y
> > > >  CONFIG_CMD_BOOTZ=y
> > > > @@ -36,7 +39,7 @@ CONFIG_CMD_TIME=y
> > > >  CONFIG_SPL_OF_CONTROL=y
> > > >  CONFIG_TPL_OF_CONTROL=y
> > > >  CONFIG_DEFAULT_DEVICE_TREE="rk3328-rock64"
> > > > -CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-
> > > > rates assigned-clock-parents"
> > > > +CONFIG_OF_SPL_REMOVE_PROPS="clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-
> > > > parents"
> > > >  CONFIG_TPL_OF_PLATDATA=y
> > > >  CONFIG_ENV_IS_IN_MMC=y
> > > >  CONFIG_SYS_RELOC_GD_ENV_ADDR=y
> > > > @@ -64,7 +67,9 @@ CONFIG_PINCTRL=y
> > > >  CONFIG_SPL_PINCTRL=y
> > > >  CONFIG_DM_PMIC=y
> > > >  CONFIG_PMIC_RK8XX=y
> > > > +CONFIG_SPL_DM_REGULATOR=y
> > > >  CONFIG_REGULATOR_PWM=y
> > > > +CONFIG_SPL_DM_REGULATOR_FIXED=y
> > > >  CONFIG_DM_REGULATOR_FIXED=y
> > > >  CONFIG_REGULATOR_RK8XX=y
> > > >  CONFIG_PWM_ROCKCHIP=y
> > > > --
> > > > 2.26.0
> > > >
>


-- 
With best regards,
Matwey V. Kornilov


More information about the U-Boot mailing list