自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(20)
  • 收藏
  • 关注

转载 malloc(0)的问题

malloc(0)的问题 ANSI C的,如果认为malloc(0)是语法错误的话,下面我写的就不用看了。下面进入正题,关于malloc(0)这个问题,我在网上看到有个面试题好像就是问这个的,原题好像是:char *ptr;if ((ptr = (char *)malloc(0)) == NULL)puts("Got a null pointer");elseput

2012-08-28 10:41:31 506

原创 USB驱动总结

2012.8.21 星期二USB驱动总结 这几天看了下2.6内核的usb驱动,现将关键知识点罗列如下,主要参考书目为ldd3.usb设备是一个非常复杂的东西,而为了规避这些复杂的协议内容,linux内核提供了一个称为USB核心的子系统来处理大部分的复杂性。USB设备的构成包括配置、接口、端点。配置包含接口,接口包含端点。USB通信最基本的形式是通过端点(

2012-08-24 08:53:05 924

原创 sys/devices/platform/中显示的平台设备接口

2012.7.13   星期五在板终端打开/sys/devices/platform/中显示的平台设备接口全部都是6410下的,虽然有的名称是以s3c2440开头的,那只是表示2440某些接口同6410兼容,所以就沿用2440的名称。在BSP文件(mach-smdk6410.c)中定义的平台设备,名称的命名是在s3c6410.c中的,而s3c6410.c似乎是自动加载的,并不可以在make

2012-08-21 17:34:04 5614

原创 gcc编译中头文件路径指定

2012.7.10       星期二          如果gcc编译中提示,没有指定源码库头文件,则使用arm-linux-gcc -I 头文件路径 -o 执行文件名 源文件名

2012-08-21 17:33:00 847

原创 TP驱动的sys节点建立

2012.5.30 星期三    关于TP驱动的sys节点建立问题的解释。  网上关于sysfs接口建立的解释为:    sysfs接口函数到建立_DEVICE_ATTR最近在弄Sensor驱动,看过一个某厂家的成品驱动,里面实现的全都是sysfs接口,hal层利用sysfs生成的接口,对Sensor进行操作。说道sysfs接口,就不得不提到函数宏 DEVICE_ATT

2012-08-21 17:31:53 3134 2

原创 mini6410主频设置

2012年5月21日          星期一    为了提高mini6410的主频(友善设置的是533、133、66)到667M,查看了一下uboot的相关设置。    配置文件为include/configs/mini6410.h

2012-08-21 17:30:43 642

原创 mini6410安卓按键驱动修改

2012年5月18日          星期五  今天demo盒子回来了,由于机构的原因,所以调节了一下按键的作用,现将调试文件说明如下:  友善的按键驱动为menu中/device/input/ keyborads/GPIO Buttons 驱动程序为\drivers\input\keyboard\gpio_keys.c 最初认为报点的函数为for (i = 0; i n

2012-08-21 17:29:59 1556

原创 TSLIB设备定义

2012年5月14日        星期一            之前使用MINI2440时一直不明白TSLIB的指向设备到底在哪里定义,导致触摸屏开机进行校正的时候无法通过,刚刚看帖子貌似找到了方法  在设备上的/system/etc/friendlyarm-ts-input.conf中TSLIB_TSDEVICE中定义了指向的设备。。。。。不过这个没有进行验证,等待以后有机会验

2012-08-21 17:26:54 591

原创 linux内核链表

2012年5月11日  星期五  今天仔细看了下linux内核链表的结构,将遍历链表弄清楚了。 在Linux内核链表中,不是在链表结构中包含数据,而是在数据结构中包含链表节点。遍历链表的主要作用是获取数据结构并且进行期望的操作。 list_entry(ptr,type,member)其中ptr是指向该数据结构中list_head成员的指针,也就是存储在链表中的地址值,type是

2012-08-21 17:26:15 583

原创 研究所委托的3.5寸LCD在mini6410上的点亮

2012年4月26日            星期四       研究所委托的3.5寸LCD在mini6410上的点亮阶段性完成。   出现的问题有:    1、初始化问题,此款LCD非标准品,系统上电需要对LCD进行初始化方可点亮,初始化依旧是传统的SPI模式,使用的方式为在LCD驱动程序中加入SPI初始化程序,SPI初始化程序采用GPIO口模拟SPI总线的方式完成,程序模板来自于

2012-08-21 17:25:28 265

原创 android2.3.4下,linux2.6.36内核的lcd驱动

2012 年 3月 30日     星期五               最近看了lcd驱动,本着不注解无真相的精神,写下android2.3.4下,linux2.6.36内核的lcd驱动硬件平台:mini6410+4.3LCD系统平台:android2.3.4+linux2.6.36驱动文件:s3c-fb.c我们这里主要分析s3c-fb.c中的probe函数, probe函

2012-08-21 17:24:22 2351 1

原创 focal的5406+mini6410的android2.3.4

2012  3月7日                星期三昨天调通了focal的5406+mini6410的android2.3.4 将focal的驱动文件晒一下。顺便将驱动加载过程以及需要改变的系统文件配置,记录如下。///////////////////////////////////////////////////////////////第一步////////////////////

2012-08-21 17:22:24 171

原创 Mini2440的按键驱动程序(mini2440_buttons.c/button_test.c)

2012年2月10日               星期五                      今天开始重新整理一下之前分析过的驱动程序Mini2440的按键驱动程序(mini2440_buttons.c/button_test.c)此驱动程序是将按键设备归于杂项设备类里的,主设备号为10,所以在驱动程序里面没有进行字符设备驱动的注册(cdev_add);/dev/下的设备

2012-08-21 17:21:02 1543

原创 对migor_ts.c的修改

2011.12.1         星期四本周二,完成了 通过migor_ts.c (经过修改)创建的驱动程序来将C48的报点数据传输到QT界面上,但是总是分辨率不匹配,不知道是不是由于是使用input_report_abs这个函数对QT进行报点所造成的,是不是必须像电阻屏一样进行开机校准,在电阻屏驱动s3c2410_ts.c文件中看到其X,Y设置的限制坐标为1024*1024,另外2440的

2012-08-21 17:20:20 1464

原创 I2c_test.c + i2c_dev.c +i2c_s3c3410.c 构成的i2c设备的调用链

2011.11.21                星期一I2c_test.c + i2c_dev.c +i2c_s3c3410.c    构成的i2c设备的调用链。一、从用户空间程序i2c_test.c开始进行流程//i2c_test.c#include #include #include #include #include #include #inclu

2012-08-21 17:18:53 1793

原创 I2c-dev.c 参考代码 TP驱动分析(五)

2011.11.18      星期五I2c-dev.c        参考代码 TP驱动分析(五)1、 昨天分析的代码中,在I2C_RDWR中,解释了部分功能,但核心的通讯函数是       res = i2c_transfer(client->adapter,//适配器                     rdwr_pa,//msg

2012-08-21 17:17:33 2560

原创 2011.11.17 星期四 I2c-dev.c 参考代码 TP驱动分析(五)

程序运行流程:1、 module_init(i2c_dev_init); 加载初始化函数。2、 运行i2c_dev_init函数,注册设备,注册设备驱动,以_init为头的函数,在运行过后系统将回收其内存static int __init      i2c_dev_init(void){       int res;//代码看到这里的时候,顺便看了一眼我的Linux

2012-07-20 10:32:39 1195

原创 2011.11.16 I2c-s3c2440.c 分析

此文件是I2C适配器的驱动加载文件,设备加载文件为bsp文件,如果使用的是mini2440,则为mach-mini2440.c程序运行流程:1、module_init(i2c_adap_s3c_init);    模块初始化函数登记。2、驱动启动后自动执行:    static int __init      i2c_adap_s3c_init(void)

2012-07-18 17:00:30 1027

转载 驱动注册的probe函数(转)

驱动注册的probe函数probe的调用 从driver_register看起:int driver_register(struct device_driver * drv){        klist_init(&drv->klist_devices, klist_devices_get, klist_devices_put);        init_complet

2012-06-11 17:33:47 415

转载 LCD调色板

LCD调色板显示 (2010-08-20 10:43)分类: Embedded 摘 要:嵌入式应用中,由于计算能力以及硬件资源的限制,常需要降低颜色深度,以获得较高的分辨率,因此调色板彩色显示是一种很重要的手段。在此以ARM9核的S3C2410芯片为例,探讨分析调色板的概念及配置方法,通过修改驱动程序,实现了调色板彩色显示,给出了编程实例,总结了实现方法。试验表明,当LCD

2012-04-26 16:12:53 1538

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除