From: Rob Herring <robherring2@gmail.com>
To: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
Cc: Grant Likely <grant.likely@linaro.org>,
Rob Herring <rob.herring@calxeda.com>,
Will Deacon <will.deacon@arm.com>,
linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 21/29] arm64: set initrd_start/initrd_end for fdt scan
Date: Mon, 7 Oct 2013 11:29:29 -0500 [thread overview]
Message-ID: <1381163377-21044-22-git-send-email-robherring2@gmail.com> (raw)
In-Reply-To: <1381163377-21044-1-git-send-email-robherring2@gmail.com>
From: Rob Herring <rob.herring@calxeda.com>
In order to unify the initrd scanning for DT across architectures, make
arm64 use initrd_start and initrd_end instead of the physical addresses.
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: linux-arm-kernel@lists.infradead.org
---
arch/arm64/mm/init.c | 24 ++++++------------------
1 file changed, 6 insertions(+), 18 deletions(-)
diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c
index de2de5d..8261f4e 100644
--- a/arch/arm64/mm/init.c
+++ b/arch/arm64/mm/init.c
@@ -39,17 +39,9 @@
#include "mm.h"
-static unsigned long phys_initrd_start __initdata = 0;
-static unsigned long phys_initrd_size __initdata = 0;
-
phys_addr_t memstart_addr __read_mostly = 0;
-void __init early_init_dt_setup_initrd_arch(u64 start, u64 end)
-{
- phys_initrd_start = start;
- phys_initrd_size = end - start;
-}
-
+#ifdef CONFIG_BLK_DEV_INITRD
static int __init early_initrd(char *p)
{
unsigned long start, size;
@@ -59,12 +51,13 @@ static int __init early_initrd(char *p)
if (*endp == ',') {
size = memparse(endp + 1, NULL);
- phys_initrd_start = start;
- phys_initrd_size = size;
+ initrd_start = (unsigned long)__va(start);
+ initrd_end = (unsigned long)__va(start + size);
}
return 0;
}
early_param("initrd", early_initrd);
+#endif
#define MAX_DMA32_PFN ((4UL * 1024 * 1024 * 1024) >> PAGE_SHIFT)
@@ -137,13 +130,8 @@ void __init arm64_memblock_init(void)
/* Register the kernel text, kernel data and initrd with memblock */
memblock_reserve(__pa(_text), _end - _text);
#ifdef CONFIG_BLK_DEV_INITRD
- if (phys_initrd_size) {
- memblock_reserve(phys_initrd_start, phys_initrd_size);
-
- /* Now convert initrd to virtual addresses */
- initrd_start = __phys_to_virt(phys_initrd_start);
- initrd_end = initrd_start + phys_initrd_size;
- }
+ if (initrd_start)
+ memblock_reserve(__virt_to_phys(initrd_start), initrd_end - initrd_start);
#endif
/*
--
1.8.1.2
next prev parent reply other threads:[~2013-10-07 16:29 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-07 16:29 [PATCH v2 00/29] Early flattened DT init consolidation Rob Herring
[not found] ` <1381163377-21044-1-git-send-email-robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-10-07 16:29 ` [PATCH v2 01/29] c6x: use boot_command_line instead of private c6x_command_line Rob Herring
2013-10-07 20:12 ` Mark Salter
2013-10-07 16:29 ` [PATCH v2 03/29] of: create unflatten_and_copy_device_tree Rob Herring
2013-10-07 16:29 ` [PATCH v2 04/29] arc: use unflatten_and_copy_device_tree Rob Herring
2013-10-07 16:29 ` [PATCH v2 10/29] arc: use early_init_dt_scan Rob Herring
2013-10-07 16:29 ` [PATCH v2 12/29] arm64: " Rob Herring
2013-10-07 16:29 ` [PATCH v2 25/29] arc: use common of_flat_dt_match_machine Rob Herring
[not found] ` <1381163377-21044-26-git-send-email-robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-10-08 5:42 ` Vineet Gupta
[not found] ` <52539B4C.9040400-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
2013-10-09 17:04 ` Rob Herring
2013-10-10 5:04 ` Vineet Gupta
2013-10-07 16:29 ` [PATCH v2 02/29] openrisc: use boot_command_line instead of private cmd_line Rob Herring
2013-10-07 16:29 ` [PATCH v2 05/29] openrisc: use unflatten_and_copy_device_tree Rob Herring
2013-10-07 16:29 ` [PATCH v2 06/29] x86: " Rob Herring
2013-10-07 16:29 ` [PATCH v2 07/29] xtensa: " Rob Herring
2013-10-07 16:29 ` [PATCH v2 08/29] metag: " Rob Herring
2013-11-08 11:39 ` Qais Yousef
2013-11-08 13:12 ` James Hogan
[not found] ` <527CE32F.6090305-1AXoQHu6uovQT0dZR+AlfA@public.gmane.org>
2013-11-08 17:26 ` Rob Herring
[not found] ` <CAL_JsqKprnCn7JQj7QFbMbLW3Ei-paBH6RYti+CgEFCb4JUaAQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-11-08 17:34 ` James Hogan
2013-10-07 16:29 ` [PATCH v2 09/29] of: Introduce common early_init_dt_scan Rob Herring
2013-10-07 16:29 ` [PATCH v2 11/29] arm: use early_init_dt_scan Rob Herring
2013-10-07 16:29 ` [PATCH v2 13/29] c6x: " Rob Herring
2013-10-07 16:29 ` [PATCH v2 14/29] metag: " Rob Herring
[not found] ` <1381163377-21044-15-git-send-email-robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-11-08 13:06 ` James Hogan
2013-10-07 16:29 ` [PATCH v2 15/29] microblaze: " Rob Herring
2013-10-07 16:29 ` [PATCH v2 16/29] mips: " Rob Herring
2013-10-07 16:29 ` [PATCH v2 17/29] openrisc: " Rob Herring
2013-10-07 16:29 ` [PATCH v2 18/29] xtensa: " Rob Herring
2013-10-07 16:29 ` [PATCH v2 19/29] of: create default early_init_dt_add_memory_arch Rob Herring
2013-10-07 16:32 ` Catalin Marinas
2013-10-07 16:29 ` [PATCH v2 20/29] arm: set initrd_start/initrd_end for fdt scan Rob Herring
2013-10-07 16:29 ` Rob Herring [this message]
2013-10-07 16:29 ` [PATCH v2 22/29] of: remove early_init_dt_setup_initrd_arch Rob Herring
[not found] ` <1381163377-21044-23-git-send-email-robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-11-08 13:07 ` James Hogan
2013-10-07 16:29 ` [PATCH v2 23/29] openrisc: remove unnecessary prom.c includes Rob Herring
2013-10-07 16:29 ` [PATCH v2 24/29] of: introduce common FDT machine related functions Rob Herring
2013-10-07 16:29 ` [PATCH v2 26/29] arm: use common of_flat_dt_match_machine Rob Herring
2013-10-07 16:29 ` [PATCH v2 27/29] arm64: use common of_flat_dt_get_machine_name Rob Herring
2013-10-07 16:29 ` [PATCH v2 28/29] metag: use common of_flat_dt_match_machine Rob Herring
2013-10-07 16:29 ` [PATCH v2 29/29] mips: use common of_flat_dt_get_machine_name Rob Herring
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=1381163377-21044-22-git-send-email-robherring2@gmail.com \
--to=robherring2@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=grant.likely@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rob.herring@calxeda.com \
--cc=will.deacon@arm.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;
as well as URLs for NNTP newsgroup(s).