[PATCH v4] imx: add i.MX8MN DDR3L evk board support

Michael Nazzareno Trimarchi michael at amarulasolutions.com
Sun Jun 19 07:58:49 CEST 2022


Hi

Il sab 18 giu 2022, 23:56 Heiko Thiery <heiko.thiery at gmail.com> ha scritto:

> Hi Michael, Hi Marek,
>
> Am Mi., 15. Juni 2022 um 08:43 Uhr schrieb Michael Nazzareno Trimarchi
> <michael at amarulasolutions.com>:
> >
> > Hi Heiko
> >
> > On Wed, Jun 15, 2022 at 8:23 AM Heiko Thiery <heiko.thiery at gmail.com>
> wrote:
> > >
> > > Hi Marek,
> > >
> > > [SNIP]
> > >
> > > > > diff --git a/board/freescale/imx8mn_evk/spl.c
> b/board/freescale/imx8mn_evk/spl.c
> > > > > index 14cb51368f..0d9909a662 100644
> > > > > --- a/board/freescale/imx8mn_evk/spl.c
> > > > > +++ b/board/freescale/imx8mn_evk/spl.c
> > > > > @@ -83,6 +83,15 @@ int power_init_board(void)
> > > > >  #ifdef CONFIG_IMX8MN_LOW_DRIVE_MODE
> > > > >         /* Set VDD_SOC/VDD_DRAM to 0.8v for low drive mode */
> > > > >         pmic_reg_write(dev, PCA9450_BUCK1OUT_DVS0, 0x10);
> > > > > +#elif defined(CONFIG_TARGET_IMX8MN_DDR3L_EVK)
> > > > > +       /* Set VDD_SOC to 0.85v for DDR3L at 1600MTS */
> > > > > +       pmic_reg_write(dev, PCA9450_BUCK1OUT_DVS0, 0x14);
> > > > > +
> > > > > +       /* Disable the BUCK2 */
> > > > > +       pmic_reg_write(dev, PCA9450_BUCK2CTRL, 0x48);
> > > > > +
> > > > > +       /* Set NVCC_DRAM to 1.35v */
> > > > > +       pmic_reg_write(dev, PCA9450_BUCK6OUT, 0x1E);
> > > > >  #else
> > > >
> > > > All this part is not done by the spl pmic driver?
> > >
> > > I saw that you added the PCA9450 driver. Do you know if this
> > > initialization can be done by the driver when CONFIG_SPL_DM_REGULATOR
> > > is enabled? If I see this correctly, it can't be done. Is that
> > > correct?
> >
> > +&i2c1 {
> > +       u-boot,dm-spl;
> > +};
> > +
> > +&{/soc at 0/bus at 30800000/i2c at 30a20000/pmic at 4b} {
> > +       u-boot,dm-spl;
> > +};
> > +
> > +&{/soc at 0/bus at 30800000/i2c at 30a20000/pmic at 4b/regulators} {
> > +       u-boot,dm-spl;
> > +};
> > +
> > +&pinctrl_i2c1 {
> > +       u-boot,dm-spl;
> > +};
> > +
> > +&pinctrl_pmic {
> > +       u-boot,dm-spl;
> > +};
> > +
> >
> > Maybe something like this should work. Now question is about should be
> > done in pre-reloc or not
>
> It took me a little while to understand what was meant by this. In the
> meantime I could
> change the PMIC/Regulator initialization to DT/DM and can make the setting
> so.
> What is not clear to me yet is at which point this should be done
> (regulators_enable_boot_on()). Currently I do it in the board/spl
> specific board_init_f().
>
> Do any of you have any advice here?
>

After having a discussion with you, i found that maybe i have some problem
and some of the setting should be done before ddr inizialization. I will
take a look on it on afternoon. I know marek was working on some way to
probe driver during binding and we need even to be sure that this can
happen before memory training.

Michael

>
> Thanks
> --
> Heiko
>
> > Michael
> > >
> > > --
> > > Heiko
> >
> >
> >
> > --
> > Michael Nazzareno Trimarchi
> > Co-Founder & Chief Executive Officer
> > M. +39 347 913 2170
> > michael at amarulasolutions.com
> > __________________________________
> >
> > Amarula Solutions BV
> > Joop Geesinkweg 125, 1114 AB, Amsterdam, NL
> > T. +31 (0)85 111 9172
> > info at amarulasolutions.com
> > www.amarulasolutions.com
>


More information about the U-Boot mailing list