ChinaUnix.net
相关文章推荐:

BeagleBone uart驱动

我照着网上的例子写了一个uart驱动 ,平台是2440 可是为什么一对它读写就死机了呢?

by cioujaf - 驱动开发 - 2013-07-17 18:57:50 阅读(976) 回复(3)

相关讨论

S3C2440串口二在linux下发不出数据,串口0,1均能正常收发。驱动是一样的! 后来发现串口二是不支持AFC自动流量控制的。其他硬件完全和串口0,1一致。 所以认为是这里的原因,arm-linux内核版本2.6.12.请高手指点一下我的具体原因出在哪里????

by hidiy - 嵌入式开发 - 2009-06-09 00:11:49 阅读(1369) 回复(4)

求教:公司自己做的板子,处理器MPC5200,扩展16550 uart(不做console),Kernel 2.6.16,之前未加载该驱动时启动正常,加载后在"Freeing unused kernel memory: 100k"挂住了。因板子与Freescale公司的lite5200b基本类似,我在arch/ppc/platform/lite5200b.c定义了以下结构(感觉在哪定义都行): [code] static struct plat_serial8250_port serial8250_ports[] = { [0] = { .uartclk = 9600*16, .iotype = UPIO_MEM, .mapbase = ...

by youngchul - 驱动开发 - 2008-12-30 20:50:35 阅读(2875) 回复(5)

求教:公司自己做的板子,处理器MPC5200,扩展16550 uart(不做console),Kernel 2.6.16,之前未加载该驱动时启动正常,加载后在"Freeing unused kernel memory: 100k"挂住了。因板子与Freescale公司的lite5200b基本类似,我在arch/ppc/platform/lite5200b.c定义了以下结构(感觉在哪定义都行): static struct plat_serial8250_port serial8250_ports[] = { [0] = { .uartclk = 9600*16, .iotype = UPIO_MEM, .mapbase = 0xfc000...

by youngchul - 嵌入式开发 - 2008-12-25 08:09:26 阅读(3753) 回复(8)

最近要做一个SPI转uart设备的驱动 之前只做过小型的字符驱动,比如矩阵键盘什么的 uart驱动看了一周了,一直感觉理解的不透彻 想自己下手开始写,但却不知道从哪开始 还请过来的前辈们指导下路该怎么走,谢谢啦。。。

by lucif0908 - 驱动开发 - 2012-10-26 12:07:42 阅读(1787) 回复(3)

本帖最后由 amarant 于 2011-03-18 08:48 编辑 我现在在做一个设备驱动,读取方式用的是uart,我看了下代码,仿佛内核的uart已经很完善了,是不是只要给设备做好上电,就可以直接在用户空间读取了? 那么我这个驱动read函数就空着吗?

by amarant - 嵌入式开发 - 2011-03-18 08:48:06 阅读(1833) 回复(4)
by cioujaf - 内核源码 - 2013-07-11 11:44:46 阅读(1198) 回复(0)

对于串口驱动的移植准备自己分析一下源代码的,但是发现自己好多地方都只知道一 些皮毛,不明白其中的道理,所以我上网搜的时候发现有好多人写了很多很好的文章了,下面我转载的这篇就非常不错,一个困恼我好久的问题是驱动代码中只是注 册了platform驱动,而platform设备注册在哪里?这个问题困恼我好久,源代码中一直没找到,下面文章就解决了这个问题。当然文章中详细了讲 述了很多细节的知...

by jen_yimu - 移动操作系统 - 2013-05-10 09:39:57 阅读(1977) 回复(1)


第一次分析内核源代码,整个内核代码绕来绕去,人比较容易晕,而且深入追踪几次后不知道自己要干什么呢?自己看内核代码,看驱动,上网搜资料也有好一段时间了,大概总结一下自己的一些心得,很简单的,不是写驱动的心得,而是怎么去查看,最近看uart终端设备驱动,就以这个为例吧。

第一,弄清楚主要结构框架
这人是大概弄清楚主要框架,流程,一般linux内核驱动都是封装,分层,抽象,继承的,所以要弄个大概,知道...

by jen_yimu - 移动操作系统 - 2011-12-23 03:35:27 阅读(1249) 回复(0)

/driver/serial/serial-core.c 中实现了uart设备的通用tty驱动层,称为串口核心层。

uart驱动的主要任务是 实现serial-core.c中定义的一组uart_xxx接口。
serial-core.c串口核心层完全可以当做一个tty设备驱动的实例,它实现了uart设备的tty驱动

一、串口核心层为串口设备驱动提供了3个结构体。
1.uart_driver
包含了串口设备的驱动名,设...

by xxha000721 - 移动操作系统 - 2011-12-22 08:51:06 阅读(711) 回复(0)

struct class *tty_class; struct device *tty_register_device(struct tty_driver *driver, unsigned index, struct device *device) { char name[64]; dev_t dev = MKDEV(driver->major, driver->minor_start) + index; if (index >= driver->num) { printk(KERN_ERR "Attempt to register invalid tty line number " " (%d).\n", index); return ERR_PTR(-EINVAL); } if (driver->type == TTY_DRI...

by hws2310 - 驱动开发 - 2011-06-17 15:27:53 阅读(2981) 回复(4)