[PATCH 2/2] support loading kernels/initrds > 6MB
Scott Moser
ssmoser at us.ibm.com
Sat Oct 6 01:07:48 EST 2007
move the tftp load space and use prom_claim_chunk to claim the memory.
Growing kernels mean that the 6MB that was allotted is not enough.
The Fedora 7 kernel is now at 7.3MB.
I've successfully tested loading of these larger kernels on this on my
power5 and power6 systems and JS2[12] blades.
diff --git a/second/fs_of.c b/second/fs_of.c
index d0b2e5b..2c27a18 100644
--- a/second/fs_of.c
+++ b/second/fs_of.c
@@ -44,9 +44,8 @@
#include "errors.h"
#include "debug.h"
-#define LOAD_BUFFER_POS 0x600000
-/* this cannot be safely increased any further */
-#define LOAD_BUFFER_SIZE 0x600000
+#define LOAD_BUFFER_POS 0x1000000
+#define LOAD_BUFFER_SIZE 0x1000000
static int of_open(struct boot_file_t* file, const char* dev_name,
struct partition_t* part, const char* file_name);
@@ -207,7 +206,9 @@ of_net_open(struct boot_file_t* file, const char* dev_name,
return FILE_ERR_BAD_FSYS;
}
- file->buffer = prom_claim((void *)LOAD_BUFFER_POS, LOAD_BUFFER_SIZE, 0);
+
+ file->buffer = prom_claim_chunk((void *)LOAD_BUFFER_POS,
+ LOAD_BUFFER_SIZE, 0);
if (file->buffer == (void *)-1) {
prom_printf("Can't claim memory for TFTP download\n");
prom_close(file->of_device);
More information about the Yaboot-devel
mailing list