38 lines
		
	
	
		
			879 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			879 B
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * Defines a layout of L1 scratchpad memory that userspace can rely on.
 | 
						|
 *
 | 
						|
 * Copyright 2006-2008 Analog Devices Inc.
 | 
						|
 *
 | 
						|
 * Licensed under the GPL-2 or later.
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef _L1LAYOUT_H_
 | 
						|
#define _L1LAYOUT_H_
 | 
						|
 | 
						|
#include <asm/blackfin.h>
 | 
						|
 | 
						|
#ifndef CONFIG_SMP
 | 
						|
#ifndef __ASSEMBLY__
 | 
						|
 | 
						|
/* Data that is "mapped" into the process VM at the start of the L1 scratch
 | 
						|
   memory, so that each process can access it at a fixed address.  Used for
 | 
						|
   stack checking.  */
 | 
						|
struct l1_scratch_task_info
 | 
						|
{
 | 
						|
	/* Points to the start of the stack.  */
 | 
						|
	void *stack_start;
 | 
						|
	/* Not updated by the kernel; a user process can modify this to
 | 
						|
	   keep track of the lowest address of the stack pointer during its
 | 
						|
	   runtime.  */
 | 
						|
	void *lowest_sp;
 | 
						|
};
 | 
						|
 | 
						|
/* A pointer to the structure in memory.  */
 | 
						|
#define L1_SCRATCH_TASK_INFO ((struct l1_scratch_task_info *)\
 | 
						|
						get_l1_scratch_start())
 | 
						|
 | 
						|
#endif
 | 
						|
#endif
 | 
						|
 | 
						|
#endif
 |