diff options
Diffstat (limited to 'include/asm-ia64/machvec.h')
| -rw-r--r-- | include/asm-ia64/machvec.h | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/include/asm-ia64/machvec.h b/include/asm-ia64/machvec.h index 15b545a897a4..90cba967df35 100644 --- a/include/asm-ia64/machvec.h +++ b/include/asm-ia64/machvec.h | |||
| @@ -20,6 +20,7 @@ struct page; | |||
| 20 | struct mm_struct; | 20 | struct mm_struct; |
| 21 | struct pci_bus; | 21 | struct pci_bus; |
| 22 | struct task_struct; | 22 | struct task_struct; |
| 23 | struct pci_dev; | ||
| 23 | 24 | ||
| 24 | typedef void ia64_mv_setup_t (char **); | 25 | typedef void ia64_mv_setup_t (char **); |
| 25 | typedef void ia64_mv_cpu_init_t (void); | 26 | typedef void ia64_mv_cpu_init_t (void); |
| @@ -75,7 +76,9 @@ typedef unsigned char ia64_mv_readb_relaxed_t (const volatile void __iomem *); | |||
| 75 | typedef unsigned short ia64_mv_readw_relaxed_t (const volatile void __iomem *); | 76 | typedef unsigned short ia64_mv_readw_relaxed_t (const volatile void __iomem *); |
| 76 | typedef unsigned int ia64_mv_readl_relaxed_t (const volatile void __iomem *); | 77 | typedef unsigned int ia64_mv_readl_relaxed_t (const volatile void __iomem *); |
| 77 | typedef unsigned long ia64_mv_readq_relaxed_t (const volatile void __iomem *); | 78 | typedef unsigned long ia64_mv_readq_relaxed_t (const volatile void __iomem *); |
| 78 | typedef int ia64_mv_msi_init_t (void); | 79 | |
| 80 | typedef int ia64_mv_setup_msi_irq_t (unsigned int irq, struct pci_dev *pdev); | ||
| 81 | typedef void ia64_mv_teardown_msi_irq_t (unsigned int irq); | ||
| 79 | 82 | ||
| 80 | static inline void | 83 | static inline void |
| 81 | machvec_noop (void) | 84 | machvec_noop (void) |
| @@ -154,7 +157,8 @@ extern void machvec_tlb_migrate_finish (struct mm_struct *); | |||
| 154 | # define platform_readl_relaxed ia64_mv.readl_relaxed | 157 | # define platform_readl_relaxed ia64_mv.readl_relaxed |
| 155 | # define platform_readq_relaxed ia64_mv.readq_relaxed | 158 | # define platform_readq_relaxed ia64_mv.readq_relaxed |
| 156 | # define platform_migrate ia64_mv.migrate | 159 | # define platform_migrate ia64_mv.migrate |
| 157 | # define platform_msi_init ia64_mv.msi_init | 160 | # define platform_setup_msi_irq ia64_mv.setup_msi_irq |
| 161 | # define platform_teardown_msi_irq ia64_mv.teardown_msi_irq | ||
| 158 | # endif | 162 | # endif |
| 159 | 163 | ||
| 160 | /* __attribute__((__aligned__(16))) is required to make size of the | 164 | /* __attribute__((__aligned__(16))) is required to make size of the |
| @@ -204,7 +208,8 @@ struct ia64_machine_vector { | |||
| 204 | ia64_mv_readl_relaxed_t *readl_relaxed; | 208 | ia64_mv_readl_relaxed_t *readl_relaxed; |
| 205 | ia64_mv_readq_relaxed_t *readq_relaxed; | 209 | ia64_mv_readq_relaxed_t *readq_relaxed; |
| 206 | ia64_mv_migrate_t *migrate; | 210 | ia64_mv_migrate_t *migrate; |
| 207 | ia64_mv_msi_init_t *msi_init; | 211 | ia64_mv_setup_msi_irq_t *setup_msi_irq; |
| 212 | ia64_mv_teardown_msi_irq_t *teardown_msi_irq; | ||
| 208 | } __attribute__((__aligned__(16))); /* align attrib? see above comment */ | 213 | } __attribute__((__aligned__(16))); /* align attrib? see above comment */ |
| 209 | 214 | ||
| 210 | #define MACHVEC_INIT(name) \ | 215 | #define MACHVEC_INIT(name) \ |
| @@ -250,7 +255,8 @@ struct ia64_machine_vector { | |||
| 250 | platform_readl_relaxed, \ | 255 | platform_readl_relaxed, \ |
| 251 | platform_readq_relaxed, \ | 256 | platform_readq_relaxed, \ |
| 252 | platform_migrate, \ | 257 | platform_migrate, \ |
| 253 | platform_msi_init, \ | 258 | platform_setup_msi_irq, \ |
| 259 | platform_teardown_msi_irq, \ | ||
| 254 | } | 260 | } |
| 255 | 261 | ||
| 256 | extern struct ia64_machine_vector ia64_mv; | 262 | extern struct ia64_machine_vector ia64_mv; |
| @@ -404,8 +410,11 @@ extern int ia64_pci_legacy_write(struct pci_bus *bus, u16 port, u32 val, u8 size | |||
| 404 | #ifndef platform_migrate | 410 | #ifndef platform_migrate |
| 405 | # define platform_migrate machvec_noop_task | 411 | # define platform_migrate machvec_noop_task |
| 406 | #endif | 412 | #endif |
| 407 | #ifndef platform_msi_init | 413 | #ifndef platform_setup_msi_irq |
| 408 | # define platform_msi_init ((ia64_mv_msi_init_t*)NULL) | 414 | # define platform_setup_msi_irq ((ia64_mv_setup_msi_irq_t*)NULL) |
| 415 | #endif | ||
| 416 | #ifndef platform_teardown_msi_irq | ||
| 417 | # define platform_teardown_msi_irq ((ia64_mv_teardown_msi_irq_t*)NULL) | ||
| 409 | #endif | 418 | #endif |
| 410 | 419 | ||
| 411 | #endif /* _ASM_IA64_MACHVEC_H */ | 420 | #endif /* _ASM_IA64_MACHVEC_H */ |
