uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(8):CONFIG_CLKIN_HZ
2009-01-12 22:49
639 查看
快乐虾 http://blog.csdn.net/lights_joy/ lights@hb165.com
本文适用于
ADI bf561 DSP
优视BF561EVB开发板
uclinux-2008r1.5-rc3
Visual DSP++ 5.0(update 5)
欢迎转载,但请保留作者信息
编译head.s时有几个警告(错误):
[Warning pp0038] "../linux-2.6.x/include/asm/mach/mem_init.h":32 macro 'CONFIG_CLKIN_HZ' not currently defined - 0 assumed
[Warning pp0038] "../linux-2.6.x/include/asm/mach/mem_init.h":32 macro 'CONFIG_VCO_MULT' not currently defined - 0 assumed
[Warning pp0038] "../linux-2.6.x/include/asm/mach/mem_init.h":32 macro 'CONFIG_SCLK_DIV' not currently defined - 0 assumed
[Error pp0059] "../linux-2.6.x/include/asm/mach/mem_init.h":32 Division by zero
其错误均指向mem_init.h的32行:
#if (CONFIG_SCLK_HZ > 119402985)
CONFIG_SCLK_HZ的定义在linux-2.6.x/include/asm/mach-common/clocks.h中:
#ifdef CONFIG_CCLK_DIV_1
# define CONFIG_CCLK_ACT_DIV CCLK_DIV1
# define CONFIG_CCLK_DIV 1
#endif
#ifdef CONFIG_CCLK_DIV_2
# define CONFIG_CCLK_ACT_DIV CCLK_DIV2
# define CONFIG_CCLK_DIV 2
#endif
#ifdef CONFIG_CCLK_DIV_4
# define CONFIG_CCLK_ACT_DIV CCLK_DIV4
# define CONFIG_CCLK_DIV 4
#endif
#ifdef CONFIG_CCLK_DIV_8
# define CONFIG_CCLK_ACT_DIV CCLK_DIV8
# define CONFIG_CCLK_DIV 8
#endif
#ifndef CONFIG_PLL_BYPASS
# ifndef CONFIG_CLKIN_HALF
# define CONFIG_VCO_HZ (CONFIG_CLKIN_HZ * CONFIG_VCO_MULT)
# else
# define CONFIG_VCO_HZ ((CONFIG_CLKIN_HZ * CONFIG_VCO_MULT)/2)
# endif
# define CONFIG_CCLK_HZ (CONFIG_VCO_HZ/CONFIG_CCLK_DIV)
# define CONFIG_SCLK_HZ (CONFIG_VCO_HZ/CONFIG_SCLK_DIV)
#else
# define CONFIG_VCO_HZ (CONFIG_CLKIN_HZ)
# define CONFIG_CCLK_HZ (CONFIG_CLKIN_HZ)
# define CONFIG_SCLK_HZ (CONFIG_CLKIN_HZ)
# define CONFIG_VCO_MULT 0
#endif
在这里需要用到的几个宏定义均可在uclinux的配置菜单中指定,因此我们直接将这几个值定义到config.h中:
// 时钟配置
#define CONFIG_CLKIN_HZ 33000000 // 晶振频率
#define CONFIG_VCO_MULT 18 // 内核倍频
#define CONFIG_CCLK_DIV_1 1 // 内核分频
#define CONFIG_SCLK_DIV 6 // 系统分频
参考资料
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的移植(28):CONFIG_HZ
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(51):CONFIG_LOG_BUF_SHIFT
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(55):CONFIG_FLAT_NODE_MEM_MAP
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(10):CONFIG_FLASH_SPEED_BTT
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(27):CONFIG_RWSEM_GENERIC_SPINLOCK
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(39):CONFIG_BASE_SMALL
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(6):CONFIG_BFIN_KERNEL_CLOCK
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(7):CONFIG_MEM_MT48LC16M16A2TG_75
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(9):CONFIG_MEM_SIZE
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(15):CONFIG_BANK_x
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(16):使用head.s做为入口点
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(21):dlb创建
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(26):abs
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(32):start_kernel
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(38):未命名union的问题
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(47):per_cpu的奇怪问题
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(67):li1240
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(72):中断时SP的保存
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(4):目录差异
- uclinux-2008R1.5-RC3(bf561)到VDSP5的移植(17):__bss_start