diff options
Diffstat (limited to 'include/asm-ia64/machvec.h')
-rw-r--r-- | include/asm-ia64/machvec.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/asm-ia64/machvec.h b/include/asm-ia64/machvec.h index 7ffbddf5306f..8f784f8e45b0 100644 --- a/include/asm-ia64/machvec.h +++ b/include/asm-ia64/machvec.h | |||
@@ -36,6 +36,7 @@ typedef int ia64_mv_pci_legacy_read_t (struct pci_bus *, u16 port, u32 *val, | |||
36 | typedef int ia64_mv_pci_legacy_write_t (struct pci_bus *, u16 port, u32 val, | 36 | typedef int ia64_mv_pci_legacy_write_t (struct pci_bus *, u16 port, u32 val, |
37 | u8 size); | 37 | u8 size); |
38 | typedef void ia64_mv_migrate_t(struct task_struct * task); | 38 | typedef void ia64_mv_migrate_t(struct task_struct * task); |
39 | typedef void ia64_mv_pci_fixup_bus_t (struct pci_bus *); | ||
39 | 40 | ||
40 | /* DMA-mapping interface: */ | 41 | /* DMA-mapping interface: */ |
41 | typedef void ia64_mv_dma_init (void); | 42 | typedef void ia64_mv_dma_init (void); |
@@ -95,6 +96,11 @@ machvec_noop_task (struct task_struct *task) | |||
95 | { | 96 | { |
96 | } | 97 | } |
97 | 98 | ||
99 | static inline void | ||
100 | machvec_noop_bus (struct pci_bus *bus) | ||
101 | { | ||
102 | } | ||
103 | |||
98 | extern void machvec_setup (char **); | 104 | extern void machvec_setup (char **); |
99 | extern void machvec_timer_interrupt (int, void *); | 105 | extern void machvec_timer_interrupt (int, void *); |
100 | extern void machvec_dma_sync_single (struct device *, dma_addr_t, size_t, int); | 106 | extern void machvec_dma_sync_single (struct device *, dma_addr_t, size_t, int); |
@@ -159,6 +165,7 @@ extern void machvec_tlb_migrate_finish (struct mm_struct *); | |||
159 | # define platform_migrate ia64_mv.migrate | 165 | # define platform_migrate ia64_mv.migrate |
160 | # define platform_setup_msi_irq ia64_mv.setup_msi_irq | 166 | # define platform_setup_msi_irq ia64_mv.setup_msi_irq |
161 | # define platform_teardown_msi_irq ia64_mv.teardown_msi_irq | 167 | # define platform_teardown_msi_irq ia64_mv.teardown_msi_irq |
168 | # define platform_pci_fixup_bus ia64_mv.pci_fixup_bus | ||
162 | # endif | 169 | # endif |
163 | 170 | ||
164 | /* __attribute__((__aligned__(16))) is required to make size of the | 171 | /* __attribute__((__aligned__(16))) is required to make size of the |
@@ -210,6 +217,7 @@ struct ia64_machine_vector { | |||
210 | ia64_mv_migrate_t *migrate; | 217 | ia64_mv_migrate_t *migrate; |
211 | ia64_mv_setup_msi_irq_t *setup_msi_irq; | 218 | ia64_mv_setup_msi_irq_t *setup_msi_irq; |
212 | ia64_mv_teardown_msi_irq_t *teardown_msi_irq; | 219 | ia64_mv_teardown_msi_irq_t *teardown_msi_irq; |
220 | ia64_mv_pci_fixup_bus_t *pci_fixup_bus; | ||
213 | } __attribute__((__aligned__(16))); /* align attrib? see above comment */ | 221 | } __attribute__((__aligned__(16))); /* align attrib? see above comment */ |
214 | 222 | ||
215 | #define MACHVEC_INIT(name) \ | 223 | #define MACHVEC_INIT(name) \ |
@@ -257,6 +265,7 @@ struct ia64_machine_vector { | |||
257 | platform_migrate, \ | 265 | platform_migrate, \ |
258 | platform_setup_msi_irq, \ | 266 | platform_setup_msi_irq, \ |
259 | platform_teardown_msi_irq, \ | 267 | platform_teardown_msi_irq, \ |
268 | platform_pci_fixup_bus, \ | ||
260 | } | 269 | } |
261 | 270 | ||
262 | extern struct ia64_machine_vector ia64_mv; | 271 | extern struct ia64_machine_vector ia64_mv; |
@@ -416,5 +425,8 @@ extern int ia64_pci_legacy_write(struct pci_bus *bus, u16 port, u32 val, u8 size | |||
416 | #ifndef platform_teardown_msi_irq | 425 | #ifndef platform_teardown_msi_irq |
417 | # define platform_teardown_msi_irq ((ia64_mv_teardown_msi_irq_t*)NULL) | 426 | # define platform_teardown_msi_irq ((ia64_mv_teardown_msi_irq_t*)NULL) |
418 | #endif | 427 | #endif |
428 | #ifndef platform_pci_fixup_bus | ||
429 | # define platform_pci_fixup_bus machvec_noop_bus | ||
430 | #endif | ||
419 | 431 | ||
420 | #endif /* _ASM_IA64_MACHVEC_H */ | 432 | #endif /* _ASM_IA64_MACHVEC_H */ |