- 博客(23)
- 资源 (10)
- 收藏
- 关注
转载 Tiny210(S5PV210) U-BOOT(十一)----DDR2初始化源码分析
1.u-boot关于DDR的源码分析在mem_setup.S中,一点一点来,先看第一段[plain] view plain copyprint?/* DMC0 Drive Strength (Setting 2X) */ ldr r0, =ELFIN_GPIO_BASE ldr r1, =0x0000AAAA str
2016-10-27 23:00:09 537
转载 Tiny210(S5PV210) U-BOOT(十)----DDR2初始化顺序
现在网上的S5PV210的u-boot源码中关于内存的初始化过程,基本上我没有找到任何资料有过分析DDR2的内存初始化代码的。在看u-boot的这段代码时,也徘徊了很久,不知道如下手,很多文章或资料都将这一段分析过程有意无意的隐藏掉了,最多也只是提一下说参考裸板的代码,在找不到任何资料的情况下,我只能依靠芯片手册上,三星在内存控制器这一章,写的关于DDR2的初始化顺序的28个步骤来一条一条去读去看
2016-10-27 22:59:03 445
转载 Tiny210(S5PV210) U-BOOT(九)----DDR2工作时序与原理
DDR的发展沿着更高数据传输频率,更大内存容量的方向发展,DDR2中做到更高数据传输频率,由DDR的2-bit pretetch向4-bit pretetch发展,而扩展容量,除了增加每个L-Bank的容量以外,另外就是增加L-Bank数,也就是说在内存中,原来DDR中Bank线只有2根,一块内存芯片最多2^2=4片L-Bank,而在DDR2中变成了2^3=8片L-Bank。(下面的一些图和文档出
2016-10-27 22:57:53 423
转载 Tiny210(S5PV210) U-BOOT(八)----DDR工作时序与原理
Tiny210(S5PV210) U-BOOT(八)----DDR工作时序与原理标签: tiny210u-bootDDR移植s5pv2102013-10-23 00:57 2203人阅读 评论(0)收藏举报本文章已收录于:分类: u-boot(13) 作者同类文章X版权声明:本文
2016-10-27 22:56:52 487
转载 Tiny210(S5PV210) U-BOOT(七)----SDRAM工作时序与原理
Tiny210(S5PV210) U-BOOT(七)----SDRAM工作时序与原理标签: tiny210u-bootDDR内存s5pv2102013-10-19 15:49 1857人阅读 评论(0)收藏举报本文章已收录于:分类: u-boot(13) 作者同类文章X版权声明:
2016-10-27 22:54:55 421
转载 Tiny210(S5PV210) U-BOOT(五)----Nand Flash源码分析
1.u-boot参考源码 Nand Flash的初始化代码在board/samsung/tiny210/lowlevel_init.S 2.初始化Nand Flash在u-boot中,Nand的低级初始化在lowlevel_init.S中的nand_asm_init函数中。打开原理图,配置各个功能引脚----状态引脚R/nB, 读使能引用脚nRE, 片选信号nCE, 命令使能引脚C
2016-10-27 22:53:36 618
转载 Tiny210(S5PV210) U-BOOT(四)----Nand Flash原理(2)
下面以一个实际的读操作,来讲一下Nand Flash的时序:在开始解释前,多罗嗦一下”使能”这个词,使能(Enable),是指使其(某个信号)有效,使其生效的意思......比如,上面图中的CLE线号,是高电平有效,如果此时将其设为高电平,我们就叫做,将CLE使能,也就是使其生效的意思。使能,这个中文翻译有点怪怪的,有点像WDT(Watch Dog Timer),中文翻译叫看门狗,
2016-10-27 22:52:24 274
转载 Tiny210(S5PV210) U-BOOT(四)----Nand Flash原理(1)
Tiny210(S5PV210) U-BOOT(四)----Nand Flash原理(1)标签: tiny210bootloaderu-bootnand flashs5pv2102013-10-17 18:33 1934人阅读 评论(3)收藏举报本文章已收录于:嵌入式开发知识库 分类: u-boot(13)
2016-10-27 22:51:14 558
转载 Tiny210(S5PV210) U-BOOT(三)----配置时钟频率源码分析
1.设置APLL/MPLL/EPLL/EPLL锁相环时间翻看手册,P371页,找到PLL CONTROL REGISTERS。 • (APLL_LOCK, R/W, Address = 0xE010_0000) • (MPLL_LOCK, R/W, Address = 0xE010_0008) • (EPLL_LOCK, R/W, Address = 0xE010_00
2016-10-27 22:50:20 414
转载 Tiny210(S5PV210) U-BOOT(二)----配置时钟频率基本原理
U-BOOT在启动的过程中,需要配置系统时钟。配置系统时钟,大概是以下几个步骤:(1)设置系统PLL锁定时间(2)配置PLL(3)配置各模块分频系数(4)切换到PLL时钟1.基本原理首先输出一个高电平,然后,通过三个晶振,输出一个频率,然后,通过倍频器(锁相环),将频率升高,然后,再通过分频,把分出来的不同的频率,提供给不同的器件,比如ARM Cotrex内核、
2016-10-27 22:49:12 411
转载 Tiny210(S5PV210) U-BOOT(一)----启动过程
CPU上电后,此时SP指针指向0x0000_0000,从这个地址取第一条指令。但此时:PLL没有启动,CPU工作频率为外部输入晶振频率,非常低(S5PV210中晶振在CPU旁边,两颗24MHz,一颗27MHz);CPU的工作模式、中断设置等不确定;存储空间的各个BANK(包括内存)都没有驱动,内存不能使用。在这种情况下必须在第一条指令处做一些初始化工作,这段初始化程序与操作系统独立分开,称之为Bo
2016-10-27 22:47:48 384
转载 Tiny210移植u-boot报/usr/local/include/asm/io.h文件中未知的类型名错误
前几天开始学BootLoader,开始在自己的友善之臂Tiny210SDK2的版本子移植u-boot,确碰到一个非常奇怪的错误,在编译u-boot时,老是报/usr/local/include/asm/io.h文件中有未知类型错误,如下:/usr/local/include/asm/io.h:111:1: 错误: 未知的类型名‘phys_addr_t’/usr/local/include/
2016-10-27 22:46:13 773
转载 Tiny210(S5PV210) U-BOOT(六)----DDR内存配置
Tiny210(S5PV210) U-BOOT(六)----DDR内存配置标签: u-boottiny210DDR内存s5pv2102013-10-18 10:25 2582人阅读 评论(0)收藏举报本文章已收录于:分类: u-boot(13) 作者同类文章X版权声明:本文为博主
2016-10-27 21:34:42 695
转载 解析 Linux 内核可装载模块的版本检查机制
转自:http://www.ibm.com/developerworks/cn/linux/l-cn-kernelmodules/简介: 为保持 Linux 内核的稳定与可持续发展,内核在发展过程中引进了可装载模块这一特性。内核可装载模块就是可在内核运行时加载到内核的一组代码。通常 , 我们会在两个版本不同的内核上装载同一模块失败,即使是在两个相邻的补丁级(Patch Level)版本上。
2016-10-13 22:34:37 1187 1
转载 Linux中的可重入函数和不可重入函数
Linux中的可重入函数和不可重入函数 标签: Linux<a href="http://www.csdn.net/tag/%e5%a4%9a%e7%ba%bf%e7%a8%8b" targ
2016-10-13 09:13:28 1669
转载 linux内核里的GPIO操作函数
1.gpio_set_value(unsigned gpio, int value)用来设置gpio寄存器的值2.gpio_direction_output(unsigned gpio, int value)用来设置gpio为输出功能,同时设置gpio输出的值。一般来说,设置一个GPIO口为输出,先执行一次gpio_direction_output,然后接下来只需执行gpio_se
2016-10-12 20:46:32 544
转载 驱动程序makefile注意事项
最近研究QQ2440,想做水下机器人的位姿检测,用Linux需要对设备驱动编程,学了学,挺麻烦的,麻烦在编译和加载上,在网上找到一个例子不错,抄下来备用。PC机上的:obj-m := hello.o KERNELDIR := /lib/modules/$(shell uname -r)/build default: make -C $(KERNELDIR) M=
2016-10-12 10:14:28 480
转载 int main(int argc, char* argv[])用法详解
main函数的参数 我们经常用的main函数都是不带参数的。因此main 后的括号都是空括号。实际上,main函数可以带参数,这个参数可以认为是 main函数的形式参数。C语言规定main函数的参数只能有两个,习惯上这两个参数写为argc和argv。因此,main函数的函数头可写为: main (argc,argv)C语言还规定argc(第一个形参)必须是整型变
2016-10-11 21:26:43 475
转载 浅谈可重入函数与不可重入函数
在实时系统的设计中,经常会出现多个任务调用同一个函数的情况。如果有一个函数不幸被设计成为这样:那么不同任务调用这个函数时可能修改其他任务调用这个函数的数据,从而导致不可预料的后果。这样的函数是不安全的函数,也叫不可重入函数。相反,肯定有一个安全的函数,这个安全的函数又叫可重入函数。那么什么是可重入函数呢?所谓可重入是指一个可以被多个任务调用的过程,任务在调用时不必担心数据是否会出错。
2016-10-09 15:36:50 379
转载 Linux系统库函数 -- lseek函数用法
所有打开的文件都有一个当前文件偏移量(current file offset),以下简称为 cfo。cfo 通常是一个非负整数,用于表明文件开始处到文件当前位置的字节数。读写操作通常开始于 cfo,并且使 cfo 增大,增量为读写的字节数。文件被打开时,cfo 会被初始化为 0,除非使用了 O_APPEND 。 使用 lseek 函数可以改变文件的 cfo 。 #
2016-10-09 10:48:07 560
转载 Linux系统文件I/O编程(二)---文件锁函数
Linux系统文件I/O编程(二)---文件锁函数标签: linuxio编程fcntl2013-05-30 13:52 2422人阅读 评论(3)收藏举报本文章已收录于:分类: Linux应用编程(52) 作者同类文章X版权声明:本文为博主原创文章,未经博主允许不得转载。
2016-10-08 22:29:39 667
转载 Unix/Linux编程之size_t、ssize_t
Unix/Linux编程之size_t、ssize_t标签: size_tssize_t区别2013-05-30 07:13 2258人阅读 评论(0)收藏举报本文章已收录于:分类: Linux应用编程(52) 作者同类文章X对于赶时间的朋友,只看第一段就好了。 首先,我
2016-10-08 16:46:11 521
转载 Linux系统文件I/O编程(一)---open()等基本函数
Linux系统文件I/O编程(一)---open()等基本函数标签: linuxio编程系统调用2013-05-30 08:55 5085人阅读 评论(1)收藏举报本文章已收录于:分类: Linux应用编程(52) 作者同类文章X版权声明:本文为博主原创文章,未经博主允许不得转载
2016-10-08 15:04:52 587
TracePro-于LED的仿真设计.pdf
2020-02-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人