u-boot-2013.07在mini2440上的移植(三):时钟体系的设置
2013-08-30 12:56
495 查看
一. 相关寄存器设置方案
设置方案 | 时钟频率值 | 寄存器设置值 |
方案一 | MPLLCON = ( (0x5c<<12) | (0x01<<4) | (0X01)); UPLLCON = ( (0x38<<12) | (0x02<<4) | (0x02)); CLKDIVN = 0x05; LOCKTIME = 0xFFFFFF; | |
方案二 | MPLLCON = ( (0x7f<<12) | (0x02<<4) | (0X01)); UPLLCON = ( (0x38<<12) | (0x02<<4) | (0x02)); CLKDIVN = 0x05; LOCKTIME = 0xFFFFFF; |
二.移植过程
本次移植采用方案一,具体移植需要修改的内容如下所示:1.修改文件一:u-boot-2013.07 / arch / arm / cpu / arm920t / start.S
/* FCLK:HCLK:PCLK = 1:4:8 */ /* default FCLK(Fin) is 12 MHz ! */ ldr r0, =CLKDIVN mov r1, #0x05 /* 修改:由原来的 #3 改为 #0x05 */ str r1, [r0] /* when HDIVN != 0, Change CPU Bus mode from the fast bus mode to the asynchronous bus mode*/ mrc p15, 0, r1, c1, c0, 0 /* 新增:将CPU设为异步总线模式 */ orr r1, r1, #0xc0000000 /* 新增 */ mcr p15, 0, r1, c1, c0, 0 /* 新增 */
2.修改文件二:u-boot-2013.07 / board / friendlyarm / mini2440 / mini2440.h
/* PLL Parameters */ #define CLKDIVN_VAL 0x05 /* 修改:将原来的 7 改为 0x05 */ #define M_MDIV 0x5c /* 修改:将原来的 0x7F 改为 0x5c */ #define M_PDIV 0x1 /* 修改:将原来的 0x2 改为 0x1 */ #define M_SDIV 0x1 #define U_M_MDIV 0x38 #define U_M_PDIV 0x2 #define U_M_SDIV 0x2
3.修改文件三:u-boot-2013.07 / arch / arm / cpu / arm920t / s3c24x0 / cpu_info.c
static const getfreq freq_f[] = { get_FCLK, get_HCLK, get_PCLK, get_UCLK /* 新增:为了打印出UCLK,特将get_UCLK()的函数名加进来 */ }; static const char freq_c[] = { 'F', 'H', 'P', 'U' }; /* 修改:将原来的{'F', 'H', 'P'}改为{'F', 'H', 'P', 'U'}*/
4.修改文件四:u-boot-2013.07 / arch / arm / lib / board.c
power_init_board(); #ifdef PORTING_2_MINI2440_BY_XIXINJIE puts("************************************************\n"); puts("* U-Boot-2013-07 for mini2440 *\n"); puts("* Ported by XiXinjie *\n"); puts("* 2013.08.27 *\n"); puts("************************************************\n"); print_cpuinfo(); /* 新增:为了在串口中打印出CpuID FCLK HCLK PCLK UCLK */ #endif /* PORTING_2_MINI2440_BY_XIXINJIE */ #if !defined(CONFIG_SYS_NO_FLASH) puts("Flash: "); flash_size = flash_init();
相关文章推荐
- u-boot-2013.07在mini2440上的移植(一):使用默认测试u-boot.bin
- 第三章、Tiny4412 U-BOOT移植三 时钟设置
- 第三章、Tiny4412 U-BOOT移植三 时钟设置【转】
- u-boot-2013.07在mini2440上的移植(二):从简单修改入手
- U-Boot移植——设置系统时钟
- 移植u-boot-2009.08到mini2440(二)板级设置
- 移植u-boot-2009.08到mini2440(三) NorFlash设置
- 第三章、Tiny4412 U-BOOT移植三 时钟设置
- u-boot-2016.03 在mini2440移植之nandflash读写
- u-boot移植到mini2440,u-boot版本2008.10 收藏
- u-boot2010.06的移植(5)——支持nandflash、分区及环境参数的设置
- 2440超详细uboot移植笔记(十三)------设置环境变量保存地址
- u-boot-2011.06-rc2移植到mini2440开发板(一)
- 移植u-boot-1.1.6到mini2440
- s5pc100中uboot移植之内存控制器的设置
- u-boot2012.04.01移植到mini2440
- u-boot移植到mini2440之三
- 移植u-boot-2016.01到mini2440开发板
- u-boot-2009.11移植到mini2440(一)
- 移植u-boot-2012.04----建立单板_修改时钟_