ChinaUnix.net
相关文章推荐:

LINUX 8250 驱动模块

static void autoconfig_irq(struct uart_8250_port *up) { unsigned char save_mcr, save_ier; unsigned char save_ICP = 0; unsigned int ICP = 0; unsigned long irqs; int irq; if (up->port.flags & UPF_FOURPORT) { ICP = (up->port.iobase & 0xfe0) | 0x1f; save_ICP = inb_p(ICP); outb_p(0x80, ICP); (void) inb_p(ICP); } /* forget p...

by zfyang_china - Linux文档专区 - 2010-01-25 15:03:24 阅读(2112) 回复(0)

相关讨论

------------------------------------------ 本文系本站原创,欢迎转载! 转载请注明出处:http://ericxiao.cublog.cn/ ------------------------------------------ 一:前言 前一段时间自己实践了一下8250芯片串口驱动的编写。今天就在此基础上分析一下linux kernel自带的串口驱动。毕竟只有对比专业的驱动代码才能更好的进步,同以往一样,基于linix kernel2.6.25.相应驱动代码位于:linux-2.6.25/drivers/serial/8250.c。...

by zfyang_china - Linux文档专区 - 2010-01-25 15:01:16 阅读(1574) 回复(0)

------------------------------------------ 本文系本站原创,欢迎转载! 转载请注明出处:http://ericxiao.cublog.cn/ ------------------------------------------ 一:前言 前一段时间自己实践了一下8250芯片串口驱动的编写。今天就在此基础上分析一下linux kernel自带的串口驱动。毕竟只有对比专业的驱动代码才能更好的进步,同以往一样,基于linix kernel2.6.25.相应驱动代码位于:linux-2.6.25/drivers/serial/8250.c。 二:8...

by xgr180 - Linux文档专区 - 2008-08-18 09:50:44 阅读(1598) 回复(0)
by kangjunping - 移动操作系统 - 2011-12-20 09:44:09 阅读(1085) 回复(0)

今天重要任务是完成一个完整的小型驱动模块的编写,和加载,测试,卸载。驱动模块功能简单,只需几个简单的显示来表示模块的执行情况… 问题1:源文件中头文件和库文件的路径的寻找方法: GCC找头文件有三种策略: 1.会在默认情况下指定到/usr/include文件夹(更深层次的是一个相对路径,GCC可执行程序的路径是/usr/bin,那么它在实际工作时指定头文件头径是一种相对路径方法,换算成绝对路径就是/usr/include) 2.GCC还使用...

by zls0315 - Linux文档专区 - 2008-04-19 14:03:25 阅读(601) 回复(0)

本帖最后由 andycrusoe 于 2014-04-28 18:01 编辑 现在在一个实时性非常高的485应用环境,不能用delay,sleep之类的延时 要求发送完数据后马上改变485的收发状态 环境:linux arm 232转485 DM6446

by andycrusoe - 驱动开发 - 2014-05-07 14:19:35 阅读(1196) 回复(3)

小弟最近在用linux2.6.28内核下的8250串口驱动移植tl16c554的串口驱动,碰到了too much work for irq还有no bobody cared的问题,不知各位前辈以前有过类似的开发经历或者遇到过类似的问题的,可否指点一下,或者是有正在做着类似工作的同仁,大家一起讨论,真心感谢 http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=4077118&fromuid=28308283 这是我在另外的 驱动开发板块里面的帖子,里面有我移植的比较详细的经历 身边...

by mxc880922 - 嵌入式开发 - 2013-04-17 21:32:00 阅读(1122) 回复(0)

参考代码http://www.java123.net/detail/view-402565.html,我在函数中加入了写入文件操作,系统崩溃,单独测试文件读写模块没有问题,加入到这个截获io模块,在这个地方系统就崩溃了(其他代码测试过没问题),不知道什么原因呢,请高手指教,代码如下:ssize_t encry_read(struct file *file , char *buf , size_t count , loff_t *ppos) { char buf1[10] ; mm_segment_t old_fs;old_fs = get_fs(); struct file *log_fil...

by luocaizhu - 内核源码 - 2013-08-30 14:34:23 阅读(1159) 回复(0)

中断服务程序一般都是在中断请求关闭的条件下执行的,以避免嵌套而使中断控制复杂化。但是,中断是一个随机事件,它随时会到来,如果关中断的时间太长,CPU就不能及时响应其他的中断请求,从而造成中断的丢失。因此,内核的目标就是尽可能快的处理完中断请求,尽其所能把更多的处理向后推迟。例如,假设一个数据块已经达到了网线,当中断控制器接受到这个中断请求信号时,linux内核只是简单地标志数据到来了,然后让处理器恢复到它...

by jhluroom - Linux文档专区 - 2009-04-24 14:28:20 阅读(646) 回复(0)
by 城市星星 - Linux新手园地 - 2012-03-31 22:09:00 阅读(1077) 回复(4)

工作队列(work queue)是另外一种将工作推后执行的形式 ,它和我们前面讨论的所有其他形式都有不同。工作队列可以把工作推后,交由一个内核线程去执行,也就是说,这个下半部分可以在进程上下文中执行。这样,通过工作队列执行的代码能占尽进程上下文的所有优势。最重要的就是工作队列允许被重新调度甚至是睡眠。 那么,什么情况下使用工作队列,什么情况下使用tasklet。如果推后执行的任务需要睡眠,那么就选择工作队列。如果推...

by jhluroom - Linux文档专区 - 2009-04-24 14:25:04 阅读(993) 回复(0)