ppc targets

Eric W. Biederman ebiederman at lnxi.com
Thu Nov 11 20:02:01 CET 2004


Stefan Reinauer <stepan at openbios.org> writes:

> The ppc targets fail because of src/cpu/ppc/ppc4xx/mem.c
> struct mem_range is never ever defined. Is it struct lb_memory?!

That is because of the big change where sizeram was removed.
I think the definition originally sat in src/include/mem.h 
Which has been removed, because it is no longer used.

Getting the ppc port to use the device tree, looks like an interesting
task.
 
> I have a bunch of other patches lying around that I will commit if
> nobody complains
> 
> Stefan
> 
> 
> Index: src/arch/ppc/boot/linuxbios_table.c
> ===================================================================
> RCS file: /cvsroot/freebios/freebios2/src/arch/ppc/boot/linuxbios_table.c,v
> retrieving revision 1.7
> diff -u -r1.7 linuxbios_table.c
> --- src/arch/ppc/boot/linuxbios_table.c	27 Oct 2004 08:53:35 -0000	1.7
> +++ src/arch/ppc/boot/linuxbios_table.c	11 Nov 2004 15:39:34 -0000
> @@ -129,7 +129,7 @@
>  }
>  
>  void lb_memory_range(struct lb_memory *mem,
> -	uint32_t type, uint64_t start, uint64_t size)
> +	uint32_t type, unsigned long start, unsigned long size)
>  {
>  	int entries;
>  	entries = (mem->size - sizeof(*mem))/sizeof(mem->map[0]);
> Index: src/arch/ppc/boot/linuxbios_table.h
> ===================================================================
> RCS file: /cvsroot/freebios/freebios2/src/arch/ppc/boot/linuxbios_table.h,v
> retrieving revision 1.1
> diff -u -r1.1 linuxbios_table.h
> --- src/arch/ppc/boot/linuxbios_table.h	13 Jun 2003 22:07:51 -0000	1.1
> +++ src/arch/ppc/boot/linuxbios_table.h	11 Nov 2004 15:39:34 -0000
> @@ -7,8 +7,6 @@
>  
>  /* This file holds function prototypes for building the linuxbios table. */
>  unsigned long write_linuxbios_table(
> -	unsigned long *processor_map, 
> -	struct mem_range *ram,
>  	unsigned long low_table_start, unsigned long low_table_end,
>  	unsigned long rom_table_start, unsigned long rom_table_end);
>  
> Index: src/arch/ppc/lib/cpuid.c
> ===================================================================
> RCS file: /cvsroot/freebios/freebios2/src/arch/ppc/lib/cpuid.c,v
> retrieving revision 1.5
> diff -u -r1.5 cpuid.c
> --- src/arch/ppc/lib/cpuid.c	27 Oct 2004 08:53:35 -0000	1.5
> +++ src/arch/ppc/lib/cpuid.c	11 Nov 2004 15:39:34 -0000
> @@ -3,6 +3,7 @@
>  
>  #include "ppc.h"
>  #include "ppcreg.h"
> +#include <device/device.h>
>  #include <console/console.h>
>  
>  void display_cpuid(struct device *cpu)
> Index: src/include/cpu/cpu.h
> ===================================================================
> RCS file: /cvsroot/freebios/freebios2/src/include/cpu/cpu.h,v
> retrieving revision 1.4
> diff -u -r1.4 cpu.h
> --- src/include/cpu/cpu.h	16 Oct 2004 06:20:04 -0000	1.4
> +++ src/include/cpu/cpu.h	11 Nov 2004 15:39:34 -0000
> @@ -2,7 +2,7 @@
>  #define CPU_CPU_H
>  
>  struct device;
> -#include <arch/cpu.h>
> +// #include <arch/cpu.h>
>  
>  void cpu_initialize(void);
>  void initialize_cpus(struct bus *cpu_bus);

The fix here is to add an arch/ppc/include/arch/cpu.h.
It can be empty...

The rest look fine.

Eric



More information about the coreboot mailing list