linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / include / asm-sparc64 / ebus.h
index a4afe9d..7a408a0 100644 (file)
 
 #include <asm/pbm.h>
 #include <asm/oplib.h>
-#include <asm/prom.h>
-#include <asm/of_device.h>
 
 struct linux_ebus_child {
        struct linux_ebus_child         *next;
        struct linux_ebus_device        *parent;
        struct linux_ebus               *bus;
-       struct device_node              *prom_node;
+       int                              prom_node;
+       char                             prom_name[64];
        struct resource                  resource[PROMREG_MAX];
        int                              num_addrs;
        unsigned int                     irqs[PROMINTR_MAX];
@@ -25,29 +24,32 @@ struct linux_ebus_child {
 };
 
 struct linux_ebus_device {
-       struct of_device                ofdev;
        struct linux_ebus_device        *next;
        struct linux_ebus_child         *children;
        struct linux_ebus               *bus;
-       struct device_node              *prom_node;
+       int                              prom_node;
+       char                             prom_name[64];
        struct resource                  resource[PROMREG_MAX];
        int                              num_addrs;
        unsigned int                     irqs[PROMINTR_MAX];
        int                              num_irqs;
 };
-#define to_ebus_device(d) container_of(d, struct linux_ebus_device, ofdev.dev)
 
 struct linux_ebus {
-       struct of_device                ofdev;
        struct linux_ebus               *next;
        struct linux_ebus_device        *devices;
        struct pci_pbm_info             *parent;
        struct pci_dev                  *self;
        int                              index;
        int                              is_rio;
-       struct device_node              *prom_node;
+       int                              prom_node;
+       char                             prom_name[64];
+       struct linux_prom_ebus_ranges    ebus_ranges[PROMREG_MAX];
+       int                              num_ebus_ranges;
+       struct linux_prom_ebus_intmap    ebus_intmap[PROMREG_MAX];
+       int                              num_ebus_intmap;
+       struct linux_prom_ebus_intmask   ebus_intmask;
 };
-#define to_ebus(d) container_of(d, struct linux_ebus, ofdev.dev)
 
 struct ebus_dma_info {
        spinlock_t      lock;