Subversion Repositories HelenOS

Rev

Rev 2089 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2089 Rev 2101
Line 90... Line 90...
90
 */
90
 */
91
static count_t get_cpu_count(void);
91
static count_t get_cpu_count(void);
92
static bool is_cpu_enabled(index_t i);
92
static bool is_cpu_enabled(index_t i);
93
static bool is_bsp(index_t i);
93
static bool is_bsp(index_t i);
94
static uint8_t get_cpu_apic_id(index_t i);
94
static uint8_t get_cpu_apic_id(index_t i);
95
static int mps_irq_to_pin(int irq);
95
static int mps_irq_to_pin(unsigned int irq);
96
 
96
 
97
struct smp_config_operations mps_config_operations = {
97
struct smp_config_operations mps_config_operations = {
98
    .cpu_count = get_cpu_count,
98
    .cpu_count = get_cpu_count,
99
    .cpu_enabled = is_cpu_enabled,
99
    .cpu_enabled = is_cpu_enabled,
100
    .cpu_bootstrap = is_bsp,
100
    .cpu_bootstrap = is_bsp,
Line 413... Line 413...
413
                break;
413
                break;
414
        }
414
        }
415
    }
415
    }
416
}
416
}
417
 
417
 
418
int mps_irq_to_pin(int irq)
418
int mps_irq_to_pin(unsigned int irq)
419
{
419
{
420
    int i;
420
    int i;
421
   
421
   
422
    for(i=0;i<io_intr_entry_cnt;i++) {
422
    for (i = 0; i < io_intr_entry_cnt; i++) {
423
        if (io_intr_entries[i].src_bus_irq == irq && io_intr_entries[i].intr_type == 0)
423
        if (io_intr_entries[i].src_bus_irq == irq && io_intr_entries[i].intr_type == 0)
424
            return io_intr_entries[i].dst_io_apic_pin;
424
            return io_intr_entries[i].dst_io_apic_pin;
425
    }
425
    }
426
   
426
   
427
    return -1;
427
    return -1;