大家好,借贵宝地盖盖楼,呵呵。
本人写了大量的omap3 kernel的注释包括电源管理以及各个模块的核心实现以及驱动,现在想整理成书,各方面资料准备基本完成,开始写的话应该2个月左右能完场。感兴趣的请回复。盖楼到100就开始写。谢谢。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
天天加班,怎么会闲呢,这可是多少年的积累呀。总要给自己个总结吧。呵呵
已经向出版社提交书的内容部分,还差前言和内容简介。争取这周交稿。
第1章 引言
1.1 为什么要从硬件设备的角度看Linux 内核
1.2 从了解硬件开始
1.2.1 最小系统
1.2.2 完整设备介绍
1.2.3 电源管理相关基础
1.3 从设备看内核应该满足的需求
1.4 所涉及的重要概念
1.5 小结
第2章 TI应用处理器芯片及其内核特点
2.1 DM3730微处理器
2.1.1 DM3730微处理器框架
2.1.2 DM3730微处理器特性
2.1.3 DM3730微处理器电源管理相关设计
2.2 DM81XX系列微处理器
2.2.1 DM81XX系列微处理器框架
2.2.2 DM81XX系列微处理器特性
2.2.3 DM81XX系列微处理器电源管理相关设计
2.3 Sitara系列芯片
2.3.1 Sitara系列芯片框架
2.3.2 Sitara系列芯片特性
2.3.3 Sitara系列芯片电源管理相关设计
2.4 TI处理器内核特殊代码结构
2.5 小结
第3章 Linux 内核框架探究
3.1 内核框架概述
3.1.1 Linux内核的层次分析
3.1.2 Linux内核模块间关联
3.2 需求探究
3.2.1 对内核核心的需求探究
3.2.2 对设备管理的需求探究
3.3 按需求的设备分类
3.3.1 功能型设备族
3.3.2 总线型设备族
3.4 系统实现各种无关性的框架
3.4.1 体系结构无关
3.4.2 功能型设备的框架与总线无关
3.4.3 总线控制器与总线设备的无关
3.4.4 设备属性和设备操作无关
3.4.5 策略和机制无关
3.6 内核提供的基本服务和接口简介
3.6.1 基本数据类型
3.6.2 基本原子操作
3.6.3 延时 调度 定时器相关
3.6.4 锁操作
3.6.5 抢占和屏障
3.7 小结
第4章 内核核心介绍及硬件的具体实现
4.1 内核初始化
4.1.1 内核初始化的基本需求
4.1.2 内核初始化框架介绍
4.1.3 TI芯片内核初始化相关实现详解
4.2 地址映射
4.2.1 地址映射的基本需求
4.2.2 地址映射框架介绍
4.2.3 TI芯片地址映射相关实现详解
4.3 中断处理
4.3.1 中断的基本需求
4.3.2 中断处理框架介绍
4.3.3 TI芯片中断处理相关实现详解
4.4 内存管理
4.4.1 内存管理的基本需求
4.4.2 内存管理框架介绍
4.4.3 TI芯片内存管理相关实现详解
4.5 直接存储器访问单元(DMA)
4.5.1 DMA使用和管理基本需求
4.5.2 DMA使用和管理框架介绍
4.5.3 TI芯片DMA使用和管理相关实现详解
4.6 时钟(Clock)
4.6.1 Clock管理基本需求
4.6.2 Clock管理框架介绍
4.6.3 TI芯片Clock管理相关实现详解
4.7 时间管理(Time)
4.7.1 时间管理基本需求
4.7.2 时间管理框架介绍
4.7.3 TI芯片时间管理相关实现详解
4.8 通用目的输入输出(GPIO)
4.8.1 GPIO管理基本需求
4.8.2 GPIO管理框架介绍
4.8.3 TI芯片GPIO管理相关实现详解
4.9 管脚复用(Pin Mux)
4.9.1 管脚复用的基本需求
4.9.2 管脚复用框架介绍
4.9.3 TI芯片管脚复用相关实现详解
4.10 小结
第5章 内核设备管理以及驱动基础框架
5.1 VFS及其与设备的关联
5.1.1 VFS框架
5.1.2 VFS与设备关联
5.2 Linux设备模型(Linux Device Model)
5.2.1 设备模型的需求及基本设计
5.2.2 总线(Bus)
5.2.3 驱动(Driver)
5.2.4 设备(Devices)
5.2.5 功能类(Class)
5.2.6 设备资源管理(Device Resource)
5.3 字符设备(Char Device)
5.3.1 字符设备的特点和需求
5.3.2 字符设备的核心数据结构及操作
5.3.3 字符设备子类型
5.4 块设备(Block Device)
5.4.1 块设备特点和需求
5.4.2 块设备核心数据结构及操作
5.4.3 块设备子类型
5.5 电源管理
5.5.1 电源管理特点和需求
5.5.2 电源管理核心框架介绍
5.6 内核提供的同步操作、异步事件与单独执行实体的服务
5.6.1 同步操作服务
5.6.2 异步事件
5.6.3 单独执行实体服务
5.7 内核提供的数据保护一致性操作服务
5.7.1 数据保护一致性操作服务的需求
5.7.2 各种数据保护一致性操作简介
5.8 小结
第6章 设备驱动之功能型驱动
6.1 输入设备(Input)
6.1.1 输入设备需求
6.1.2 输入设备框架解析
6.1.3 输入设备应用层操作及框架适配
6.1.4 TI芯片输入设备相关实现详解
6.1.5 输入设备电源管理相关说明
6.2 帧缓冲(Frame Buffer)
6.2.1 帧缓冲设备需求
6.2.2 帧缓冲框架解析
6.2.3 帧缓冲应用层操作及框架适配
6.2.4 TI芯片帧缓冲驱动相关实现详解
6.2.5 帧缓冲驱动电源管理相关说明
6.3 音频设备(Audio ALSA)
6.3.1 音频设备需求
6.3.2 音频驱动框架解析
6.3.3 音频驱动应用层操作及框架适配
6.3.4 TI芯片音频驱动相关实现详解
6.3.5 音频驱动电源管理相关说明
6.4 视频驱动(V4L2)
6.4.1 视频驱动需求
6.4.2 视频驱动框架解析
6.4.3 视频驱动应用层操作及框架适配
6.4.4 TI芯片视频驱动相关实现详解
6.4.5 视频驱动电源管理相关说明
6.5 小结
第7章 设备驱动之总线型驱动
7.1 内部集成电路总线(I2C)
7.1.1 I2C总线驱动需求
7.1.2 I2C总线驱动框架解析
7.1.3 TI芯片I2C总线驱动相关实现详解
7.1.4 I2C总线驱动电源管理相关说明
7.2 串行外设接口总线(SPI)
7.2.1 SPI总线驱动需求
7.2.2 SPI总线驱动框架解析
7.2.3 TI芯片SPI总线驱动相关实现详解
7.2.4 SPI总线驱动电源管理相关说明
7.3 多媒体卡(MMC)
7.3.1 MMC需求
7.3.2 MMC框架解析
7.3.3 TI芯片MMC相关实现详解
7.3.4 MMC电源管理相关说明
7.4 通用串行总线(USB)
7.4.1 USB总线驱动需求
7.4.2 USB总线驱动框架解析
7.4.3 TI芯片USB总线驱动相关实现详解
7.4.4 USB总线驱动电源管理相关说明
7.5 小结
第8章 设备驱动之SoC特殊驱动
8.1 SoC电源管理核心技术详解
8.1.1 SoC电源管理需求
8.1.2 TI芯片SoC电源管理相关实现详解
8.2 小结
在问出版社,有消息会随时更新。
希望大家读了之后能对内核有全新的认识。
本来是计划要写的,但是由于整本书篇幅的限制将这部分去掉了,主要是由于dsplink已经过时,syslink又过于厚重。新的架构rpmsg还是不错的,但还没有仔细看过,所以不方便直接写;另外由于整体上多core间的通信涉及不同的操作系统,要详细说明会跨系统,本书是介绍Linux内核的,所以就将这部分移除。
个人认为,这部分对于技术上并不是核心,属于底层的基础功能,和芯片的实际使用关系较小。大家应该把重心放在iommu的使用上,这是芯片框架的趋势,也会保证不同系统统一的内存视角。
由于篇幅Iommu并没有展开讲,但是可以通过映射部分的介绍了解思想,另外视频部分在所介绍的isp的实际代码中有使用。
对于多核的通信原理都是一致的,依靠硬件或者软件,在总线级别保证单个变量的同步,从而保证整个多核系统的同步,进而进行通讯。如果想了解的人多的话,会考虑后续加入rpmsg部分的分析。
嗯,说的有理,不过我倒觉得这块是基础,最近再看rpmsg,以前syslink的确如你所说太复杂,我也只是随便看了看,把大致框架看懂了。
方便的话给我发个邮件,多和你请教请教,嘿嘿。我的邮箱资料里有。
不好意思,我比较老土,还没有博客。大家可以把关心的内容发出来,会考虑开博。
Robin,这么好的平台大家都可以看到,我们就在这里交流如何?
Robin兄弟,这里有这么好的平台,我们可以在这里讨论,这样大家也可以看到,你说呢?
大家没有问题吗?现在工作白天不方便上网,只有晚上回来才方便看帖子.
谢谢Robin的建议.
在TI工作了7年,数字部分都做过了.对TI还是有感情的,写东西也会先放到论坛上来的.