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 __ASSEMBLY__ 12 13/* Data that is "mapped" into the process VM at the start of the L1 scratch 14 memory, so that each process can access it at a fixed address. Used for 15 stack checking. */ 16struct l1_scratch_task_info 17{ 18 /* Points to the start of the stack. */ 19 void *stack_start; 20 /* Not updated by the kernel; a user process can modify this to 21 keep track of the lowest address of the stack pointer during its 22 runtime. */ 23 void *lowest_sp; 24}; 25 26/* A pointer to the structure in memory. */ 27#define L1_SCRATCH_TASK_INFO ((struct l1_scratch_task_info *)L1_SCRATCH_START) 28 29#endif 30 31#endif 32