| 
									
										
										
										
											2008-10-22 22:26:29 -07:00
										 |  |  | #ifndef _ASM_X86_TRAMPOLINE_H
 | 
					
						
							|  |  |  | #define _ASM_X86_TRAMPOLINE_H
 | 
					
						
							| 
									
										
										
										
											2008-04-10 23:28:10 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | #ifndef __ASSEMBLY__
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-12-08 00:50:22 +01:00
										 |  |  | #ifdef CONFIG_X86_TRAMPOLINE
 | 
					
						
							| 
									
										
										
										
											2008-04-10 23:28:10 +02:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  * Trampoline 80x86 program as an array. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | extern const unsigned char trampoline_data []; | 
					
						
							|  |  |  | extern const unsigned char trampoline_end  []; | 
					
						
							|  |  |  | extern unsigned char *trampoline_base; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | extern unsigned long init_rsp; | 
					
						
							|  |  |  | extern unsigned long initial_code; | 
					
						
							| 
									
										
										
										
											2009-01-13 20:41:35 +09:00
										 |  |  | extern unsigned long initial_gs; | 
					
						
							| 
									
										
										
										
											2008-04-10 23:28:10 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-12-08 00:50:22 +01:00
										 |  |  | #define TRAMPOLINE_SIZE roundup(trampoline_end - trampoline_data, PAGE_SIZE)
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-04-10 23:28:10 +02:00
										 |  |  | extern unsigned long setup_trampoline(void); | 
					
						
							| 
									
										
										
										
											2008-12-08 00:50:22 +01:00
										 |  |  | extern void __init reserve_trampoline_memory(void); | 
					
						
							|  |  |  | #else
 | 
					
						
							|  |  |  | static inline void reserve_trampoline_memory(void) {}; | 
					
						
							|  |  |  | #endif /* CONFIG_X86_TRAMPOLINE */
 | 
					
						
							| 
									
										
										
										
											2008-04-10 23:28:10 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | #endif /* __ASSEMBLY__ */
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-10-22 22:26:29 -07:00
										 |  |  | #endif /* _ASM_X86_TRAMPOLINE_H */
 |