Showing changes from revision #3 to #4:
Added | Removed | Changed
int HAL_IRQSource(void)
Entry | |
---|---|
- |
Exit | |
---|---|
>= 0 | Device number that is the source of the current IRQ |
-1 | No device is currently interrupting (indicates spurious interrupt) |
On receipt of an IRQ, the kernel will call this function to determine what device/shared interrupt line is the cause. If -1 is returned, the kernel will perform no further action and return to running user code. Otherwise the kernel will invoke the appropriate interrupt handler, or mask the interrupt via HAL_IRQDisable if no such handler exists.
The value returned in R3 is passed onto the interrupt handler and on systems with either an IOC or IOMD IO controller it should point to the base of its address space for compatibility with pre-HAL versions of RISC OS.