- 博客(14)
- 资源 (2)
- 收藏
- 关注
转载 linux内核定时器struct timer_list
内核中最终的计时资源是定时器。定时器用于定时器超时处理程序在未来某个特定时间点执行,或者周期性的轮询硬件的状态。Linux提供了内核定时器完成这类工作。 定时器的只需要执行一些初始化的操作,如:设置一个超时时间,指定超时要调用的函数,然后激活定时器就可以了。它的处理和工作队列还是有点类似的。和任务队列一样,内核定时器并不是周期运行,它在超时后自动销毁。因此,如果要实现周期轮询,就需要在定
2015-10-31 00:42:30 3089 1
原创 飞凌2440开发板的led驱动和应用程序
led驱动程序#include /* Every Linux kernel module must include this head */#include /* Every Linux kernel module must include this head */#include /* printk() */#include /* struct
2015-10-28 22:54:03 850
原创 fl2440开发板hello world模块驱动编写
hello world 许多的编程都是从hello world开始编写,虽然简单但是意义重大。
2015-10-28 22:07:47 539
转载 mdev 自动创建设备结点
mdev是busybox自带的一个简化版的udev作用是在系统启动和热插拔 或动态加载驱动程序时,自动产生驱动程序所需的节点文件,在文件系统中的/dev目录下的设备节点都是由mdev创建的mdev扫描/sys/class和/sys/block中所有的类设备目录,如果在目录中含有名为"dev"的文件,且文件中包含的是设备号,则mdev就利用这些信息为这个设备在/dev下创建设备节点用
2015-10-28 09:32:49 1483
转载 内核定时器struct timer_list
内核中最终的计时资源是定时器。定时器用于定时器超时处理程序在未来某个特定时间点执行,或者周期性的轮询硬件的状态。Linux提供了内核定时器完成这类工作。 定时器的只需要执行一些初始化的操作,如:设置一个超时时间,指定超时要调用的函数,然后激活定时器就可以了。它的处理和工作队列还是有点类似的。和任务队列一样,内核定时器并不是周期运行,它在超时后自动销毁。因此,如果要实现周期轮询,就需要在定
2015-10-28 00:30:40 738
转载 如何利用s3c2440的gpio实现数据输入和输出
这些函数的实现在linux内核源代码的/arch/arm/plat_s3c24xx/gpio.c中实现,这些函数的具体内容就不在这里介绍了,可以通过源代码进行查看,这里对这些函数的用法进行解读:1.void s3c2410_gpio_cfgpin(unsigned int pin,unsigned int function)第一个参数pin 是对应的io引脚(这里用宏S3C2410_GPB(5
2015-10-27 23:48:30 1564
原创 关于makefile的=: =? =+区别
= 是最基本的赋值:= 是覆盖之前的值?= 是如果没有被赋值过就赋予等号后面的值+= 是添加等号后面的值1、“=” make会将整个makefile展开后,再决定变量的值。也就是说,变量的值将会是整个makefile中最后被指定的值。看例子: x = foo y = $(x) bar
2015-10-25 20:55:00 366
原创 基于arm9的linux3.0内核移植
内核移植1下载内核为linux-3.0版本的内核,解压缩 下载网址:www.kenel.org2进入liunx-3.0更改makefile (1)cup改为arm(2)把交叉编译器改为自己的3修改这个地方,生成内核的bin文件 4修改distclean@符号表示 不显示命令本身5在对源代码进行修改在arch/arm/mach-s3c244
2015-10-24 00:17:25 756
原创 解决w8不能关闭密码保护分享
在windows下共享文件是,发现自己的共享的文件不能被其他人访问,要输入有户名和密码,原因在于控制面板\网络和 Internet\网络和共享中心\高级共享设置里边的密码保护共享没有关闭密码保护,但是在关闭的时候不能关闭。 解决办法就是关闭自己Guse账户,关闭密码!!!!
2015-10-23 23:47:13 715
转载 编译的时候出现cannot find -llzo2
liblzo2 用来压缩静态数据,有时候系统并没有安装,可以通过以下方式安装:1、 下载对应的压缩包wget -c http://www.oberhumer.com/opensource/lzo/download/lzo-2.06.tar.gz2、解压tar zxf lzo-*3、进入目录cd lzo-2.064、配置共享目录/usr
2015-10-15 18:27:51 1425
原创 u-boot启动内核所要传的参数
最重要的是bootargs 和bootcmdcpu=s3c2440bbl=tftp 30008000 u-boot-$cpu.bin;nand erase 0 100000;nand write 30008000 0 $filesizenorbbl=erase bank 1; tftp 30008000 u-boot-$cpu.bin;cp.b 30008000 0 $file
2015-10-12 19:14:22 494
原创 对内核添加cramfs支持
Cramfs(Compressed ROM File System)是Linux的创始人 Linus Torvalds参与开发的一种只读的压缩文件系统,它也基于MTD驱动程序。在cramfs文件系统中,每一页(4KB)被单独压缩,可以随机页访问,其压缩比高达2:1,为嵌入式系统节省大量的Flash存储空间,使系统可通过更低容量的FLASH存储相同的文件,从而降低系统成本。Cramfs文件系统以
2015-10-11 20:55:58 1749
原创 添加ramdsik文件系统支持
在内核make menuconfig中选择相关的选项1,General setup ---> [*] Initial RAM filesystem and RAM disk (initramfs/initrd) support () Initramfs source file(s)Device Drivers ---> Block de
2015-10-11 19:42:16 1087
原创 基于fl2440 内核linux3.0添加dm9000支持
2440开发板和dm9000的联系 片选信号AEN使用了nGCS4,所以网卡的内存区域在BANK4,也就是从地址0x20000000开始。DM9000的TXD[2:0]作为strap pin在电路图中是空接的,所以IO base是300H。中断使用了EINT7。 所以要对arch/arm/mach-s3c2440/mach-smdk2440.c进行修改,修改如下:
2015-10-10 14:54:05 381
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人