发布时间:2013-08-27 11:24:09
广义上的中断可以分为外部中断和内部中断(异常)中断是由外部事件引起的,一般分为可屏蔽的中断与非可屏蔽的中断,所谓可屏蔽就是可以通过设置CPU的IF标志位进行屏蔽,而非可屏蔽的是一些非常紧急的事件,往往IF对其不起作用。异常是由于内部事件造成的,比如说缺页异常,系统调用等 .........【阅读全文】
发布时间:2013-07-08 12:26:01
????版本的linux2.6内核中已经把kgdb集成到内核中了,但是若想在s3c2440平台上使用kgdb还需对内核做一些修改。下面我们就来分析一下如何修改内核使kgdb可用。????在drivers/serial/kgdboc.c文件中有一行代码module_init(init_kgdboc),所以在内核启动的时候会调用init_k.........【阅读全文】
发布时间:2013-02-25 16:59:06
版本的linux2.6内核中已经把kgdb集成到内核中了,但是若想在s3c2440平台上使用kgdb还需对内核做一些修改。下面我们就来分析一下如何修改内核使kgdb可用。 在drivers/serial/kgdboc.c文件中有一行代码module_init(init_kgdboc),所以在内核启动的时候会调用init_k.........【阅读全文】
发布时间:2013-01-11 15:18:08
从MACHINE_START开始
注:下面的内容是以linux-2.6.38和mini6410为例进行学习的。
玩过或者移植过arm-linux的都应该知道在/arch/arm目录下有许多与具体处理器相关的目录,当然对于6410的话所对应的目录就是mach-s3c64xx,在里面找到与具体板子相关的文件mach-mini6410.c,没错,就是它。无论是出于想移植到新的内核还是出于想深入学习某一款arm等,对这个文件的学习是必不可少的。这个文件大部分内容是对平台设备(例如串口,LCD,N......【阅读全文】
发布时间:2012-12-22 17:52:13
Linux下spi驱动开发(1)
一、概述
基于子系统去开发驱动程序已经是linux内核中普遍的做法了。前面写过基于I2C子系统的驱动开发。本文介绍另外一种常用总线SPI的开发方法。SPI子系统的开发和I2C有很多的相似性,大家可以对比学习。本主题分为两个部分叙述,第一部分介绍基于SPI子系统开发的理论框架;第二部分以华清远见教学平台FS_S5PC100上的M25P10芯片为例(内核版本2.6.29),编写一个SPI驱动程序实例。
二、SPI总线协议简介
介绍驱动开发前,需要先熟悉下SPI通讯协议中的几个关键的地方,后面在编写驱动时,需要考虑相关因素。
SPI总线由MISO(串行......【阅读全文】