Commit | Line | Data |
---|---|---|
1394f032 | 1 | /* |
1394f032 | 2 | * Defines a layout of L1 scratchpad memory that userspace can rely on. |
96f1050d RG |
3 | * |
4 | * Copyright 2006-2008 Analog Devices Inc. | |
5 | * | |
6 | * Licensed under the GPL-2 or later. | |
1394f032 BW |
7 | */ |
8 | ||
9 | #ifndef _L1LAYOUT_H_ | |
10 | #define _L1LAYOUT_H_ | |
11 | ||
12 | #include <asm/blackfin.h> | |
13 | ||
cc92b870 | 14 | #ifndef CONFIG_SMP |
1394f032 BW |
15 | #ifndef __ASSEMBLY__ |
16 | ||
17 | /* Data that is "mapped" into the process VM at the start of the L1 scratch | |
18 | memory, so that each process can access it at a fixed address. Used for | |
19 | stack checking. */ | |
20 | struct l1_scratch_task_info | |
21 | { | |
22 | /* Points to the start of the stack. */ | |
23 | void *stack_start; | |
24 | /* Not updated by the kernel; a user process can modify this to | |
25 | keep track of the lowest address of the stack pointer during its | |
26 | runtime. */ | |
27 | void *lowest_sp; | |
28 | }; | |
29 | ||
30 | /* A pointer to the structure in memory. */ | |
6b3087c6 GY |
31 | #define L1_SCRATCH_TASK_INFO ((struct l1_scratch_task_info *)\ |
32 | get_l1_scratch_start()) | |
1394f032 BW |
33 | |
34 | #endif | |
cc92b870 | 35 | #endif |
1394f032 BW |
36 | |
37 | #endif |