All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Glass <sjg@chromium.org>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] libfdt: Add option to disable arch_fixup_fdt() calls
Date: Fri, 10 Jun 2016 10:44:39 -0600	[thread overview]
Message-ID: <CAPnjgZ06=beUB-RG=ZC4or+QFAsdwr_6h2GD_9AwkuxopFrEsw@mail.gmail.com> (raw)
In-Reply-To: <7bfd9751694a9be0b2c74e10345dfc6e51e5f86b.1465482210.git.michal.simek@xilinx.com>

Hi Michal,

On 9 June 2016 at 08:23, Michal Simek <michal.simek@xilinx.com> wrote:
> Disable arch_fixup_fdt() calls for cases where U-Boot shouldn't update
> memory setup in DTB file.
> One example of usage of this option is to boot OS with different memory
> setup than U-Boot use.
>
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
> ---
>
>  Kconfig                  | 8 ++++++++
>  arch/arm/lib/bootm-fdt.c | 2 ++
>  common/image-fdt.c       | 3 +++
>  3 files changed, 13 insertions(+)
>
> diff --git a/Kconfig b/Kconfig
> index 4b4621666560..3efba624ecff 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -291,6 +291,14 @@ config SYS_CLK_FREQ
>         help
>           TODO: Move CONFIG_SYS_CLK_FREQ for all the architecture
>
> +config DISABLE_ARCH_FIXUP_FDT
> +       bool "Disable arch_fixup_fdt() call"
> +       depends on ARM
> +       help
> +         Disable FDT memory map syncup before OS boot. This feature can be
> +         used for booting OS with different memory setup where the part of
> +         the memory location should be used for different purpose.
> +
>  endmenu                # Boot images
>

I think this would be better as a positive Kconfig - ARCH_FIXUP_FDT.

Also this is pretty ugly - with a weak function that gets #ifdefed
out. How about changing it so that the function is only called if the
Kconfig is set, and then it does not have to be weak?

>  source "common/Kconfig"
> diff --git a/arch/arm/lib/bootm-fdt.c b/arch/arm/lib/bootm-fdt.c
> index 7677358742e1..a873b778ade9 100644
> --- a/arch/arm/lib/bootm-fdt.c
> +++ b/arch/arm/lib/bootm-fdt.c
> @@ -24,6 +24,7 @@
>
>  DECLARE_GLOBAL_DATA_PTR;
>
> +#ifndef CONFIG_DISABLE_ARCH_FIXUP_FDT
>  int arch_fixup_fdt(void *blob)
>  {
>         bd_t *bd = gd->bd;
> @@ -50,3 +51,4 @@ int arch_fixup_fdt(void *blob)
>  #endif
>         return ret;
>  }
> +#endif
> diff --git a/common/image-fdt.c b/common/image-fdt.c
> index 6cac7dbb7f8b..9e05becd464a 100644
> --- a/common/image-fdt.c
> +++ b/common/image-fdt.c
> @@ -460,6 +460,9 @@ __weak int ft_verify_fdt(void *fdt)
>
>  __weak int arch_fixup_fdt(void *blob)
>  {
> +#ifdef CONFIG_DISABLE_ARCH_FIXUP_FDT
> +       printf("## Disable arch_fixup_fdt()\n");
> +#endif
>         return 0;
>  }
>
> --
> 1.9.1
>

Regards,
Simon

  parent reply	other threads:[~2016-06-10 16:44 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-09 14:23 [U-Boot] [PATCH] libfdt: Add option to disable arch_fixup_fdt() calls Michal Simek
2016-06-09 14:29 ` Alexander Graf
2016-06-09 14:32   ` Michal Simek
2016-06-09 14:40     ` Alexander Graf
2016-06-10 11:07       ` Michal Simek
2016-06-10 11:13         ` Alexander Graf
2016-06-10 11:51           ` Michal Simek
2016-06-10 12:12             ` Alexander Graf
2016-06-10 12:31               ` Michal Simek
2016-06-10 12:34                 ` Alexander Graf
2016-06-10 16:44 ` Simon Glass [this message]
2016-07-15  7:36   ` Michal Simek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAPnjgZ06=beUB-RG=ZC4or+QFAsdwr_6h2GD_9AwkuxopFrEsw@mail.gmail.com' \
    --to=sjg@chromium.org \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.