uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(30):WARN
2009-01-15 20:35
573 查看
快乐虾 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)
欢迎转载,但请保留作者信息
uclinux的内核中有许多函数并不是一开始就调用的,而只是做为一个函数指针来使用,为了避免一开始就产生过多的链接错误,在config.h中定义了一个宏:
#define WARN() do {fprintf(stderr, "code omited: %d @ %s/n", __LINE__, __FILE__); while(1) idle();} while(0)
当发生链接错误时,首先找出函数体,并在其后加上WARN();如下所示:
static void
default_handler(int var_segment, struct pt_regs *regp)
{
// set_personality(0);
//
// if (current_thread_info()->exec_domain->handler != default_handler)
// current_thread_info()->exec_domain->handler(var_segment, regp);
// else
// send_sig(SIGSEGV, current, 1);
WARN();
}
由于使用了vdsp库中的fprintf函数,当运行到此函数时,将在VDSP下输出一个提示信息并停下,我们再去掉此函数体的注释进行调试,嘿嘿…………..
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(25):inline(2009-1-15)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(26):abs(2009-1-15)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(27):CONFIG_RWSEM_GENERIC_SPINLOCK(2009-1-15)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(28):CONFIG_HZ(2009-1-15)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(29):cmdline_init(2009-1-15)
本文适用于
ADI bf561 DSP
优视BF561EVB开发板
uclinux-2008r1.5-rc3(smp patch)
Visual DSP++ 5.0(update 5)
欢迎转载,但请保留作者信息
uclinux的内核中有许多函数并不是一开始就调用的,而只是做为一个函数指针来使用,为了避免一开始就产生过多的链接错误,在config.h中定义了一个宏:
#define WARN() do {fprintf(stderr, "code omited: %d @ %s/n", __LINE__, __FILE__); while(1) idle();} while(0)
当发生链接错误时,首先找出函数体,并在其后加上WARN();如下所示:
static void
default_handler(int var_segment, struct pt_regs *regp)
{
// set_personality(0);
//
// if (current_thread_info()->exec_domain->handler != default_handler)
// current_thread_info()->exec_domain->handler(var_segment, regp);
// else
// send_sig(SIGSEGV, current, 1);
WARN();
}
由于使用了vdsp库中的fprintf函数,当运行到此函数时,将在VDSP下输出一个提示信息并停下,我们再去掉此函数体的注释进行调试,嘿嘿…………..
1 参考资料
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(24):Gcc版本号(2009-1-14)uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(25):inline(2009-1-15)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(26):abs(2009-1-15)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(27):CONFIG_RWSEM_GENERIC_SPINLOCK(2009-1-15)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(28):CONFIG_HZ(2009-1-15)
uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(29):cmdline_init(2009-1-15)
相关文章推荐
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(45):未命名union的后遗症
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(51):CONFIG_LOG_BUF_SHIFT
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(53):ARRAY_SIZE
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(57):bsz
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(61):__builtin_constant_p
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(69):SHARED_MEMORY
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(72):中断时SP的保存
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(5):'bf561.h'的问题
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(11):__INIT
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(19):_stext
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(31):NR_CPUS
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(38):未命名union的问题
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(46):fls_long的问题
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(52):__ebss_l1
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(58):_cplb_mgr
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(62):__builtin_return_address
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(70):保留VDSP的heap
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(77):No usable address families found.
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(78):又见internal error
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(1):前言