powerpc: Merge in 64-bit powermac support.
This brings in a lot of changes from arch/ppc64/kernel/pmac_*.c to
arch/powerpc/platforms/powermac/*.c and makes various minor tweaks
elsewhere. On the powermac we now initialize ppc_md by copying
the whole pmac_md structure into it, which required some changes in
the ordering of initializations of individual fields of it.
Signed-off-by: Paul Mackerras <paulus@samba.org>
diff --git a/include/asm-powerpc/machdep.h b/include/asm-powerpc/machdep.h
index 8a0969b..b3a93b4 100644
--- a/include/asm-powerpc/machdep.h
+++ b/include/asm-powerpc/machdep.h
@@ -119,6 +119,8 @@
/* Interface for platform error logging */
void (*log_error)(char *buf, unsigned int err_type, int fatal);
+ unsigned char (*nvram_read_val)(int addr);
+ void (*nvram_write_val)(int addr, unsigned char val);
ssize_t (*nvram_write)(char *buf, size_t count, loff_t *index);
ssize_t (*nvram_read)(char *buf, size_t count, loff_t *index);
ssize_t (*nvram_size)(void);
@@ -165,15 +167,11 @@
unsigned long heartbeat_reset;
unsigned long heartbeat_count;
- unsigned long (*find_end_of_memory)(void);
void (*setup_io_mappings)(void);
void (*early_serial_map)(void);
void (*kgdb_map_scc)(void);
- unsigned char (*nvram_read_val)(int addr);
- void (*nvram_write_val)(int addr, unsigned char val);
-
/*
* optional PCI "hooks"
*/
diff --git a/include/asm-ppc64/system.h b/include/asm-ppc64/system.h
index d1e0093..2e17ef7 100644
--- a/include/asm-ppc64/system.h
+++ b/include/asm-ppc64/system.h
@@ -148,6 +148,8 @@
extern struct task_struct * _switch(struct thread_struct *prev,
struct thread_struct *next);
+extern int powersave_nap; /* set if nap mode can be used in idle loop */
+
/*
* Atomic exchange
*
diff --git a/include/asm-ppc64/udbg.h b/include/asm-ppc64/udbg.h
index c786604..8192fb8 100644
--- a/include/asm-ppc64/udbg.h
+++ b/include/asm-ppc64/udbg.h
@@ -28,4 +28,7 @@
extern void __init ppcdbg_initialize(void);
extern void udbg_init_uart(void __iomem *comport, unsigned int speed);
+
+struct device_node;
+extern void udbg_init_scc(struct device_node *np);
#endif