Rev 501 | Rev 532 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 501 | Rev 512 | ||
---|---|---|---|
Line 30... | Line 30... | ||
30 | #define __ia32_SMP_H__ |
30 | #define __ia32_SMP_H__ |
31 | 31 | ||
32 | #include <arch/types.h> |
32 | #include <arch/types.h> |
33 | #include <typedefs.h> |
33 | #include <typedefs.h> |
34 | 34 | ||
- | 35 | /** SMP config opertaions interface. */ |
|
35 | struct smp_config_operations { |
36 | struct smp_config_operations { |
36 | count_t (* cpu_count)(void); |
37 | count_t (* cpu_count)(void); /**< Return number of detected processors. */ |
37 | bool (* cpu_enabled)(index_t i); |
38 | bool (* cpu_enabled)(index_t i); /**< Check whether the processor of index i is enabled. */ |
38 | bool (*cpu_bootstrap)(index_t i); |
39 | bool (*cpu_bootstrap)(index_t i); /**< Check whether the processor of index i is BSP. */ |
39 | __u8 (*cpu_apic_id)(index_t i); |
40 | __u8 (*cpu_apic_id)(index_t i); /**< Return APIC ID of the processor of index i. */ |
- | 41 | int (*irq_to_pin)(int irq); /**< Return mapping between irq and APIC pin. */ |
|
40 | }; |
42 | }; |
41 | 43 | ||
- | 44 | extern int smp_irq_to_pin(int irq); |
|
- | 45 | ||
42 | #endif |
46 | #endif |