[PATCH 7/9] ARM: tegra: Support EMC frequency tables on Tegra210

Simon Glass sjg at chromium.org
Thu Sep 30 06:08:40 CEST 2021


On Fri, 3 Sept 2021 at 07:16, Thierry Reding <thierry.reding at gmail.com> wrote:
>
> From: Thierry Reding <treding at nvidia.com>
>
> The EMC frequency tables are created from a training sequence performed
> during early boot and passed in via a reserved memory region by nvtboot.
> Copy this table to the kernel DTB so that the kernel can use it to scale
> the EMC frequency at runtime.
>
> Note that early bootloaders store the EMC table at an address that
> currently intersects with the load address of the initial ramdisk. In
> order to avoid copying the table to a different address, simply change
> the load address for the initial ramdisk in U-Boot.
>
> Signed-off-by: Thierry Reding <treding at nvidia.com>
> ---
>  board/nvidia/p2371-2180/p2371-2180.c | 1 +
>  board/nvidia/p3450-0000/p3450-0000.c | 1 +
>  include/configs/tegra210-common.h    | 2 +-
>  3 files changed, 3 insertions(+), 1 deletion(-)

Reviewed-by: Simon Glass <sjg at chromium.org>

>
> diff --git a/board/nvidia/p2371-2180/p2371-2180.c b/board/nvidia/p2371-2180/p2371-2180.c
> index f5126c552b00..cd5dc2de629e 100644
> --- a/board/nvidia/p2371-2180/p2371-2180.c
> +++ b/board/nvidia/p2371-2180/p2371-2180.c
> @@ -183,6 +183,7 @@ static void ft_carveout_setup(void *fdt)
>         static const char * const nodes[] = {
>                 "/host1x at 50000000/dc at 54200000",
>                 "/host1x at 50000000/dc at 54240000",
> +               "/external-memory-controller at 7001b000",
>         };

This would be better added to the DT in 'sysinfo' driver or something
like that. It is not nice to have DT paths in the C code.


- Simon


More information about the U-Boot mailing list