[U-Boot] [PATCH 14/28] drivers/fsl-mc: Changed MC firmware loading for new boot architecture
Kim Phillips
kim.phillips at freescale.com
Thu Mar 19 18:53:09 CET 2015
On Thu, 19 Mar 2015 09:45:45 -0700
York Sun <yorksun at freescale.com> wrote:
> From: "J. German Rivera" <German.Rivera at freescale.com>
>
> Changed MC firmware loading to comply with the new MC boot architecture.
> Flush D-cache hierarchy after loading MC images. Add environment
> variables "mcboottimeout" for MC boot timeout in milliseconds,
> "mcmemsize" for MC DRAM block size. Check MC boot status before calling
> flib functions.
Can we just assign actual and/or optimal values for 'mcboottimeout'
and 'mcmemsize' instead of making them environment variables?
> +static int wait_for_mc(bool booting_mc, u32 *final_reg_gsr)
> +{
> + u32 reg_gsr;
> + u32 mc_fw_boot_status;
> + unsigned long timeout_ms = get_mc_boot_timeout_ms();
> + struct mc_ccsr_registers __iomem *mc_ccsr_regs = MC_CCSR_BASE_ADDR;
> +
> + dmb();
> + debug("Polling mc_ccsr_regs->reg_gsr ...\n");
> + assert(timeout_ms > 0);
> + for (;;) {
> + udelay(1000); /* throttle polling */
does this really need to be a whole 1ms?
> @@ -318,14 +545,28 @@ int get_mc_boot_status(void)
>
> /**
> * Return the actual size of the MC private DRAM block.
> - *
> - * NOTE: For now this function always returns the minimum required size,
> - * However, in the future, the actual size may be obtained from an environment
> - * variable.
> */
why?
Kim
More information about the U-Boot
mailing list