[SPARC64]: Move index info pci_pbm_info.
[powerpc.git] / include / asm-sparc64 / pbm.h
index c008cec..d99e046 100644 (file)
@@ -36,15 +36,12 @@ extern void pci_iommu_table_init(struct iommu *iommu, int tsbsize, u32 dma_offse
 #define PCI_STC_FLUSHFLAG_SET(STC) \
        (*((STC)->strbuf_flushflag) != 0UL)
 
-/* There can be quite a few ranges and interrupt maps on a PCI
- * segment.  Thus...
- */
-#define PROM_PCIRNG_MAX                64
-#define PROM_PCIIMAP_MAX       64
-
 struct pci_controller_info;
 
 struct pci_pbm_info {
+       struct pci_pbm_info             *next;
+       int                             index;
+
        /* PCI controller we sit under. */
        struct pci_controller_info      *parent;
 
@@ -107,6 +104,9 @@ struct pci_pbm_info {
        u32                             msi64_len;
        void                            *msi_queues;
        unsigned long                   *msi_bitmap;
+       int (*setup_msi_irq)(unsigned int *virt_irq_p, struct pci_dev *pdev,
+                            struct msi_desc *entry);
+       void (*teardown_msi_irq)(unsigned int virt_irq, struct pci_dev *pdev);
 #endif /* !(CONFIG_PCI_MSI) */
 
        /* This PBM's streaming buffer. */
@@ -119,34 +119,14 @@ struct pci_pbm_info {
        unsigned int                    pci_first_busno;
        unsigned int                    pci_last_busno;
        struct pci_bus                  *pci_bus;
+       void (*scan_bus)(struct pci_pbm_info *);
+       struct pci_ops                  *pci_ops;
 };
 
 struct pci_controller_info {
-       /* List of all PCI controllers. */
-       struct pci_controller_info      *next;
-
-       /* Each controller gets a unique index, used mostly for
-        * error logging purposes.
-        */
-       int                             index;
-
        /* The PCI bus modules controlled by us. */
        struct pci_pbm_info             pbm_A;
        struct pci_pbm_info             pbm_B;
-
-       /* Operations which are controller specific. */
-       void (*scan_bus)(struct pci_controller_info *);
-
-#ifdef CONFIG_PCI_MSI
-       int (*setup_msi_irq)(unsigned int *virt_irq_p, struct pci_dev *pdev,
-                            struct msi_desc *entry);
-       void (*teardown_msi_irq)(unsigned int virt_irq, struct pci_dev *pdev);
-#endif
-
-       /* Now things for the actual PCI bus probes. */
-       struct pci_ops                  *pci_ops;
-       unsigned int                    pci_first_busno;
-       unsigned int                    pci_last_busno;
 };
 
 #endif /* !(__SPARC64_PBM_H) */