- 博客(23)
- 收藏
- 关注
翻译 Linux设备树中文手册
3 设备节点要求3.1 基本设备节点类型接下来的部分指定了5中所需要的设备节点的基本集的需求所有设备树有一个根节点,并且在根节点下面必须列出如下节点:一个cpus节点至少一个内存节点3.2 根节点每个设备树有一个根节点,其他的设备节点是子节点。完整的根节点是 /3.3 aliases(别名)节点设备树可能有一个 aliases 节
2017-08-19 12:04:54 1471
原创 各种下载地址(持续更新)
uboot源码下载地址===============================================http://ftp.denx.de/pub/u-boot/
2017-08-18 10:09:55 1183
原创 Qt ,Qtcreator的下载地址和QT./configure参考地址
http://download.qt.io/official_releases/这个网址比较全……
2017-08-03 14:27:16 395
原创 list_for_each_entry(pos, head, member)的内幕
list_for_each_entry(pos, head, member)是一个遍历链表的操作,但是从中涉及到的小函数很多,想要彻底高清除,需要下一点功夫。下面一步一步的分解该宏定义。抽丝剥茧的看看这个宏定义到底最后定义成什么了。#define list_for_each_entry(pos, head, member) \ for (pos = list_entry((head
2017-08-01 11:34:41 1026
原创 struct class
/** * struct class - 设备类 * @name: 类名称 * @owner: 模型拥有者 * @class_attrs:此类的默认属性 * @dev_attrs: 属于此类的设备默认属性 * @dev_bin_attrs: 属于此类的设备默认二进制属性 * @dev_kobj: 代表此类的kobj并且连接它到等级层次 * @dev_uevent: 设备从此类添加或
2017-07-30 14:51:22 221
原创 struct device
/** * struct device -基本设备结构体 * @parent:设备的父设备,设备之间是联系到一起的。大部分情况下,父设备会是一个 总线或者主机控制器,如果父设备是空,此设备就是顶端设备,通常情况 下这是你不想要的情况 * @p:存储了关于设备的驱动核心部分的私有数据,详细内容可查看device_private * @kobj: 一种最高等级的抽象类,用于派生其他
2017-07-29 20:12:57 1590
转载 打包项目。删除.git
//删除文件夹下的所有 .svn 文件 find . -name ".svn"| xargs rm -Rf //删除文件夹下的所有 .git 文件 find . -name ".git"| xargs rm -Rf
2017-07-29 15:16:22 662
原创 struct struct
/** *struct subsys_private-这个结构体用来存储驱动核心部分的私有数据(bus_type和calss strcuture) * @subsys - 用来定义子系统的kset的结构体 * @devices_kset - 子系统的设备目录 * @interfaces - 子系统接口的关联的链表 * @mutex - 保护设备和接口链表 * @drivers_kset
2017-07-26 20:20:31 1069 1
原创 交叉编译helloword模块
能用的交叉编译模块Makefile,注意不是空格,是Tab键ifneq ($(KERNELRELEASE),) obj-m := helloword.oelseKERNELDIR :=/home/t/ti-sdk-am335x-evm-07.00.00.00/board-support/linux-3.12.10-ti2013.12.01PWD := $(shell pwd)CROSS_
2017-07-26 18:48:14 612
原创 struct device_driver
/** * struct device_driver - The basic device driver structure * @name: Name of the device driver. 驱动名称 * @bus: The bus which the device of this driver belongs to. 设备的驱动属于哪种总线 * @owner: The modu
2017-07-25 19:07:50 868
原创 struct bus_type
总线的结构体/** * struct bus_type - The bus type of the device * * @name: 总线的名称 * @dev_name: ("foo%u", dev->id).用于枚举设备如("foo%u", dev->id) * @dev_root: 用于父设备的默认设备 * @bus_attrs: bus的缺省属性 * @dev_attrs:
2017-07-25 19:02:29 467
原创 struct usb_driver
/** * struct usb_driver - identifies USB interface driver to usbcore struct usb_driver -确认到usbcore的接口驱动 * @name: The driver name should be unique among USB drivers, * and should normally be the s
2017-07-25 17:07:09 831
原创 linux3.* 内核的__setup函数
在内核代码中经常会看到__setup函数,这个函数从哪来,到哪去?下面我们逐一分析例如在I2C驱动中就有这么一个setup函数:__setup("i2c_bus=", omap_i2c_bus_setup);我们先要直到它是从哪来的:看如下代码:#define __setup_param(str, unique_id, fn, early) \ static const ch
2017-07-25 14:02:13 767 1
转载 USB 2.0 协议
一、USB硬件介绍1.1、概述 一条USB传输线分别由地线、电源线、D+和D-四条线构成,D+和D-是差分输入线,它使用的是3.3V的电压(与CMOS的5V电平不同),而电源线和地线可向设备提供5V电压,最大电流为500mA(可以在编程中设置)。 USB设备可以直接和HOST通信,或者通过Hub和Host通信。一个USB系统中仅有一个USB 主机,设备包括USB功能设
2017-07-25 09:58:18 686
翻译 exynos4412中文手册(32章)USB2.0 Device
32.1 USB 2.0设备概述三星USB 2.0 控制器被设置成协助快速启用USB 2.0外设。它支持高速(480Mbps)和全速(12Mbps)传输,使用标准的UTMI接口和AHB接口,USB 2.0 控制器能支持可编程中断,批量,等时的16位端点传输模式。32.2 USB 2.0设备关键特性USB 2.0 设备特性包括:遵从USB 2.0 规格(1.0a版本)操作高速
2017-07-24 18:37:08 2644
翻译 exynos4412中文手册(31章)USB2.0 Host Controller
31.1概述Exynos4412 SCP支持三路USB主接口,接口的关键特性如下:遵从EHCI1.0a版本和OHCI1.0版本(两者都兼容)遵从USB2.0规格遵从USB1.0规格遵从UTMI,1.05版本,或者UTMI+3,1.0版本遵从HSIC,1.0版本支持高速(480Mbps)外设支持电源管理特性,像: ---全部暂停/功能恢复,包括远程唤醒 ---主机
2017-07-24 18:09:46 971
转载 ARRAY_SIZE含义
在写驱动时,看到ARRAY_SIZE这个宏,是求设备结构体中设备的个数。 追其实现,在linux/kernel.h中,发现 #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) 其中__must_be_array(arr))作用:宏定义防止被误用,比如用在指针而不是数组上。
2017-07-22 17:24:17 12886 1
原创 exynos4412中文手册(6章)
这张描述了GPIO6.1总览Exynos4412 SCP 包含304个多功能输入输出端口和164个存储端口。有37组通用端口和两组存储端口。他们是:GPA0,GPA1:14个输入/输出端口---3路流控制UART,没有流控制的UART,和或者2路I2CGPB:8路输入/输出端口---2路SPI和或者2路I2C和或者IEMGPC0,GPC1:10路输入/输出端口---两路I2S,
2017-07-22 14:54:48 4573
转载 Linux内核态 用户态
一、 Unix/Linux的体系架构 如上图所示,从宏观上来看,Linux操作系统的体系架构分为用户态和内核态(或者用户空间和内核)。内核从本质上看是一种软件——控制计算机的硬件资源,并提供上层应用程序运行的环境。用户态即上层应用程序的活动空间,应用程序的执行必须依托于内核提供的资源,包括CPU资源、存储资源、I/O资源等。为了使上层应用能够访问到这些资源,内核必须为上层应用提供
2017-07-20 10:33:44 235
原创 Openssh7.5移植
1.下载源码从以下三个网站下载源码从https://www.openssl.org/source/下载openssl-1.0.2l.tar.gz从http://www.zlib.net/下载zlib 1.2.11从http://www.openssh.com/portable.html下载openssh-7.5p1.tar.gz2.交叉编译zlib解压zlib文
2017-07-13 15:42:01 402
原创 exynos4412中文手册(9.3节)
9.3 功能概述这个章节包括:功能接口分配器CPU 接口9.3.1 功能接口图所示显示了GIC图解图2列举出了所有的信号,但是一些GIC的配置也学不包含这些信号GIC的主要模块包括:AMBA从接口分配器CPU接口时钟复位使能和匹配信号9.3.1.1 AMBA从接口AMBA从接口提供了访问GIC寄存器,这些寄存器能使你编程系统配
2017-07-04 08:43:16 5257
原创 exynos4412中文手册(9.2节)
9.2中断源这个章节包括:中断源连接GIC中断表9.2.1 中断源控制如图列举了中断源的控制GIC中断源通过INT_COMBINER模块,该模块用来为GIC连接中断源9.2.2 GIC中断表包括软件中断 (SGIs[15:0], ID[15:0])在内,一共160个中断,私有外设中断(PPIs[15:0], ID[31:16])和共享外设中断 (SPIs
2017-07-03 08:38:13 692
原创 exynos4412中文手册(9.1节)
9.1 综述GIC(一般中断控制)是在系统中支持和管理中断的集中资源。GIC提供:管理中断源,中断工作方式,多处理器中断路由选择的寄存器支持ARM架构安全扩展从硬件中断源使能、禁止使能、产生处理器中断产生软件中断中断屏蔽功能和优先级处理功能GIC在系统级声明中断并且发送适当的信号到每一个级联的处理器,当GIC执行安全扩展,他能执行两种中断请求,架构声明这两种请求为I
2017-06-29 11:29:16 2175
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人