DSP

uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(26):abs

2019-07-13 15:40发布

  快乐虾 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)   欢迎转载,但请保留作者信息     有一个警告: "../../linux-2.6.x/include/linux/kernel.h", line 101: cc0047: {D} warning:           incompatible redefinition of macro "abs" (declared at line 89 of           "E:/Program Files/Analog Devices/VisualDSP           5.0/Blackfin/include/stdlib.h")   #define abs(x) ({/ uclinux下,abs是这样定义的: #define abs(x) ({                /          int __x = (x);              /          (__x < 0) ? -__x : __x;     /      }) vdsp则是这样定义的: #ifndef __NO_BUILTIN #if  defined(__ADSP21XX__) || defined(__ADSPBLACKFIN__) #define abs __builtin_abs #define labs __builtin_labs #endif #endif /* __NO_BUILTIN */ int  __builtin_abs(int  __a); 实际上二者的功能是相同的,在此使用VDSP的定义,直接将kernel.h中的定义改为: #ifndef abs #define abs(x) ({                /          int __x = (x);              /          (__x < 0) ? -__x : __x;     /      }) #endif    

1       参考资料

uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(1):前言(2009-1-12) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(2):代码注释(2009-1-12) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(3):vdsp项目创建(2009-1-12) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(4):目录差异(2009-1-12) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(5):'bf561.h'的问题(2009-1-12) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(6)CONFIG_BFIN_KERNEL_CLOCK(2009-1-12) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(7)CONFIG_MEM_MT48LC16M16A2TG_75(2009-1-12) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(8):CONFIG_CLKIN_HZ(2009-1-12) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(9):CONFIG_MEM_SIZE(2009-1-12) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(10):CONFIG_FLASH_SPEED_BTT(2009-1-13) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(11):__INIT(2009-1-13) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(12):trace_buffer_init(2009-1-13) uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(13):ENDPROC(2009-1-13) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(14)__FINIT(2009-1-13) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(15)CONFIG_BANK_x(2009-1-13) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(16):使用head.s做为入口点(2009-1-13) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(17)__bss_start(2009-1-13) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(18)_sdata(2009-1-14) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(19)_stext(2009-1-14) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(20)bf53x_relocate_l1_mem(2009-1-14) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(21)dlb创建(2009-1-14) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(22)IRQ_PLL_WAKEUP(2009-1-14) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(23)PREEMPT_ACTIVE is too low(2009-1-14) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(24)Gcc版本号(2009-1-14) uclinux-2008R1.5-RC3(bf561)VDSP5的移植(25)inline(2009-1-15)