
PowerPC
文章平均质量分 67
BeanHuo
linkedin.com/in/bean-huo-8299b759
展开
-
wxworks DOS文件系统
#include #include void main(void){DIR * dir;struct dirent * ptr;int i;dir=opendir("/ata0a/");while((ptr=readdir(dir))!=NULL){printf("d_name: %s\n",ptr->d_name);//需要更详细的信息你可以修改该原创 2013-01-30 16:22:13 · 2555 阅读 · 0 评论 -
vxworks获取系统时间编程
#include //头文件unsigned int timeLen;struct timespec tp;struct tm timeBuffer;time_t nowSec;char datetime[64];/* prepare the time stamp */(void)clock_gettime(CLOCK_REALTIME, &原创 2013-12-12 10:05:54 · 8545 阅读 · 0 评论 -
Vxworks下flash驱动编写流程
Vxworks下flash系统结构图:作为BSP开发人员,我们要实现的是MTD和socket两块,其它的是由文件系统自己守成的。 MTD层 该层提供Flash 设备识别,读写,擦除,地址映射函数的具体实现。该层实现由 Flash 驱动开发人员完成。该层将实现在BSP 下tffsConfig.c 以及 tffsXXX.c 文件中。其中tffsConfig.c定义有MTD原创 2013-11-22 17:12:55 · 2585 阅读 · 0 评论 -
Linux驱动--定时器timer小记
内核中定时器是一个基础的功能,很多的驱动程序都会用到定时器进行定时或延时,当然比较短的延时也可以使用ndelay和udelay这样的函数,但是这些函数都是以浪费机器周期来获得延时的,所以还是应该避免使用。下面介绍一下定时器的内容:#include //头文件//主要的结构体文件struct timer_list { struct list_hea转载 2013-07-03 18:07:29 · 1604 阅读 · 0 评论 -
powerpc linux下dts解析过程
一. 在linux中,对dtb文件解析的整个过程序如下:1)首先将从u-boot 传递过来的映像基地址和dtb 文件映像基地址保存通用寄存器r30,r31;2)通过调用machine_init()、early_init_devtree()函数来获取内核前期初始化所需的bootargs,cmd_line等系统引导参数;3)调用start_kernel()、setup_arch()、unf原创 2013-01-18 19:02:43 · 3365 阅读 · 0 评论 -
linux 下块设备驱动开发学习笔记 2(sbull驱动分析)
//这个驱动是针对gendisk下的buff来实现的,没有用到bio#include #include #include #include //包含头文件#include #include /* printk() */#include /* kmalloc() */#include /* everything... */#include /*原创 2013-03-23 22:58:36 · 1636 阅读 · 0 评论 -
linux 下块设备驱动开发学习笔记 1
一、块设备的I/O操作特点字符设备与块设备I/O操作的不同在于:① 块设备只能以块为单位接受输入和返回输出,而字符设备则以字节为单位。大多数设备是字符设备,因为它们不需要缓冲而且不以固定块大小进行操作。② 块设备对于I/O请求有对应的缓冲区,因此它们可以选择以什么顺序进行响应,字符设备无需缓冲且被直接读写。对于存储设备而言调整读写的顺序作用巨大,因为在读写连续的扇区比分离的扇区更快。原创 2013-03-23 22:39:43 · 1536 阅读 · 0 评论 -
linux 下块设备驱动开发学习笔记 2(sbull驱动在vmware上测试)
在我们make完,生成一个ko文件后,我们就可以测试。1、insmode skull.ko2、more /proc/devices3、ls /dev/sbullsbulla sbullb sbullc sbulld4、fdisk /dev/sbullam-n-p-1- -w -p这时就在dev下有一个sbulla1的分区5、格式化,使指定文件系统原创 2013-03-23 23:18:13 · 1728 阅读 · 0 评论 -
platform总线注册过程及platform_driver与platform_device的匹配
我们知道,按platform结构写驱动,我们只需注册platform_device和platform_driver而不需要我们自己去注册platform总线,因为系统启动就有那条总线,那么它是怎么得到的呢?这里进行具体跟踪一下:start_kernel——>rest_init——>kernel_thread(这个线程创建很重要)——>kernel_init——>do_basic_setup转载 2013-03-29 18:12:13 · 1498 阅读 · 0 评论 -
Powerpc TLB东东
最近一直在看有关powerpc内存管理的东西,就遇到TLB,TLB就是Translation Lookaside Buffer的简称,字面翻译过来就是:转换旁置缓冲区。说白了就是一块高速缓冲区。存储了CPU最近访问内存的虚拟地址和物理地址的对应关系表。每当MMU得到一个要访问的虚拟地址时,先从TLB中检查有没有对应的项,如果有,则直接取出其物理地址,如果没有,则产生一个中断,由MMU映射过程:系统原创 2013-01-31 12:31:14 · 1641 阅读 · 0 评论 -
ubuntu 下make menuconfig的支持
在ubuntu 12的版本,一般不会安装ncurses library库,而它正我们运行make menuconfig正需要的一个库文件。所以下面我们来看看如何安装这库。在这之前我们一定要让我们的ubuntu支持apt-get。第一步:配置proxy在下面两个文件中增加下面的内容:1)#/.bashrc export http_proxy=http://username:原创 2014-01-24 14:40:15 · 2459 阅读 · 0 评论