Make include/common.h usable by assembler code
Commit 70ebf316 factored out the ROUND() macro into include/common.h,
not realizing that the primary use of this macro on AT91 systems was
in start.S where common.h was not included, and could not be included
because it contains a lot of C code which the assembler doesn't
understand.
This patch wraps such code in common.h in a "#ifndef __ASSEMBLY__"
construct, and then adds an include to cpu/arm926ejs/start.S thus
solving the problem.
Signed-off-by: Wolfgang Denk <wd@denx.de>
			
			
This commit is contained in:
		
							parent
							
								
									deec15b306
								
							
						
					
					
						commit
						fcd3c87e49
					
				|  | @ -32,6 +32,7 @@ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| #include <config.h> | #include <config.h> | ||||||
|  | #include <common.h> | ||||||
| #include <version.h> | #include <version.h> | ||||||
| 
 | 
 | ||||||
| #if defined(CONFIG_OMAP1610) | #if defined(CONFIG_OMAP1610) | ||||||
|  |  | ||||||
|  | @ -27,6 +27,8 @@ | ||||||
| #undef	_LINUX_CONFIG_H | #undef	_LINUX_CONFIG_H | ||||||
| #define _LINUX_CONFIG_H 1	/* avoid reading Linux autoconf.h file	*/ | #define _LINUX_CONFIG_H 1	/* avoid reading Linux autoconf.h file	*/ | ||||||
| 
 | 
 | ||||||
|  | #ifndef __ASSEMBLY__		/* put C only stuff in this section */ | ||||||
|  | 
 | ||||||
| typedef unsigned char		uchar; | typedef unsigned char		uchar; | ||||||
| typedef volatile unsigned long	vu_long; | typedef volatile unsigned long	vu_long; | ||||||
| typedef volatile unsigned short vu_short; | typedef volatile unsigned short vu_short; | ||||||
|  | @ -105,6 +107,9 @@ typedef volatile unsigned char	vu_char; | ||||||
| #ifdef CONFIG_BLACKFIN | #ifdef CONFIG_BLACKFIN | ||||||
| #include <asm/blackfin.h> | #include <asm/blackfin.h> | ||||||
| #endif | #endif | ||||||
|  | #ifdef CONFIG_STATUS_LED | ||||||
|  | #include <status_led.h> | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| #include <part.h> | #include <part.h> | ||||||
| #include <flash.h> | #include <flash.h> | ||||||
|  | @ -636,11 +641,9 @@ int	disable_ctrlc (int);	/* 1 to disable, 0 to enable Control-C detect */ | ||||||
| /*
 | /*
 | ||||||
|  * STDIO based functions (can always be used) |  * STDIO based functions (can always be used) | ||||||
|  */ |  */ | ||||||
| 
 |  | ||||||
| /* serial stuff */ | /* serial stuff */ | ||||||
| void	serial_printf (const char *fmt, ...) | void	serial_printf (const char *fmt, ...) | ||||||
| 		__attribute__ ((format (__printf__, 1, 2))); | 		__attribute__ ((format (__printf__, 1, 2))); | ||||||
| 
 |  | ||||||
| /* stdin */ | /* stdin */ | ||||||
| int	getc(void); | int	getc(void); | ||||||
| int	tstc(void); | int	tstc(void); | ||||||
|  | @ -660,7 +663,6 @@ void	vprintf(const char *fmt, va_list args); | ||||||
| /*
 | /*
 | ||||||
|  * FILE based functions (can only be used AFTER relocation!) |  * FILE based functions (can only be used AFTER relocation!) | ||||||
|  */ |  */ | ||||||
| 
 |  | ||||||
| #define stdin		0 | #define stdin		0 | ||||||
| #define stdout		1 | #define stdout		1 | ||||||
| #define stderr		2 | #define stderr		2 | ||||||
|  | @ -682,14 +684,26 @@ int	fgetc(int file); | ||||||
| 
 | 
 | ||||||
| int	pcmcia_init (void); | int	pcmcia_init (void); | ||||||
| 
 | 
 | ||||||
| #ifdef CONFIG_STATUS_LED |  | ||||||
| # include <status_led.h> |  | ||||||
| #endif |  | ||||||
| /*
 | /*
 | ||||||
|  * Board-specific Platform code can reimplement show_boot_progress () if needed |  * Board-specific Platform code can reimplement show_boot_progress () if needed | ||||||
|  */ |  */ | ||||||
| void show_boot_progress(int val); | void show_boot_progress(int val); | ||||||
| 
 | 
 | ||||||
|  | /* Multicore arch functions */ | ||||||
|  | #ifdef CONFIG_MP | ||||||
|  | int cpu_status(int nr); | ||||||
|  | int cpu_reset(int nr); | ||||||
|  | int cpu_release(int nr, int argc, char *argv[]); | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | #endif /* __ASSEMBLY__ */ | ||||||
|  | 
 | ||||||
|  | /* Put only stuff here that the assembler can digest */ | ||||||
|  | 
 | ||||||
|  | #ifdef CONFIG_POST | ||||||
|  | #define CONFIG_HAS_POST | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
| #ifdef CONFIG_INIT_CRITICAL | #ifdef CONFIG_INIT_CRITICAL | ||||||
| #error CONFIG_INIT_CRITICAL is deprecated! | #error CONFIG_INIT_CRITICAL is deprecated! | ||||||
| #error Read section CONFIG_SKIP_LOWLEVEL_INIT in README. | #error Read section CONFIG_SKIP_LOWLEVEL_INIT in README. | ||||||
|  | @ -705,15 +719,4 @@ void show_boot_progress(int val); | ||||||
| #define ALIGN(x,a)		__ALIGN_MASK((x),(typeof(x))(a)-1) | #define ALIGN(x,a)		__ALIGN_MASK((x),(typeof(x))(a)-1) | ||||||
| #define __ALIGN_MASK(x,mask)	(((x)+(mask))&~(mask)) | #define __ALIGN_MASK(x,mask)	(((x)+(mask))&~(mask)) | ||||||
| 
 | 
 | ||||||
| /* Multicore arch functions */ |  | ||||||
| #ifdef CONFIG_MP |  | ||||||
| int cpu_status(int nr); |  | ||||||
| int cpu_reset(int nr); |  | ||||||
| int cpu_release(int nr, int argc, char *argv[]); |  | ||||||
| #endif |  | ||||||
| 
 |  | ||||||
| #ifdef CONFIG_POST |  | ||||||
| #define CONFIG_HAS_POST |  | ||||||
| #endif |  | ||||||
| 
 |  | ||||||
| #endif	/* __COMMON_H_ */ | #endif	/* __COMMON_H_ */ | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue