[PATCH v5 09/11] arm: add support for reserved memory defined by device tree
khilman at linaro.org
Thu Mar 13 17:51:56 EDT 2014
Josh Cartwright <joshc at codeaurora.org> writes:
> On Thu, Mar 13, 2014 at 01:46:50PM -0700, Kevin Hilman wrote:
>> On Fri, Feb 21, 2014 at 4:25 AM, Marek Szyprowski
>> <m.szyprowski at samsung.com> wrote:
>> > Enable reserved memory initialization from device tree.
>> > Signed-off-by: Marek Szyprowski <m.szyprowski at samsung.com>
>> This patch has hit -next and several legacy (non-DT) boot failures
>> were detected and bisected down to this patch. A quick scan looks
>> like there needs to be some sanity checking whether a DT is even
> Hmm. Yes, the code unconditionally calls of_flat_dt_scan(), which will
> gladly touch initial_boot_params, even though it may be uninitialized.
> The below patch should allow these boards to boot...
> However, I'm wondering if there is a good reason why we don't parse the
> /reserved-memory nodes at the right after we parse the /memory nodes as
> part of early_init_dt_scan()...
> Subject: [PATCH] drivers: of: only scan for reserved mem when fdt present
> Reported-by: Kevin Hilman <khilman at linaro.org>
> Signed-off-by: Josh Cartwright <joshc at codeaurora.org>
This gets legacy boot working again. Thanks.
Tested-by: Kevin Hilman <khilman at linaro.org>
> drivers/of/fdt.c | 3 +++
> 1 file changed, 3 insertions(+)
> diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
> index 510c0d8..501bc83 100644
> --- a/drivers/of/fdt.c
> +++ b/drivers/of/fdt.c
> @@ -557,6 +557,9 @@ static int __init __fdt_scan_reserved_mem(unsigned long node, const char *uname,
> void __init early_init_fdt_scan_reserved_mem(void)
> + if (!initial_boot_params)
> + return;
> of_scan_flat_dt(__fdt_scan_reserved_mem, NULL);
More information about the linux-arm-kernel