![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式
chinayangbo2011
这个作者很懒,什么都没留下…
展开
-
probe函数何时被调用
最近看到linux的设备驱动模型,关于Kobject、Kset等还不是很清淅。看到了struct device_driver这个结构时,想到一个问题:它的初始化函数到底在哪里调用呢?以前搞PCI驱动时用pci驱动注册函数就可以调用它,搞s3c2410驱动时只要在mach-smdk2410.c中的struct platform_device *smdk2410_devices {}中加入设备也会调用转载 2013-01-14 21:34:58 · 453 阅读 · 0 评论 -
嵌入式平台驱动platform_device
从 Linux 2.6 起引入了一套新的驱动管理和注册机制 :Platform_device和 Platform_driver 。 Linux 中大部分的设备驱动,都可以使用这套机制 , 设备用 Platform_device 表示,驱动用 Platform_driver 进行注册。 Linux platform driver 机制和传统的 device dr转载 2013-01-14 14:42:42 · 433 阅读 · 0 评论 -
platform模型
一。平台设备模型(platform)2.6内核开始引入了一套新的设备驱动模型。平台设备(platform_device)和平台驱动(platform_driver)。平台设备与一般的device,driver模型区别是,平台设备将设备本身的资源注册进内核,可以由内核统一管理。在文件include\linux\platform_device.h中,定义platform_device结构体。转载 2013-01-14 15:02:03 · 405 阅读 · 0 评论 -
subsys_initcall
在linux内核代码里, 到处充满了subsys_initcall,这个调用是用来干吗的呢?有人回答是系统启动时候用来初始化某些系统的,具体怎么初始化的呢,说起来还是有点复杂。以2.6.21内核作为例子。在linux/init.h里,有这样一段代码:#define pure_initcall(fn) __define_initcall("0",fn,1)#define core_in转载 2013-01-15 13:43:51 · 344 阅读 · 0 评论 -
平台rtc驱动最后的疑惑解决driver->probe到平台->probe
通过Platform机制开发发底层驱动的大致流程为: 定义 platform_device---注册 platform_device ---定义 platform_driver-----注册 platform_driver。 1. Platform_device 定义于 kernel/include/linux/platform_device.h中,struct platform_de转载 2013-01-15 16:00:15 · 458 阅读 · 0 评论 -
LPC32xx启动过程
1、 启动首先把IROM(16KB)映射到0x00的地址上,从0x00出执行程序加载nanflash上的kickstart到IRAM(就相当于SRAM),然后再由kickstart加载s1L,s1L被加载进IRAM去执行。(NandFlash从0到1 是一段kickstart引导代码。从2 到20是一段S1L 引导代码。20以后才是应用程序)2、S1L在延时以后加原创 2013-04-08 19:57:23 · 973 阅读 · 0 评论 -
LPC32xx电源管理 部分译
PLL锁相环起到调频的作用时钟运行模式:1、运行模式(Run) 2、直接运行模式(Direct Run) 3、停止模式(Stop)运行模式下的时钟来自于PLL提供的高频率,直接运行模式下就是绕过PLL,CPU运行在较低的频率下,停止模式就是时钟停止直到事件发生唤醒时钟。LPC3250大部分功能块都有时钟使能不使能控制寄存器,通翻译 2013-04-08 20:00:10 · 835 阅读 · 0 评论 -
在路上
回望过去抑或是展望未来都有可能让奋斗者陷入压抑或绝望,唯一快乐的就是在路上......原创 2017-01-21 20:30:28 · 262 阅读 · 0 评论