Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
l1layout.h
Go to the documentation of this file.
1 /*
2  * Defines a layout of L1 scratchpad memory that userspace can rely on.
3  *
4  * Copyright 2006-2008 Analog Devices Inc.
5  *
6  * Licensed under the GPL-2 or later.
7  */
8 
9 #ifndef _L1LAYOUT_H_
10 #define _L1LAYOUT_H_
11 
12 #include <asm/blackfin.h>
13 
14 #ifndef CONFIG_SMP
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. */
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. */
31 #define L1_SCRATCH_TASK_INFO ((struct l1_scratch_task_info *)\
32  get_l1_scratch_start())
33 
34 #endif
35 #endif
36 
37 #endif