
linux驱动
文章平均质量分 62
smart_qiang
这个作者很懒,什么都没留下…
展开
-
Linux驱动加载顺序
Linux内核为不同驱动的加载顺序对应不同的优先级,定义了一些宏:include\linux\init.h#define pure_initcall(fn) __define_initcall("0",fn,1)#define core_initcall(fn) __define_initcall("1",fn,1)#define core_initcall_sync(fn转载 2012-05-28 21:46:15 · 1289 阅读 · 0 评论 -
我对linux理解之v4l2
我们先看具体sensor slave怎么注册到v4l2的:static struct v4l2_int_ioctl_desc ov5642_ioctl_desc[] = {//ioctl与对应的序号联系在一起,在v4l2层将被转换成固定的名字 {vidioc_int_dev_init_num, (v4l2_int_ioctl_func *)ioctl_dev_init},转载 2013-09-24 11:23:24 · 4224 阅读 · 0 评论 -
MX25上SD卡的插拨检测机制
转自:http://blog.youkuaiyun.com/armeasy/article/details/6035341飞思卡尔开发板留有可插拨的SD卡卡槽,BSP包中提供了热插拨的检测机制。在sdhci_probe_slot函数中,gpio_sdhc_active函数初始化SD卡相关的GPIO口,包括SD卡检测脚的初始化。下面的程序实现SD卡检测中断号的申请,以及中断的触发方式:host-转载 2013-09-18 10:43:05 · 1448 阅读 · 0 评论 -
将uboot的调试串口和内核到调试串口由COM1改为COM2
一:UBOOT1、修改uboot-imx\board\freescale\mx51_bbg里的mx51_bbg.c文件,改成需要的设置:static void setup_uart(void){ unsigned int pad = PAD_CTL_HYS_ENABLE | PAD_CTL_PKE_ENABLE | PAD_CTL_PUE_PULL | PAD_CTL原创 2013-03-16 17:26:40 · 11119 阅读 · 0 评论 -
打开MC13892 VVIDEO 2V775的电压
LCD供电用这个电源:修改kernel_imx\arch\arm\mach-mx5\mx51_babbage_pmic_mc13892.cstatic struct regulator_init_data vvideo_init = { .constraints = { .name = "VVIDEO", .min_uV = mV_to_uV(2775), .max_原创 2013-03-21 11:33:39 · 844 阅读 · 0 评论 -
C3000 LCD驱动
1:修改mx51_bbg_android.h#define CONFIG_ANDROID_RECOVERY_BOOTARGS_MMC \ "setenv bootargs ${bootargs} init=/init root=/dev/mmcblk0p4 " \ "rootfs=ext4 di0_primary" #define CONFIG_EXTR原创 2013-04-02 09:19:45 · 822 阅读 · 0 评论 -
linux驱动模型
http://www.cnblogs.com/wwang/tag/%e8%ae%be%e5%a4%87%e6%a8%a1%e5%9e%8b/http://blog.chinaunix.net/uid-23254875-id-341060.html原创 2013-03-12 15:53:19 · 574 阅读 · 0 评论 -
list操作
在 [net/core/netfilter.c] 的 nf_register_sockopt() 函数中有这么一段话: …… struct list_head *i; …… list_for_each(i, &nf_sockopts) { struct nf_sockopt_ops *ops = (struct nf_sockopt_ops *)i; …… } ……函数首先定义转载 2012-06-16 17:21:00 · 1714 阅读 · 0 评论 -
linux一些机制的总结
1. Work 将任务添加到系统的工作队列中Struct work_struct cd_wq;INIT_WORK(&cd_wq,work_func);Schedule_work(&cd_wq);实际上工作队列就是一个进程,添加到工作队列中就是调度的时候运行 Struct delayed_work otg_event;#define DELAY_TIME 1转载 2012-06-15 21:48:38 · 8944 阅读 · 0 评论 -
platform_set_drvdata
probe函数中定义的局部变量,如果我想在其他地方使用它怎么办呢? 这就需要把它保存起来。内核提供了这个方法,使用函数platform_set_drvdata()可以将ndev保存成平台总线设备的私有数据。以后再要使用它时只需调用platform_get_drvdata()就可以了。#define platform_set_drvdata(_dev,data) dev_set_dr原创 2012-06-03 17:48:02 · 3815 阅读 · 0 评论 -
Linux regulator分析
Regulator模块用于控制系统中某些设备的电压/电流供应。在嵌入式系统(尤其是手机)中,控制耗电量很重要,直接影响到电池的续航时间。所以,如果系统中某一个模块暂时不需要使用,就可以通过regulator关闭其电源供应;或者降低提供给该模块的电压、电流大小。Regulator的文档在KERNEL/Documentation/Power/Regulator中。 Regulator与模块转载 2012-05-29 21:29:59 · 6018 阅读 · 0 评论 -
Linux各模块框架
http://blog.youkuaiyun.com/qianjin0703/article/details/7783770原创 2013-09-26 17:18:40 · 735 阅读 · 0 评论