aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-ia64/machvec.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-ia64/machvec.h')
-rw-r--r--include/asm-ia64/machvec.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/include/asm-ia64/machvec.h b/include/asm-ia64/machvec.h
index 7ffbddf5306f..a3891eb3f217 100644
--- a/include/asm-ia64/machvec.h
+++ b/include/asm-ia64/machvec.h
@@ -36,6 +36,8 @@ typedef int ia64_mv_pci_legacy_read_t (struct pci_bus *, u16 port, u32 *val,
36typedef int ia64_mv_pci_legacy_write_t (struct pci_bus *, u16 port, u32 val, 36typedef int ia64_mv_pci_legacy_write_t (struct pci_bus *, u16 port, u32 val,
37 u8 size); 37 u8 size);
38typedef void ia64_mv_migrate_t(struct task_struct * task); 38typedef void ia64_mv_migrate_t(struct task_struct * task);
39typedef void ia64_mv_pci_fixup_bus_t (struct pci_bus *);
40typedef void ia64_mv_kernel_launch_event_t(void);
39 41
40/* DMA-mapping interface: */ 42/* DMA-mapping interface: */
41typedef void ia64_mv_dma_init (void); 43typedef void ia64_mv_dma_init (void);
@@ -95,6 +97,11 @@ machvec_noop_task (struct task_struct *task)
95{ 97{
96} 98}
97 99
100static inline void
101machvec_noop_bus (struct pci_bus *bus)
102{
103}
104
98extern void machvec_setup (char **); 105extern void machvec_setup (char **);
99extern void machvec_timer_interrupt (int, void *); 106extern void machvec_timer_interrupt (int, void *);
100extern void machvec_dma_sync_single (struct device *, dma_addr_t, size_t, int); 107extern void machvec_dma_sync_single (struct device *, dma_addr_t, size_t, int);
@@ -159,6 +166,7 @@ extern void machvec_tlb_migrate_finish (struct mm_struct *);
159# define platform_migrate ia64_mv.migrate 166# define platform_migrate ia64_mv.migrate
160# define platform_setup_msi_irq ia64_mv.setup_msi_irq 167# define platform_setup_msi_irq ia64_mv.setup_msi_irq
161# define platform_teardown_msi_irq ia64_mv.teardown_msi_irq 168# define platform_teardown_msi_irq ia64_mv.teardown_msi_irq
169# define platform_pci_fixup_bus ia64_mv.pci_fixup_bus
162# endif 170# endif
163 171
164/* __attribute__((__aligned__(16))) is required to make size of the 172/* __attribute__((__aligned__(16))) is required to make size of the
@@ -210,6 +218,8 @@ struct ia64_machine_vector {
210 ia64_mv_migrate_t *migrate; 218 ia64_mv_migrate_t *migrate;
211 ia64_mv_setup_msi_irq_t *setup_msi_irq; 219 ia64_mv_setup_msi_irq_t *setup_msi_irq;
212 ia64_mv_teardown_msi_irq_t *teardown_msi_irq; 220 ia64_mv_teardown_msi_irq_t *teardown_msi_irq;
221 ia64_mv_pci_fixup_bus_t *pci_fixup_bus;
222 ia64_mv_kernel_launch_event_t *kernel_launch_event;
213} __attribute__((__aligned__(16))); /* align attrib? see above comment */ 223} __attribute__((__aligned__(16))); /* align attrib? see above comment */
214 224
215#define MACHVEC_INIT(name) \ 225#define MACHVEC_INIT(name) \
@@ -257,6 +267,7 @@ struct ia64_machine_vector {
257 platform_migrate, \ 267 platform_migrate, \
258 platform_setup_msi_irq, \ 268 platform_setup_msi_irq, \
259 platform_teardown_msi_irq, \ 269 platform_teardown_msi_irq, \
270 platform_pci_fixup_bus, \
260} 271}
261 272
262extern struct ia64_machine_vector ia64_mv; 273extern struct ia64_machine_vector ia64_mv;
@@ -309,6 +320,9 @@ extern ia64_mv_dma_supported swiotlb_dma_supported;
309#ifndef platform_tlb_migrate_finish 320#ifndef platform_tlb_migrate_finish
310# define platform_tlb_migrate_finish machvec_noop_mm 321# define platform_tlb_migrate_finish machvec_noop_mm
311#endif 322#endif
323#ifndef platform_kernel_launch_event
324# define platform_kernel_launch_event machvec_noop
325#endif
312#ifndef platform_dma_init 326#ifndef platform_dma_init
313# define platform_dma_init swiotlb_init 327# define platform_dma_init swiotlb_init
314#endif 328#endif
@@ -416,5 +430,8 @@ extern int ia64_pci_legacy_write(struct pci_bus *bus, u16 port, u32 val, u8 size
416#ifndef platform_teardown_msi_irq 430#ifndef platform_teardown_msi_irq
417# define platform_teardown_msi_irq ((ia64_mv_teardown_msi_irq_t*)NULL) 431# define platform_teardown_msi_irq ((ia64_mv_teardown_msi_irq_t*)NULL)
418#endif 432#endif
433#ifndef platform_pci_fixup_bus
434# define platform_pci_fixup_bus machvec_noop_bus
435#endif
419 436
420#endif /* _ASM_IA64_MACHVEC_H */ 437#endif /* _ASM_IA64_MACHVEC_H */