linux驱动开发
文章平均质量分 50
物联Bill
果粉ios、Android、嵌入式Linux应用、驱动。QQ:272302486
展开
-
卸载驱动出现:rmmod: can‘t change directory to ‘/lib/modules‘: No such file or directory
rmmod: can't change directory to '/lib/modules': No such file or directory新建目录/lib/modules#mkdir -p/lib/modules又出现rmmod: can't change directory to '2.6.32.2-FriendlyARM': No such file or directory继续新建#mkdir -p/lib/modules/2.6.32.2-FriendlyARM..原创 2021-03-02 14:23:40 · 362 阅读 · 0 评论 -
SecureCRT中的Ctrl+C不可用
应该是Ctrl+C组合键被设置成了复制,可以在右键鼠标看下,是不是复制的快捷键是ctrl+c?如果是,在菜单栏找到 选项 ->会话选项 ->终端 -> 仿真 -> 映射键,有个CUA设置,把“使用Windows复制和粘贴热键(U)”前面的勾去掉即可...原创 2020-03-18 15:45:56 · 4807 阅读 · 1 评论 -
通过uboot降cpu,DDR频率测试
降频测试方法:【1】修改uboot配置uboot-imx\include\configs\mx51_bbg_android.h,添加宏,编译:#define CONFIG_CMD_CLOCK#define CONFIG_REF_CLK_FREQ CONFIG_MX51_HCLK_FREQ【2】烧这个uboot:fastboot flash bootloader u-bo原创 2011-11-16 18:44:25 · 7613 阅读 · 0 评论 -
利用BLCR加快android的启动过程
利用BLCR加快android的启动过程 作者:Bill 摘要:介绍了利用blcr对android启动速度进行优化的原理、实施步骤和注意点,在虚拟机上验证获得缩短10秒以上启动时间。关键词:blcr android 启动速度 zygote 类加载引言 随着google的android操作系统在手机、平板电脑等领域大量使用,android的启动速度慢转载 2010-12-27 18:55:00 · 3958 阅读 · 3 评论 -
开发备忘录
setenv bootcmd_android_recovery 'run bootargs_base bootargs_android_recovery;mmc read 0 ${loadaddr} 0x7AA00 0x2000;bootm'fastboot烧写首先进入uboot命令行setenv fastboot_dev mmc0 fas然后在dos按照需要烧写:原创 2014-01-14 18:09:24 · 2431 阅读 · 0 评论 -
MIPS 架构 Linux driver编译时遇到的问题
Linux kernel在V 2.6之后,modules的编译有些修改。不再是单独编译,而是将本module添加入:obj-m,并最终调用Linux Kernel Makefile 来编译modules. 任务一:这次Sam需要在某一平台上编译Bluetooth driver.其实也就是BlueZ的Kernel部分。但这个平台Kernel Source Cod转载 2014-09-23 23:19:30 · 978 阅读 · 0 评论 -
编译7620 include/linux/autoconf.h:315:1: "CONFIG_RT_FIRST_CARD" redefined 问题
内核版本:2.6.34编译7620 sdk 4300 出错提示:include/linux/autoconf.h:315:1: "CONFIG_RT_FIRST_CARD" redefinedIn file included from :11:解决方法:cd linux-2.6.36.x/liclude/linuxln -s ../generated/a原创 2015-03-28 17:19:18 · 1303 阅读 · 0 评论 -
Openwrt 摄像头使用
http://see.sl088.com/wiki/Openwrt_%E6%91%84%E5%83%8F%E5%A4%B4%E4%BD%BF%E7%94%A8Openwrt 摄像头使用来自森亮号航海见识 {SLboat Insight;}(重定向自摄像头使用)跳转至: 导航、 搜索 目录 [隐藏] 1想法2挂载摄像头2转载 2015-04-16 15:25:18 · 9476 阅读 · 0 评论 -
linux定时器和Jiffies
Linux核心几个重要跟时间有关的名词或变数,以下将介绍HZ、tick与jiffies。HZLinux核心每隔固定周期会发出timer interrupt (IRQ 0),HZ是用来定义每一秒有几次timer interrupts。举例来说,HZ为1000,代表每秒有1000次timer interrupts。 HZ可在编译核心时设定,如下所示(以核心版本2.6.20-15为例):转载 2015-05-22 00:34:15 · 3147 阅读 · 0 评论 -
linux app应用如何检测USB设备热插拔
框架是这样的,手头没编译器,你先看看试试。原理就是建立一个socket捕获内核发过来的netlink消息,很简单的。#include #include #include #include #include #include #include #include #include #include #include #inclu转载 2015-11-29 00:59:26 · 3868 阅读 · 0 评论 -
ZedBoard Linux开发 --- GPIO驱动详解
ZedBoard Linux开发 --- GPIO驱动详解 本来这是要作为ZedBoard Linux的第一个学习实例,不过由于一开始实在找不到内核中针对ZedBoard GPIO具体操作的代码在哪里,所以只能先从OLED开始看起,在学习完OLED驱动之后有了不少发现,比如OLED驱动中就有使用GPIO的操作,后来发现这些操作都被Linux内核中的GPIO转载 2016-10-11 18:09:39 · 2576 阅读 · 1 评论 -
FPGA Linux驱动
FPGA Linux驱动 设备驱动程序是应用程序与硬件之间的一个中间软件层,设备驱动程序为应用程序屏蔽了硬件的细节。这样在应用程序看来,硬件设备只是一个设备文件,应用程序可以像操作普通文件一样对硬件设备进行操作。设备驱动程序是内核的一部分,它主要实现的功能有:对设备进行初始化和释放;把数据从内核传送到硬件和从硬件读取数据;读取应用程序传送给设备文件的数据,回送应用程转载 2016-09-26 10:28:37 · 4955 阅读 · 1 评论 -
加入of_ (device tree操作api) 的platform驱动编写 基于gpio-keys
加入of_ (device tree操作api) 的platform驱动编写 基于gpio-keys转自:http://lxiaogao.lofter.com/post/1cc6a101_4f92a2aLinux在启动后,到C入口时,会执行以下操作,加载系统平台上的总线和设备:start_kernel() --> setup_arch() --> unflatten_d转载 2016-11-03 19:43:04 · 958 阅读 · 0 评论 -
petalinux如何用SD卡上的设备树
petalinux如何用SD卡上的设备树cd petalinux-v2015.4/fszedboard_ad9361_wirelesspetalinux-config原创 2017-02-07 10:41:36 · 2940 阅读 · 0 评论 -
LCD驱动中参数的设置
在LCD驱动程序中,需要我们根据LCD datasheet来设置相应的参数,这些参数包括:pixclock,left_margin,right_margin,upper_margin,lower_margin,hsync_len,vsync_len,VBP,VFB,VSPW,HBP,HFP,HSPW。下图是典型的TFT LCD时序图: __u32 pixclock; /*原创 2011-11-04 15:20:37 · 5425 阅读 · 2 评论 -
mx51开发备忘录
setenv bootcmd_android_recovery 'run bootargs_base bootargs_android_recovery;mmc read 0 ${loadaddr} 0x7AA00 0x2000;bootm'fastboot烧写首先进入u原创 2011-09-18 15:14:01 · 2555 阅读 · 2 评论 -
kthread_create创建线程
1 使用kthread_create创建线程: struct task_struct *kthread_create(int (*threadfn)(void *data), void *data,原创 2010-05-20 16:50:00 · 845 阅读 · 0 评论 -
i.mx51 uboot启动感悟
uboot启动感悟arm内部有rom,该rom有代码,上面驻留着系统真正启动的代码,和uboot没有关系。通过该段代码根据不同的启动模式进行不同的启动方式:如果是nand会自动读取uboot前4k的代码到片内sdram执行,该代码要完成cpu的初始化和ram初始化(初始化ram为外围的)等。——————————————————————————i.mx51没有nand但有SD卡,但都是作为存储设备!——————————————————————————一直困惑自己的是,一直以为uboot的前4k是拷贝到外围ra转载 2010-09-01 14:04:00 · 3293 阅读 · 20 评论 -
Freescale iMx51开发
在Android下打包uboot可识别的uramdisk:out/host/linux-x86/bin/mkbootfs out/target/product/imx51_bbg/root | out/host/linux-x86/bin/minigzip > out/target/product/imx51_bbg/ramdisk.imgbootable/bootloader/uboot-imx-nand/tools/mkimage -A arm -O linux -T ramdisk -C none原创 2010-09-18 10:16:00 · 5434 阅读 · 0 评论 -
LCD驱动原理及代码分析
S3C2440裸机学习[2] - LCD驱动原理及代码分析[一] 下面看看2440test里面的lcd.c文件static void PutPixel(U32 x,U32 y,U16 c){ if(x LCD_BUFFER[(y)][(x)] = c;}很容易发现TFT LCD上显示单个像素的函数实际上很简洁看来似乎只需要LCD_BUFFER[(y)][(x)] = c这一句话下面就来分析下,是如何通过这一句话来实现在LCD上显示单个像素的先分析下LCD_Init()即LCD初始化函数转载 2010-09-18 11:43:00 · 8695 阅读 · 1 评论 -
V4L2 - Linux下视频驱动模型
在DM6446平台,我们在GPP端一般使用MontaVista操作系统来进行程序控制。MontaVista作为一种嵌入式的Linux,和桌 面Linux类似,同样使用视频驱动V4L2(Video For Linux Two)来进行视频采集、输出。本文就V4L2的使用方式做简易说明。视频采集的基本流程一般的,视频采集都有如下流程:打开视频设备在V4L2中,视频设备被看做一个文件。使用open函数打开这个设备:// 用非阻塞模式打开摄像头设备int cameraFd;ca转载 2010-10-21 11:00:00 · 855 阅读 · 0 评论 -
嵌入式Linux开机Logo的制作
<br /> 嵌入式Linux开机Logo的制作<br /> <br /> <br /> <br />ARM-Linux启动时会先在LCD左上角显示一个ARMLINUX的小企鹅图案,也就是我们所说的bootlogo。<br /><br />1.首先分析一下Logo的显示代码:<br /><br />Logo显示是在加载显示驱动fb后由kernel/drivers/video/fbcon.c中的fbcon_show_logo函数来完成的。<br /><br />fbcon_show_l原创 2011-03-09 20:10:00 · 2828 阅读 · 0 评论 -
Linux logo和屏幕光标
<br />logo和屏幕光标 <br />Linux默认开机LOGO一般都是80x80的小企鹅图标,有时候为了一些效果,希望在Linux<br />启动过程中,全屏看到用户自定义的LOGO,这就需要为Linux增加新的LOGO。<br /> <br />准备png图片<br />使用任何图片软件,制作一张自定义的开机图片,可以根据自己的液晶屏大小设定,png<br />格式。如下以224色为例。<br />我使用了一张jylogo800480的png图片。<br /> <br />转换成ppm文件<br原创 2011-03-11 11:46:00 · 2290 阅读 · 0 评论 -
i.mx51 摄像头模块加载调试
i.mx51 摄像头模块加载调试,加载和卸载要按顺序,否则会提示找不到需要的库。模块加载脚本#/bin/shinsmod ipu_csi_enc.koinsmod ipu_prp_enc.koinsmod ipu_prp_vf_sdc.koinsmod ipu_prp_vf_sdc_bg.koinsmod ipu_still.koinsmod mxc_v4l2_capture.koinsmod adv7181_tvin.ko模块卸载脚本#/bin/shrmmod adv7181_tvin.kormmod m原创 2011-03-25 11:23:00 · 1549 阅读 · 0 评论 -
制作SD卡启动文件系统
制作SD卡启动文件系统【1】对SD卡分区按飞思卡尔文档列出的分区表用fdisk分区:Partition Type/IndexNameStart OffsetSizeFile SystemContentN/A BOOT 0 10MB N/A bootloader/kernel/uramdisk images Primary 1 MEDIA 10MB User Defined VFAT. Mount as /sdcards Media file storagePrimary 2 SYSTEM follow ME原创 2011-05-13 14:39:00 · 3838 阅读 · 4 评论 -
如何编译某一个ko模块make modules SUBDIRS=drivers/usb/gadget
make modules SUBDIRS=drivers/usb/gadget/这样可以只是编译drivers/usb/gadget/目录下的ko模块原创 2011-07-16 14:10:57 · 2762 阅读 · 0 评论 -
Linux内核动态调试信息的打开,如pr_debug
【1】配置Kconfig,添加要调试驱动模块的DDEBUG选项,如kernel_imx\drivers\mxc\pmic\mc13892\Kconfigconfig MXC_PMIC_DEBUG bool "Support MXC PMIC DEBUG" depe原创 2011-08-31 17:40:34 · 14867 阅读 · 0 评论 -
EXT3-fs warning: maximal mount count reached
What should I do when I see the message "kernel: EXT3-fs warning: maximal mount count reached, running e2fsck is recommended" ? 由于 ext3文原创 2011-08-31 17:25:02 · 5793 阅读 · 0 评论 -
source insight用正则表达式搜索两个字符串,搜索内核动态打印的内容
如搜索:TO: st 22 end 53,搜索同时带有TO:与end字符串的内容在source insight里搜索选择正则表达式选项,搜索表达式:TO:.*end原创 2011-09-08 15:54:45 · 4053 阅读 · 0 评论 -
SPI总线 SPI接口 SPI协议 SPI模式 SPI通讯
SPI interface SPI接口介绍 SPI是由美国摩托罗拉公司推出的一种同步串行传输规范,常作为单片机外设芯片串行扩展接 口。SPI有4个引脚:SS(从器件选择线)、SDO(串行数据输出线)、SDI(串行数据输入线)和SCK(同步串行时钟线)。SPI可以用全双工通信 方式同时发送和接收8(16)位数据,过程如下:主机启动发送过程,送出时钟脉冲信号,主移位寄存器的数据通过SDO移入原创 2010-04-23 10:02:00 · 1504 阅读 · 0 评论