自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

转载 Linux device driver-(C)SPI(中文)

<br />Linux内核对SPI的支持<br />什么是SPI?<br />    “串行外围接口”是一个同步的四线制串行线,用于连接微控制器和传感器、存储器及外围设备。三条信号线持有时钟信号(SCLK,经常在10MHz左右)和并行数据线带有“主出,从进(MOSI)”或是“主进,从出(MISO)”信号。数据交换的时候有四种时钟模式,模式0和模式3是最经常使用的。每个时钟周期将会传递数据进和出。如果没有数据传递的话,时钟将不会循环。<br />SPI主设备使用“片选”线来使一个给定的SPI从设备工作,所以那

2011-03-31 09:43:00 1354

转载 gpio linux 实现模型

//GPIO是与硬件体系密切相关的,linux提供一个模型来让驱动统一处理GPIO,即各个板卡都有实现自己的gpio_chip控制模块:request, free, input,output, get,set,irq...//然后把控制模块注册到内核中,这时会改变全局gpio数组:gpio_desc[]. //当用户请求gpio时,就会到这个数组中找到,并调用这个GPIO对应的gpio_chip的处理函数。<br />/*gpio实现为一组可用的 gpio_chip, 由驱动传入对应 gpio的全局序号 去

2011-03-30 13:41:00 818

转载 linux spi子系统驱动分析

<br />2.6.18内核下已经添加了完整的spi子系统了,参考mtd的分析,将从下到上层,再从上到下层的对其进行分析。<br />以下先从下到上的进行分析: <br />driver/spi下有两个底层相关的spi驱动程序:<br />spi_s3c24xx.c和spi_s3c24xx_gpio.c<br />其中spi_s3c24xx.c是基于s3c24xx下相应的spi接口的驱动程序,spi_s3c24xx_gpio.c允许用户指定3个gpio口,分别充当spi_clk、spi_mosi和spi_m

2011-03-29 18:15:00 508

转载 Linux路由表的结构与算法分析

路由是网络栈的核心部分。路由表本身的设计很大情度上影响着路由的性能,并且好的设计能减少系统资源的消耗,这两方面尤其体现在路由表的查找上。目前的内核路由存在两种查找算法,一种为HASH算法,另一种为LC-trie算法,前者是目前内核使用的缺省算法,而后者更适用在超大路由表的情况,它在这种情况提高查找效率的同时,大大地增加了算法本身的复杂性和内存的消耗。综上,这两种算法各有其适用的场合,本文分析了基于2.6.18内核路由部分的代码在HASH算法上路由表结构的实现,并且在文章最后给出了一个简单的策略路

2011-03-24 17:03:00 825

转载 Linux驱动中,probe函数何时被调用

<br />声明:以下主要内容参考自:<br />关于struct device_driver结构中的probe探测函数的调用<br />http://blog.chinaunix.net/u2/71164/showart.php?id=1361188<br /><br />用SourceInsight跟踪:<br />从driver_register看起,此处我的这里是:<br />int driver_register(struct device_driver * drv)<br /

2011-03-24 16:07:00 986

转载 ARM Linux Boot Sequence

<br />原文地址:http://gicl.cs.drexel.edu/people/sevy/linux/ARM_Linux_boot_sequence.html<br /> <br />The following traces the Linux boot sequence for ARM-based systems in the 2.6.18 kernel. It looks at just the earliest stages of the boot process, until the gen

2011-03-23 16:04:00 597

转载 Linux Kernel and Android 休眠与唤醒(中文版)

原文地址:http://www.thinksrc.com/2010/04/18/suspend-cn.htmlTable of Contents简介国际化版本信息对于休眠(suspend)的简单介绍Linux Suspend 的流程相关的文件:准备, 冻结进程让外设进入休眠ResumeAndroid 休眠(suspend)涉及到的文件:特性介绍Early SuspendLate ResumeWake LockAndroid SuspendEarly SuspendLate ResumeWake LockSu

2011-03-23 15:38:00 3623

转载 从USB设备插上到驱动probe调用流程分析

原文地址:http://www.cublog.cn/u3/117158/showart_2278763.html将详细讲述2.6.22下的一个USB设备插上linux系统的PC后是如何一步一步调到我们的usb设备驱动的probe函数的, 我们知道我们的USB驱动的probe函数中的一个参数是interface结构, 因此一般来说,  一个USB设备中的任何一个接口都应该有对应的一个驱动程序,当然也有例外(如cdc-acm)./*driver/usb/core/hub.c*/:usb_hub_in

2011-03-23 15:18:00 2195

转载 Android上的bug定位(troubleshooting)

原文地址:http://swverification.blog.sohu.com/141315680.html对于android上的bug定位的文档很少,因为应用程序千差万别的,出现的问题也不尽相同,不过也是有规律可循,大的方向定位是可以做到的,我们对应用程上的问题可以得到相关的信息。    首先,要对Java的Throwable比较熟悉,因为Android上的应用和服务都是Java的代码,它的Error和Exception都是沿用Java的,比如Error有AssertionError,Vir

2011-03-23 14:11:00 1644

转载 android wifi 移植记录

<br />原文地址:http://blog.csdn.net/pottichu/archive/2010/06/24/5691896.aspx<br /> <br />我用的是 Ralink 的网卡,所以 wifi 网卡的名字是 ra0,  在网上看了一些文章,要改很多地方。<br />不就是个网卡名字问题吗? 我有 驱动源码, 就直接在源码里把名字改成 mlan0 就得了。<br />在源码中找到注册网卡的 register_netdev 或者 register_netdevice 函数,直接在注册

2011-03-10 17:47:00 850

转载 wpa_supplicant 的初始化

<br />原文地址:http://blog.csdn.net/wyl123/archive/2009/10/18/4692617.aspx<br /> <br />1. 启动命令<br />wpa supplicant 在启动时,启动命令可以带有很多参数,目前我们的启动命令如下:<br />wpa_supplicant /system/bin/wpa_supplicant -Dwext -ieth0 -c/data/wifi/wpa_supplicant.conf -f/data/wifi/wpa

2011-03-10 17:45:00 454

转载 触摸屏驱动程序分析

<br />原文地址:http://www.cnblogs.com/wangtianxj/archive/2009/05/10/1453817.html<br /> <br />//*******************************************************<br />//* 触摸屏驱动程序分析<br />//*******************************************************<br />//触摸屏驱动程序文件在/ker

2011-03-08 14:47:00 942

转载 Android深入浅出之Zygote

一目的zygote,是Android搞出来的一个东西。网上讲这个的也非常多。第一次看到这个名字我就挺郁闷,想干嘛这是?Linux下名字都取得挺通俗易懂,深得人心。zygote?不就想模仿Linux下的fork吗?个人觉得Google取名字挺怪,包括Google本身。不管怎样,Zygote依然是Android系统的核心,zygote是受精卵的意思,可以认为是Android framework大家族的祖先!我们本节的目的是描述下zygote的来龙去脉,顺便揭露下它的短处,以后大家可以对症下药,变异一个更加优良的

2011-03-08 14:33:00 588

转载 android java代码的启动:app_process

原文地址:http://blog.csdn.net/chief1985/archive/2009/09/14/4551255.aspx在android上,如果你直接用dalivik去加载framework.jar,你会发现里面的大部分native方法无法使用。同时,在/init.rc里面,你也找不到dalvikvm。在ps列表,也没有dalvikvm。那android是怎么启动java程序的呢?在android上,java程序是通过app_process启动的。在/init.rc里面,有如下一段代码:s

2011-03-08 14:29:00 1033

转载 Android 应用程序之间数据共享—ContentProvider

<br />原文地址:http://www.moandroid.com/?p=157<br /> <br />在Android 应用程序之间数据共享—-ContentResolver中,已经说明了Android是如何实现应用程序之间数据共享的,并详细解析了如何获取其他应用程序共享的数据。ContentProviders存储和检索数据,通过它可以让所有的应用程序访问到,这也是应用程序之间唯一共享数据的方法。那么如何将应用程序的数据暴露出去?<br />通过以前文章的学习,知道ContentReso

2011-03-08 14:22:00 1048 1

转载 Android 应用程序之间数据共享—ContentResolver

<br />原文地址:http://www.moandroid.com/?p=122<br /> <br />Android是如何实现应用程序之间数据共享的?一个应用程序可以将自己的数据完全暴露出去,外界更本看不到,也不用看到这个应用程序暴露的数据是如何存储的,或者是使用数据库还是使用文件,还是通过网上获得,这些一切都不重要,重要的是外界可以通过这一套标准及统一的接口和这个程序里的数据打交道,例如:添加(insert)、删除(delete)、查询(query)、修改(update),当然需要一定的权

2011-03-08 14:19:00 585

空空如也

空空如也

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

TA关注的人

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