Changes between Version 29 and Version 30 of kernel_interrupts


Ignore:
Timestamp:
Dec 10, 2016, 11:52:57 AM (8 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • kernel_interrupts

    v29 v30  
    5151
    5252 === void '''_ext_irq_init'''() ===
    53 This initializes the ''_ext_irq_index[isr][channel]'' kernel array. This array defines the IRQ index (i.e. the IOPIC input index) associated to an (isr_type / isr_channel) couple, as specified in the mapping. It defines the hardware connexions between external peripherals and the IOPIC external IRQ controller, and is used by the kernel for dynamic routing of external IRQs.
     53This function is only used when the architecture contains an external IOPIC component. It initializes the ''_ext_irq_index[isr][channel]'' kernel array, that defines the IRQ index (i.e. the IOPIC input IRQ index) associated to an (isr_type / isr_channel) couple, as specified in the mapping. It defines the hardware connexions between external peripherals and the IOPIC external IRQ controller, and is used by the kernel for dynamic routing of external IRQs.
    5454
    5555 === void '''_ext_irq_alloc( unsigned int isr_type , unsigned int isr_channel , unsigned int* wti_index ) ===
    56 This function dynamically allocates an external IRQ signaling completion of an I/O operation to the processor P[x,y,p] running the calling task. The two (isr_type / isr_channel) arguments define actually the external IRQ to be routed.
     56This function is only used when the architecture contains an external IOPIC component. It allocates an external IRQ signaling completion of an I/O operation to the processor P[x,y,p] running the calling task. The two (isr_type / isr_channel) arguments define actually the external IRQ to be routed.
    5757 * '''isr_type''' : type of ISR
    5858 * '''isr_channel''' : ISR channel (for multi-channels peripherals)
     
    6464
    6565 === void '''_ext_irq_release( unsigned int isr_type , unsigned int isr_channel , unsigned int wti_index ) ===
    66 This function desallocates the ressources allocated by the  previous _ext_irq_alloc() function to the calling processor. The two (isr_type, isr_channel) arguments define actually the external IRQ to be released.
     66This function is only used when the architecture contains an external IOPIC component. It desallocates the ressources allocated by the  previous _ext_irq_alloc() function to the calling processor. The two (isr_type, isr_channel) arguments define actually the external IRQ to be released.
    6767 * '''isr_type''' : type of ISR
    6868 * '''isr_channel''' : ISR channel (for multi-channels peripherals)
     
    8888
    8989As most ISRs (Interrupt Service Routine) are associated to a specific peripheral, these ISR are defined in the
    90 [wiki:periphal_drivers drivers]. But the following ISRs are defined in the [source:soft/giet_vm/giet_kernel/irq_handler.c irq_handler.c] file:
     90[wiki:periphal_drivers drivers]. Some ISRs are defined in the [source:soft/giet_vm/giet_kernel/irq_handler.c irq_handler.c] file:
    9191
    9292