[PATCH V2 2/2] imx8mp_evk: simplify board spl code
Fabio Estevam
festevam at gmail.com
Mon May 11 14:14:16 CEST 2020
Hi Peng,
On Mon, May 11, 2020 at 3:55 AM Peng Fan <peng.fan at nxp.com> wrote:
>
> Simplify board SPL code
> - BSS area will be cleared by crt0_64.S
> - No need to get ccm device in spl_board_init
> - Use spl_early_init, not spl_init
> - timer_init has been invoked in arch_cpu_init
These are several changes in the same patch. It would be better to split them.
>
> Signed-off-by: Peng Fan <peng.fan at nxp.com>
> ---
>
> V2:
> Fix build warning
>
> board/freescale/imx8mp_evk/spl.c | 30 ++----------------------------
> 1 file changed, 2 insertions(+), 28 deletions(-)
>
> diff --git a/board/freescale/imx8mp_evk/spl.c b/board/freescale/imx8mp_evk/spl.c
> index c5f640dc7b..7b02f43d95 100644
> --- a/board/freescale/imx8mp_evk/spl.c
> +++ b/board/freescale/imx8mp_evk/spl.c
> @@ -25,11 +25,6 @@
> #include <mmc.h>
> #include <asm/arch/ddr.h>
>
> -#include <dm/uclass.h>
> -#include <dm/device.h>
> -#include <dm/uclass-internal.h>
> -#include <dm/device-internal.h>
> -
> DECLARE_GLOBAL_DATA_PTR;
>
> int spl_board_boot_device(enum boot_device boot_dev_spl)
> @@ -44,16 +39,7 @@ void spl_dram_init(void)
>
> void spl_board_init(void)
> {
> - struct udevice *dev;
> - int ret;
> -
> puts("Normal Boot\n");
> -
> - ret = uclass_get_device_by_name(UCLASS_CLK,
> - "clock-controller at 30380000",
> - &dev);
We need this for the SPL watchdog driver, no?
I tried selecting CONFIG_SPL_CLK_IMX8MP=y and then the board does not
boot anymore, so it looks like we need a better solution.
> - if (ret < 0)
> - printf("Failed to find clock node. Check device tree\n");
> }
>
> #define I2C_PAD_CTRL (PAD_CTL_DSE6 | PAD_CTL_HYS | PAD_CTL_PUE | PAD_CTL_PE)
> @@ -114,29 +100,19 @@ int board_fit_config_name_match(const char *name)
> }
> #endif
>
> +/* Do not use BSS area in this phase */
> void board_init_f(ulong dummy)
> {
> - int ret;
> -
> arch_cpu_init();
>
> init_uart_clk(1);
>
> board_early_init_f();
>
> - timer_init();
> + spl_early_init();
You should check the returned value from spl_early_init().
If you send a v2, could you please:
Thanks
More information about the U-Boot
mailing list