slight code refactor for irq enable/disable. acknowledge pending system timer interu...
[AROS.git] / arch / arm-raspi / kernel / cli.c
blob7a0254269fcb4a7a411d2244f735ffe8400e883e
1 /*
2 Copyright © 2013, The AROS Development Team. All rights reserved.
3 $Id$
4 */
6 #define DEBUG 0
8 #include <aros/debug.h>
9 #include <aros/kernel.h>
10 #include <aros/libcall.h>
12 #include <kernel_base.h>
14 /*****************************************************************************
16 NAME */
17 #include <proto/kernel.h>
19 AROS_LH0I(void, KrnCli,
21 /* SYNOPSIS */
23 /* LOCATION */
24 struct KernelBase *, KernelBase, 9, Kernel)
26 /* FUNCTION
27 Instantly disable interrupts.
29 INPUTS
30 None
32 RESULT
33 None
35 NOTES
36 This is low level function, it does not have nesting count
37 and state tracking mechanism. It operates directly on the CPU.
38 Normal applications should consider using exec.library/Disable().
40 EXAMPLE
42 BUGS
44 SEE ALSO
45 KrnSti()
47 INTERNALS
49 ******************************************************************************/
51 AROS_LIBFUNC_INIT
53 D(bug("[KRN] KrnCli()\n"));
55 asm volatile("cpsid i\n");
57 AROS_LIBFUNC_EXIT