Commit | Line | Data |
---|---|---|
a7de7c74 ME |
1 | #ifndef _POWERPC_SYSDEV_MPIC_H |
2 | #define _POWERPC_SYSDEV_MPIC_H | |
3 | ||
4 | /* | |
5 | * Copyright 2006-2007, Michael Ellerman, IBM Corporation. | |
6 | * | |
7 | * This program is free software; you can redistribute it and/or | |
8 | * modify it under the terms of the GNU General Public License | |
9 | * as published by the Free Software Foundation; version 2 of the | |
10 | * License. | |
11 | * | |
12 | */ | |
13 | ||
14 | #ifdef CONFIG_PCI_MSI | |
15 | extern void mpic_msi_reserve_hwirq(struct mpic *mpic, irq_hw_number_t hwirq); | |
16 | extern int mpic_msi_init_allocator(struct mpic *mpic); | |
17 | extern irq_hw_number_t mpic_msi_alloc_hwirqs(struct mpic *mpic, int num); | |
18 | extern void mpic_msi_free_hwirqs(struct mpic *mpic, int offset, int num); | |
05af7bd2 | 19 | extern int mpic_u3msi_init(struct mpic *mpic); |
38958dd9 | 20 | extern int mpic_pasemi_msi_init(struct mpic *mpic); |
a7de7c74 ME |
21 | #else |
22 | static inline void mpic_msi_reserve_hwirq(struct mpic *mpic, | |
23 | irq_hw_number_t hwirq) | |
24 | { | |
25 | return; | |
26 | } | |
05af7bd2 ME |
27 | |
28 | static inline int mpic_u3msi_init(struct mpic *mpic) | |
29 | { | |
30 | return -1; | |
31 | } | |
38958dd9 OJ |
32 | |
33 | static inline int mpic_pasemi_msi_init(struct mpic *mpic) | |
34 | { | |
35 | return -1; | |
36 | } | |
a7de7c74 ME |
37 | #endif |
38 | ||
05af7bd2 | 39 | extern int mpic_set_irq_type(unsigned int virq, unsigned int flow_type); |
38958dd9 | 40 | extern void mpic_set_vector(unsigned int virq, unsigned int vector); |
17b5ee04 | 41 | extern void mpic_set_affinity(unsigned int irq, cpumask_t cpumask); |
05af7bd2 | 42 | |
a7de7c74 | 43 | #endif /* _POWERPC_SYSDEV_MPIC_H */ |