mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 1/2] MIPS: ath79: Use the firmware lib to parse the kernel command line
@ 2014-11-07 11:44 Alban Bedel
  2014-11-07 11:44 ` [PATCH 2/2] MIPS: ath79: Read the initrd address from the firmware environment Alban Bedel
  0 siblings, 1 reply; 2+ messages in thread
From: Alban Bedel @ 2014-11-07 11:44 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-mips, Ralf Baechle, Alban Bedel

No need to duplicate code that is available in the firmware library.
It also give us access to the firmware environment which is needed
to read the initrd address and size.

Signed-off-by: Alban Bedel <albeu@free.fr>
---
 arch/mips/ath79/prom.c | 30 ++----------------------------
 1 file changed, 2 insertions(+), 28 deletions(-)

diff --git a/arch/mips/ath79/prom.c b/arch/mips/ath79/prom.c
index e9cbd7c..80a0bff 100644
--- a/arch/mips/ath79/prom.c
+++ b/arch/mips/ath79/prom.c
@@ -16,39 +16,13 @@
 
 #include <asm/bootinfo.h>
 #include <asm/addrspace.h>
+#include <asm/fw/fw.h>
 
 #include "common.h"
 
-static inline int is_valid_ram_addr(void *addr)
-{
-	if (((u32) addr > KSEG0) &&
-	    ((u32) addr < (KSEG0 + ATH79_MEM_SIZE_MAX)))
-		return 1;
-
-	if (((u32) addr > KSEG1) &&
-	    ((u32) addr < (KSEG1 + ATH79_MEM_SIZE_MAX)))
-		return 1;
-
-	return 0;
-}
-
-static __init void ath79_prom_init_cmdline(int argc, char **argv)
-{
-	int i;
-
-	if (!is_valid_ram_addr(argv))
-		return;
-
-	for (i = 0; i < argc; i++)
-		if (is_valid_ram_addr(argv[i])) {
-			strlcat(arcs_cmdline, " ", sizeof(arcs_cmdline));
-			strlcat(arcs_cmdline, argv[i], sizeof(arcs_cmdline));
-		}
-}
-
 void __init prom_init(void)
 {
-	ath79_prom_init_cmdline(fw_arg0, (char **)fw_arg1);
+	fw_init_cmdline();
 }
 
 void __init prom_free_prom_memory(void)
-- 
2.0.0


^ permalink raw reply	[flat|nested] 2+ messages in thread

* [PATCH 2/2] MIPS: ath79: Read the initrd address from the firmware environment
  2014-11-07 11:44 [PATCH 1/2] MIPS: ath79: Use the firmware lib to parse the kernel command line Alban Bedel
@ 2014-11-07 11:44 ` Alban Bedel
  0 siblings, 0 replies; 2+ messages in thread
From: Alban Bedel @ 2014-11-07 11:44 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-mips, Ralf Baechle, Alban Bedel

Allow loading an initrd passed by the firmware.

Signed-off-by: Alban Bedel <albeu@free.fr>
---
 arch/mips/ath79/prom.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/mips/ath79/prom.c b/arch/mips/ath79/prom.c
index 80a0bff..e1fe630 100644
--- a/arch/mips/ath79/prom.c
+++ b/arch/mips/ath79/prom.c
@@ -13,6 +13,7 @@
 #include <linux/init.h>
 #include <linux/io.h>
 #include <linux/string.h>
+#include <linux/initrd.h>
 
 #include <asm/bootinfo.h>
 #include <asm/addrspace.h>
@@ -23,6 +24,13 @@
 void __init prom_init(void)
 {
 	fw_init_cmdline();
+
+	/* Read the initrd address from the firmware environment */
+	initrd_start = fw_getenvl("initrd_start");
+	if (initrd_start) {
+		initrd_start = KSEG0ADDR(initrd_start);
+		initrd_end = initrd_start + fw_getenvl("initrd_size");
+	}
 }
 
 void __init prom_free_prom_memory(void)
-- 
2.0.0


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-11-07 11:48 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-11-07 11:44 [PATCH 1/2] MIPS: ath79: Use the firmware lib to parse the kernel command line Alban Bedel
2014-11-07 11:44 ` [PATCH 2/2] MIPS: ath79: Read the initrd address from the firmware environment Alban Bedel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®