自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Tracy Mcgrady的专栏

冰山一角。

  • 博客(11)
  • 资源 (16)
  • 收藏
  • 关注

原创 工作队列(workqueue)

内核版本:Linux-2.6.32.2工作队列类似于tasklet,它允许内核代码请求某个函数在将来被执行(不是立即执行)。工作队列相关API定义在中。要使用工作队列有两种方式,一是自己创建一个工作队列;二是使用内核提供的工作队列(共享方式)。一、我们先来看自己创建工作队列的方式工作队列使用结构体struct workqueue_struct描述,要创建一个工作

2014-12-30 13:38:04 3627

转载 Device Tree Usage

Device Tree UsageQuality page [view draft]  (+/-) This page walks through how to write a device tree for a new machine. It is intended to provide an overview of d

2014-12-27 16:49:47 977

原创 mtk如何新增一个摄像头

平台:mt6582 + android 4.41. 定义sensor id和sensor name(mediatek/custom/common/kernel/imgsensor/inc/kd_imgsensor.h)#define GC2155MIPI_SENSOR_ID 0x2155#define SENSOR_DRVNAME_GC2155_MIPI_YUV "gc2155mipiyu

2014-12-23 16:27:02 4841 3

转载 Device Tree(三):代码分析

一、前言Device Tree总共有三篇,分别是:1、为何要引入Device Tree,这个机制是用来解决什么问题的?(请参考引入Device Tree的原因)2、Device Tree的基础概念(请参考DT基础概念)3、ARM linux中和Device Tree相关的代码分析(这是本文的主题)本文主要内容是:以Device Tree相关的数据流分析为索引

2014-12-22 14:56:34 952

转载 Device Tree(二):基本概念

一、前言一些背景知识(例如:为何要引入Device Tree,这个机制是用来解决什么问题的)请参考引入Device Tree的原因,本文主要是介绍Device Tree的基础概念。简单的说,如果要使用Device Tree,首先用户要了解自己的硬件配置和系统运行参数,并把这些信息组织成Device Tree source file。通过DTC(Device Tree Compile

2014-12-22 14:55:14 938

转载 Device Tree(一):背景介绍

一、前言作为一个多年耕耘在linux 2.6.23内核的开发者,各个不同项目中各种不同周边外设驱动的开发以及各种琐碎的、扯皮的俗务占据了大部分的时间。当有机会下载3.14的内核并准备学习的时候,突然发现linux kernel对于我似乎变得非常的陌生了,各种新的机制,各种framework、各种新的概念让我感到阅读内核代码变得举步维艰。 还好,剖析内核的热情还在,剩下的就交给时间的。首先进

2014-12-22 14:31:12 910

原创 mtk 串口读取uart log

平台:mt6582 + android 4.4mtk通过串口连接机器读取uart log信息,但是在系统启动完成之后在uart log中会出现这样的信息:>通过搜索在kernel/kernel/printk.c中的mt_disable_uart函数打印出来的。#ifdef CONFIG_MT_PRINTK_UART_CONSOLE

2014-12-19 19:58:43 12593 1

原创 Linux-0.11 内核定时器

Linux-0.11中的内核定时器它是一个软定时器,还是由jiffies来实现的,最多同时可支持64个内核定时器,内核定时器数据结构定义如下:#define TIME_REQUESTS 64static struct timer_list { long jiffies; void (*fn)(); struct timer_list * next;} timer_list[TIME_R

2014-12-11 16:18:00 1137 1

原创 Linux-0.11 任务调度

首先是定时器的初始化,在Linux-0.11版本中,使用的是8253/8254中的定时器0,初始化部分代码如下:void sched_init(void){ /* ... */ outb_p(0x36,0x43); /* binary, mode 3, LSB/MSB, ch 0 */ outb_p(LATCH & 0xff , 0x40); /* LSB */ outb(LATCH

2014-12-11 10:42:23 2033 1

原创 Linux-0.11 kernel_mktime函数分析

kernel_mktime函数在kernel/mktime.c文件中,代码如下:/* * linux/kernel/mktime.c * * (C) 1991 Linus Torvalds */#include /* * This isn't the library routine, it is only used in the kernel. * as such, we

2014-12-09 19:58:40 1427

原创 关于闰年

我们知道,地球绕太阳公转一周为一回归年,而一回归年大约为365.24220日,故此在公历中规定一年为365日(平年),但是4年之后相差0.24220*4=0.9688日,大约为一日,所以又规定,每四年增加一日来抵消这0.9688日(闰年),增加的这一日是放在二月中的,所以二月便有28日(平年)和29日(闰年)这两种情况。但是依照这样的计算来看百年之后将累计成365*100+25=36525日,比实

2014-12-02 15:02:23 1041

ubox gps协议

本文档是ubox gps协议的详细介绍,在于对nmea语句的了解。

2016-01-18

hx8389b datasheet

hx8389b datasheet,方便做mipi开发的朋友们。

2015-01-05

J-Flash s3c2440的配置文件

用于J-Link J-Flash的2440配置文件,可用于mini2440 micro2440等开发板。

2014-07-05

led.tar.gz

sdcc使用Makefile的led工程实例

2014-01-13

sdcc-3.3.0-i386-unknown-linux2.5.tar.bz2

sdccc Linux x86二进制包。

2014-01-02

u-boot nor flash驱动

u-boot的完整nor flash驱动,nor flash型号为sst39vf1601。

2012-06-01

64-ia-32-architectures-software-developer

Intel处理器软件开发参考手册,对于理解Intel体系架构,以及汇编程序编程都有帮助

2011-12-02

Linux汇编教程

Linux下AT&T语法汇编教程,讲AT&T语法汇编比较少,讲的好的就更少了

2011-11-29

AT&T语法汇编教程

Linux下AT&T语法汇编程序教程,将AT&T语法书比较少,好的书就更少了

2011-11-28

深入理解计算机系统

以程序员角度理解计算机系统知识,适用于那些想要写出更快、更可靠程序的程序员。

2011-11-28

QT编程艺术

QT编程艺术,个人觉得比较好的QT编程书籍

2011-11-20

空空如也

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

TA关注的人

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