Rev 1702 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1702 | Rev 1757 | ||
---|---|---|---|
Line 24... | Line 24... | ||
24 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
24 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
25 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
25 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
26 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
27 | */ |
27 | */ |
28 | 28 | ||
29 | /** @addtogroup genericipc |
29 | /** @addtogroup genericipc |
30 | * @{ |
30 | * @{ |
31 | */ |
31 | */ |
32 | /** @file |
32 | /** |
33 | */ |
33 | * @file |
34 | - | ||
35 | /** IRQ notification framework |
34 | * @brief IRQ notification framework. |
36 | * |
35 | * |
37 | * This framework allows applications to register to receive a notification |
36 | * This framework allows applications to register to receive a notification |
38 | * when interrupt is detected. The application may provide a simple 'top-half' |
37 | * when interrupt is detected. The application may provide a simple 'top-half' |
39 | * handler as part of its registration, which can perform simple operations |
38 | * handler as part of its registration, which can perform simple operations |
40 | * (read/write port/memory, add information to notification ipc message). |
39 | * (read/write port/memory, add information to notification ipc message). |
Line 314... | Line 313... | ||
314 | } |
313 | } |
315 | } |
314 | } |
316 | 315 | ||
317 | /** Disconnect all irq's notifications |
316 | /** Disconnect all irq's notifications |
318 | * |
317 | * |
319 | * TODO: It may be better to do some linked list, so that |
318 | * @todo It may be better to do some linked list, so that |
320 | * we wouldn't need to go through whole array every cleanup |
319 | * we wouldn't need to go through whole array every cleanup |
321 | */ |
320 | */ |
322 | void ipc_irq_cleanup(answerbox_t *box) |
321 | void ipc_irq_cleanup(answerbox_t *box) |
323 | { |
322 | { |
324 | int i; |
323 | int i; |
Line 332... | Line 331... | ||
332 | spinlock_unlock(&irq_conns[i].lock); |
331 | spinlock_unlock(&irq_conns[i].lock); |
333 | interrupts_restore(ipl); |
332 | interrupts_restore(ipl); |
334 | } |
333 | } |
335 | } |
334 | } |
336 | 335 | ||
337 | /** @} |
336 | /** @} |
338 | */ |
337 | */ |
339 | - |