快乐虾http://blog.csdn.net/lights_joy/lights@hb165.com本文适用于ADI bf561 DSP优视BF561EVB开发板uclinux-2008r1.5-rc3(smp patch)Visual DSP++ 5.0(update 5)欢迎转载,但请保留作者信息有一个错误:[Error ea5004] "../../linux-2.6.x/include/asm/mach-common/context.S":35 Syntax Error in :.macro save_context_with_interruptssyntax error is at or near text 'save_context_with_interrupts'.Attempting error recovery by ignoring text until the ';'其指向的错误代码为:/** Code to save processor context.*We even save the register which are preserved by a function call*- r4, r5, r6, r7, p3, p4, p5*/.macro save_context_with_interrupts………………./* Switch to other method of keeping interrupts disabled.*/#ifdef CONFIG_DEBUG_HWERRr0 = 0x3f;sti r0;#elsecli r0;#endif……………………….endm这里有两个问题,首先是vdsp的汇编器不支持.macro,只能用#define来替代,第二个是在里面出现了#ifdef这样的条件判断,只能将之移到宏定义的外面,修改后的代码为:#ifdef CONFIG_DEBUG_HWERR#define save_context_with_interrupts/………………..//* Switch to other method of keeping interrupts disabled.*//r0 = 0x3f;/sti r0;/……………….///.endm#else#define save_context_with_interrupts/………………………..//* Switch to other method of keeping interrupts disabled.*//cli r0;/………………………..///.endm#endif// CONFIG_DEBUG_HWERR其它宏的修改与此类似。