This fixes the kexec-build on ppc32 when
the --game-cube option is supplied to ./configure.
It seems to have bit-rotted a little.

Cc: Sebastian Andrzej Siewior <sebast...@breakpoint.cc>
Cc: Maxim Uvarov <muva...@gmail.com>
Signed-off-by: Simon Horman <ho...@verge.net.au>

Index: kexec-tools/kexec/arch/ppc/kexec-elf-ppc.c
===================================================================
--- kexec-tools.orig/kexec/arch/ppc/kexec-elf-ppc.c     2010-05-14 
00:18:25.000000000 +0900
+++ kexec-tools/kexec/arch/ppc/kexec-elf-ppc.c  2010-05-14 00:20:58.000000000 
+0900
@@ -162,17 +162,9 @@ int elf_ppc_load(int argc, char **argv,
        unsigned long max_addr, hole_addr;
        struct mem_phdr *phdr;
        size_t size;
-       unsigned long long *rsvmap_ptr;
-       struct bootblock *bb_ptr;
-       unsigned int nr_segments;
-       unsigned long my_kernel, my_dt_offset;
-       unsigned long my_stack, my_backup_start;
 #ifdef CONFIG_PPC64
        unsigned long toc_addr;
 #endif
-       unsigned int slave_code[256 / sizeof(unsigned int)], master_entry;
-       unsigned char *seg_buf = NULL;
-       off_t seg_size = 0;
 #ifdef WITH_GAMECUBE
        int target_is_gamecube = 1;
        char *arg_buf;
@@ -183,13 +175,21 @@ int elf_ppc_load(int argc, char **argv,
        unsigned char *setup_start;
        uint32_t setup_size;
 #else
+       unsigned long long *rsvmap_ptr;
+       struct bootblock *bb_ptr;
+       unsigned int nr_segments;
+       unsigned long my_kernel, my_dt_offset;
+       unsigned long my_stack, my_backup_start;
+       unsigned int slave_code[256 / sizeof(unsigned int)], master_entry;
+       unsigned char *seg_buf = NULL;
+       off_t seg_size = 0;
        int target_is_gamecube = 0;
        unsigned int addr;
        unsigned long dtb_addr;
+#endif
 #define FIXUP_ENTRYS   (20)
        char *fixup_nodes[FIXUP_ENTRYS + 1];
        int cur_fixup = 0;
-#endif
        int opt;
 
        command_line = NULL;
Index: kexec-tools/kexec/arch/ppc/kexec-ppc.c
===================================================================
--- kexec-tools.orig/kexec/arch/ppc/kexec-ppc.c 2010-05-14 00:18:25.000000000 
+0900
+++ kexec-tools/kexec/arch/ppc/kexec-ppc.c      2010-05-14 00:20:58.000000000 
+0900
@@ -26,6 +26,11 @@
 
 #include "config.h"
 
+uint64_t rmo_top;
+unsigned long long crash_base, crash_size;
+unsigned int rtas_base, rtas_size;
+int max_memory_ranges;
+
 #ifdef WITH_GAMECUBE
 #define MAX_MEMORY_RANGES  64
 static struct memory_range memory_range[MAX_MEMORY_RANGES];
@@ -46,15 +51,11 @@ static int get_memory_ranges_gc(struct m
 }
 #else
 static int use_new_dtb;
-int max_memory_ranges;
 static int nr_memory_ranges, nr_exclude_ranges;
 static struct memory_range *exclude_range;
 static struct memory_range *memory_range;
 static struct memory_range *base_memory_range;
 static uint64_t memory_max;
-uint64_t rmo_top;
-unsigned long long crash_base, crash_size;
-unsigned int rtas_base, rtas_size;
 
 /*
  * Count the memory nodes under /proc/device-tree and populate the
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to