Subversion Repositories HelenOS

Rev

Rev 2787 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2787 Rev 4692
Line 37... Line 37...
37
 
37
 
38
#include <arch/types.h>
38
#include <arch/types.h>
39
 
39
 
40
/** SMP config opertaions interface. */
40
/** SMP config opertaions interface. */
41
struct smp_config_operations {
41
struct smp_config_operations {
42
    count_t (* cpu_count)(void);        /**< Return number of detected processors. */
42
    size_t (* cpu_count)(void);     /**< Return number of detected processors. */
43
    bool (* cpu_enabled)(index_t i);    /**< Check whether the processor of index i is enabled. */
43
    bool (* cpu_enabled)(size_t i); /**< Check whether the processor of index i is enabled. */
44
    bool (*cpu_bootstrap)(index_t i);   /**< Check whether the processor of index i is BSP. */
44
    bool (*cpu_bootstrap)(size_t i);    /**< Check whether the processor of index i is BSP. */
45
    uint8_t (*cpu_apic_id)(index_t i);      /**< Return APIC ID of the processor of index i. */
45
    uint8_t (*cpu_apic_id)(size_t i);       /**< Return APIC ID of the processor of index i. */
46
    int (*irq_to_pin)(unsigned int irq);        /**< Return mapping between irq and APIC pin. */
46
    int (*irq_to_pin)(unsigned int irq);        /**< Return mapping between irq and APIC pin. */
47
};
47
};
48
 
48
 
49
extern int smp_irq_to_pin(unsigned int irq);
49
extern int smp_irq_to_pin(unsigned int irq);
50
 
50