Hi, Am So., 19. Juni 2022 um 16:40 Uhr schrieb Michael Nazzareno Trimarchi <mich...@amarulasolutions.com>: > > Hi Heiko > > On Sun, Jun 19, 2022 at 8:12 AM Heiko Thiery <heiko.thi...@gmail.com> wrote: > > > > Hi, > > > > Am So., 19. Juni 2022 um 07:59 Uhr schrieb Michael Nazzareno Trimarchi > > <mich...@amarulasolutions.com>: > > > > > > Hi > > > > > > Il sab 18 giu 2022, 23:56 Heiko Thiery <heiko.thi...@gmail.com> ha > > > scritto: > > >> > > >> Hi Michael, Hi Marek, > > >> > > >> Am Mi., 15. Juni 2022 um 08:43 Uhr schrieb Michael Nazzareno Trimarchi > > >> <mich...@amarulasolutions.com>: > > >> > > > >> > Hi Heiko > > >> > > > >> > On Wed, Jun 15, 2022 at 8:23 AM Heiko Thiery <heiko.thi...@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@0/bus@30800000/i2c@30a20000/pmic@4b} { > > >> > + u-boot,dm-spl; > > >> > +}; > > >> > + > > >> > +&{/soc@0/bus@30800000/i2c@30a20000/pmic@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. > > > > > > > Currently I added it in board_init_f() right before spl_dram_init() > > [1] and it works. I also tried to put it in power_init_board() [2] but > > this does not work. > > > > [1] > > https://elixir.bootlin.com/u-boot/v2022.04/source/board/freescale/imx8mn_evk/spl.c#L162 > > [2] > > https://elixir.bootlin.com/u-boot/v2022.04/source/board/freescale/imx8mn_evk/spl.c#L62 > > Does it work if you mark pre-reoloc, pmic, i2c, and pinctrl?
I added on all nodes the u-boot,dm-pre-reloc but this does not help when trying to do the init in power_init_board(). > > Michael > > > > > -- > > Heiko > > > > > Michael > > >> > > >> > > >> Thanks > > >> -- > > >> Heiko > > >> > > >> > Michael > > >> > > > > >> > > -- > > >> > > Heiko > > >> > > > >> > > > >> > > > >> > -- > > >> > Michael Nazzareno Trimarchi > > >> > Co-Founder & Chief Executive Officer > > >> > M. +39 347 913 2170 > > >> > mich...@amarulasolutions.com > > >> > __________________________________ > > >> > > > >> > Amarula Solutions BV > > >> > Joop Geesinkweg 125, 1114 AB, Amsterdam, NL > > >> > T. +31 (0)85 111 9172 > > >> > i...@amarulasolutions.com > > >> > www.amarulasolutions.com > > > > -- > Michael Nazzareno Trimarchi > Co-Founder & Chief Executive Officer > M. +39 347 913 2170 > mich...@amarulasolutions.com > __________________________________ > > Amarula Solutions BV > Joop Geesinkweg 125, 1114 AB, Amsterdam, NL > T. +31 (0)85 111 9172 > i...@amarulasolutions.com > www.amarulasolutions.com