Merge branch 'docs-next' of git://git.lwn.net/linux-2.6
[linux-2.6] / arch / blackfin / include / asm / l1layout.h
1 /*
2  * l1layout.h
3  * Defines a layout of L1 scratchpad memory that userspace can rely on.
4  */
5
6 #ifndef _L1LAYOUT_H_
7 #define _L1LAYOUT_H_
8
9 #include <asm/blackfin.h>
10
11 #ifndef CONFIG_SMP
12 #ifndef __ASSEMBLY__
13
14 /* Data that is "mapped" into the process VM at the start of the L1 scratch
15    memory, so that each process can access it at a fixed address.  Used for
16    stack checking.  */
17 struct l1_scratch_task_info
18 {
19         /* Points to the start of the stack.  */
20         void *stack_start;
21         /* Not updated by the kernel; a user process can modify this to
22            keep track of the lowest address of the stack pointer during its
23            runtime.  */
24         void *lowest_sp;
25 };
26
27 /* A pointer to the structure in memory.  */
28 #define L1_SCRATCH_TASK_INFO ((struct l1_scratch_task_info *)\
29                                                 get_l1_scratch_start())
30
31 #endif
32 #endif
33
34 #endif