]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/asm-powerpc/machdep.h
Merge ../linus
[linux-2.6-omap-h63xx.git] / include / asm-powerpc / machdep.h
index 629ca964b974740d8aac09eafd1f03efbf148b4a..c011abb8b600f1248fdfed9bb4ff9bbbd88ef87b 100644 (file)
@@ -47,20 +47,22 @@ struct machdep_calls {
 #ifdef CONFIG_PPC64
        void            (*hpte_invalidate)(unsigned long slot,
                                           unsigned long va,
-                                          int large,
+                                          int psize,
                                           int local);
        long            (*hpte_updatepp)(unsigned long slot, 
                                         unsigned long newpp, 
                                         unsigned long va,
-                                        int large,
+                                        int pize,
                                         int local);
        void            (*hpte_updateboltedpp)(unsigned long newpp, 
-                                              unsigned long ea);
+                                              unsigned long ea,
+                                              int psize);
        long            (*hpte_insert)(unsigned long hpte_group,
                                       unsigned long va,
                                       unsigned long prpn,
+                                      unsigned long rflags,
                                       unsigned long vflags,
-                                      unsigned long rflags);
+                                      int psize);
        long            (*hpte_remove)(unsigned long hpte_group);
        void            (*flush_hash_range)(unsigned long number, int local);
 
@@ -80,7 +82,6 @@ struct machdep_calls {
        void            (*iommu_dev_setup)(struct pci_dev *dev);
        void            (*iommu_bus_setup)(struct pci_bus *bus);
        void            (*irq_bus_setup)(struct pci_bus *bus);
-       int             (*set_dabr)(unsigned long dabr);
 #endif
 
        int             (*probe)(int platform);
@@ -92,7 +93,9 @@ struct machdep_calls {
 
        void            (*init_IRQ)(void);
        int             (*get_irq)(struct pt_regs *);
-       void            (*cpu_irq_down)(int secondary);
+#ifdef CONFIG_KEXEC
+       void            (*kexec_cpu_down)(int crash_shutdown, int secondary);
+#endif
 
        /* PCI stuff */
        /* Called after scanning the bus, before allocating resources */
@@ -156,6 +159,9 @@ struct machdep_calls {
           platform, called once per cpu. */
        void            (*enable_pmcs)(void);
 
+       /* Set DABR for this platform, leave empty for default implemenation */
+       int             (*set_dabr)(unsigned long dabr);
+
 #ifdef CONFIG_PPC32    /* XXX for now */
        /* A general init function, called by ppc_init in init/main.c.
           May be NULL. */