From: Vineet Gupta <Vineet.Gupta1@synopsys.com>
To: Rob Herring <rob.herring@calxeda.com>
Cc: lkml <linux-kernel@vger.kernel.org>,
"devicetree-discuss@lists.ozlabs.org"
<devicetree-discuss@lists.ozlabs.org>,
grant Likely <grant.likely@secretlab.ca>
Subject: Re: [PATCH 03/28] of: create unflatten_and_copy_device_tree
Date: Tue, 17 Sep 2013 10:54:57 +0530 [thread overview]
Message-ID: <5237E7A9.5070703@synopsys.com> (raw)
In-Reply-To: <1379372965-22359-4-git-send-email-robherring2@gmail.com>
On 09/17/2013 04:38 AM, Rob Herring wrote:
> From: Rob Herring <rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org>
>
> Several architectures using DT support built-in dtb's in the init
> section. These platforms need to copy the dtb from init since the
> strings are referenced after unflattening. Every arch has their own
> copying routine which do the same thing. Create a common function,
> unflatten_and_copy_device_tree, to copy the dtb when unflattening the
> dtb.
>
> Signed-off-by: Rob Herring <rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org>
> Cc: Grant Likely <grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> ---
> drivers/of/fdt.c | 13 +++++++++++++
> include/linux/of_fdt.h | 2 ++
> 2 files changed, 15 insertions(+)
>
> diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
> index 229dd9d..eca1810 100644
> --- a/drivers/of/fdt.c
> +++ b/drivers/of/fdt.c
> @@ -802,6 +802,19 @@ void __init unflatten_device_tree(void)
> of_alias_scan(early_init_dt_alloc_memory_arch);
> }
>
> +void __init unflatten_and_copy_device_tree(void)
> +{
Can we add a comment here why exactly is the copy needed (unflattening doesn't
copy strings which are referenced to by the DT APIs). Will help first time readers.
> + int size = __be32_to_cpu(initial_boot_params->totalsize);
> + void *dt = early_init_dt_alloc_memory_arch(size,
> + __alignof__(struct boot_param_header));
> +
> + if (dt) {
> + memcpy(dt, initial_boot_params, size);
> + initial_boot_params = dt;
> + }
> + unflatten_device_tree();
> +}
> +
> #endif /* CONFIG_OF_EARLY_FLATTREE */
>
next prev parent reply other threads:[~2013-09-17 5:25 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-16 23:08 [PATCH 00/28] Early flattened DT init consolidation Rob Herring
2013-09-16 23:08 ` [PATCH 01/28] c6x: use boot_command_line instead of private c6x_command_line Rob Herring
2013-09-18 3:07 ` Grant Likely
2013-09-18 13:35 ` Mark Salter
2013-09-16 23:08 ` [PATCH 02/28] openrisc: use boot_command_line instead of private cmd_line Rob Herring
2013-09-16 23:08 ` [PATCH 03/28] of: create unflatten_and_copy_device_tree Rob Herring
2013-09-17 5:24 ` Vineet Gupta [this message]
2013-09-18 3:15 ` Grant Likely
2013-09-16 23:09 ` [PATCH 04/28] arc: use unflatten_and_copy_device_tree Rob Herring
2013-09-17 5:27 ` Vineet Gupta
2013-09-16 23:09 ` [PATCH 05/28] openrisc: " Rob Herring
2013-09-16 23:09 ` [PATCH 06/28] x86: " Rob Herring
2013-09-16 23:09 ` [PATCH 07/28] xtensa: " Rob Herring
2013-09-23 10:52 ` Max Filippov
2013-09-16 23:09 ` [PATCH 08/28] metag: " Rob Herring
2013-09-16 23:09 ` [PATCH 09/28] of: Introduce common early_init_dt_scan Rob Herring
2013-09-17 5:46 ` Vineet Gupta
2013-09-18 3:24 ` Grant Likely
2013-09-16 23:09 ` [PATCH 10/28] arc: use early_init_dt_scan Rob Herring
2013-09-17 6:37 ` Vineet Gupta
2013-09-16 23:09 ` [PATCH 11/28] arm: " Rob Herring
2013-09-16 23:09 ` [PATCH 12/28] arm64: " Rob Herring
2013-09-17 8:43 ` Catalin Marinas
2013-09-16 23:09 ` [PATCH 13/28] c6x: " Rob Herring
2013-09-17 12:00 ` Mark Salter
2013-09-16 23:09 ` [PATCH 14/28] microblaze: " Rob Herring
2013-09-17 13:05 ` Michal Simek
2013-09-16 23:09 ` [PATCH 15/28] mips: " Rob Herring
2013-09-17 4:32 ` John Crispin
2013-09-16 23:09 ` [PATCH 16/28] openrisc: " Rob Herring
2013-09-16 23:09 ` [PATCH 17/28] xtensa: " Rob Herring
2013-09-23 10:53 ` Max Filippov
2013-09-16 23:09 ` [PATCH 18/28] of: create default early_init_dt_add_memory_arch Rob Herring
2013-09-17 8:46 ` Catalin Marinas
2013-09-17 13:01 ` Rob Herring
2013-09-17 15:28 ` Catalin Marinas
2013-09-18 3:33 ` Grant Likely
2013-09-18 15:09 ` Rob Herring
2013-09-22 12:16 ` Grant Likely
2013-09-16 23:09 ` [PATCH 19/28] arm: set initrd_start/initrd_end for fdt scan Rob Herring
2013-09-18 3:36 ` Grant Likely
2013-09-16 23:09 ` [PATCH 20/28] arm64: " Rob Herring
2013-09-17 8:50 ` Catalin Marinas
2013-09-18 3:36 ` Grant Likely
2013-09-16 23:09 ` [PATCH 21/28] of: remove early_init_dt_setup_initrd_arch Rob Herring
2013-09-17 6:45 ` Vineet Gupta
2013-09-18 3:39 ` Grant Likely
2013-09-16 23:09 ` [PATCH 22/28] openrisc: remove unnecessary prom.c includes Rob Herring
2013-09-16 23:09 ` [PATCH 23/28] of: introduce common FDT machine related functions Rob Herring
2013-09-18 3:44 ` Grant Likely
2013-10-04 18:49 ` Grant Likely
2013-09-16 23:09 ` [PATCH 24/28] arc: use common of_flat_dt_match_machine Rob Herring
2013-09-17 6:50 ` Vineet Gupta
2013-09-16 23:09 ` [PATCH 25/28] arm: " Rob Herring
2013-09-16 23:09 ` [PATCH 26/28] arm64: use common of_flat_dt_get_machine_name Rob Herring
2013-09-17 8:53 ` Catalin Marinas
2013-09-16 23:09 ` [PATCH 27/28] metag: use common of_flat_dt_match_machine Rob Herring
2013-09-16 23:09 ` [PATCH 28/28] mips: use common of_flat_dt_get_machine_name Rob Herring
2013-09-17 4:32 ` John Crispin
2013-09-23 9:58 ` [PATCH 00/28] Early flattened DT init consolidation James Hogan
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=5237E7A9.5070703@synopsys.com \
--to=vineet.gupta1@synopsys.com \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=grant.likely@secretlab.ca \
--cc=linux-kernel@vger.kernel.org \
--cc=rob.herring@calxeda.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome