一.sdhci-pltfm说明 sdhci-pltfm并不是实际某个host的driver. sdhci-pltfm是指在sdhci core的基础上,提供了统一对sdhci_host的必要属性进行解析和设置的方法. 但是,对于sdhci类的host driver来说,使用sdhci-pltfm并不是必须的,host driver也可以自己来实现对应的操作. 通过<host(第二章)--sdhci>,我们知道了host driver调用sdhci_add_host注册sdhci_host的之前…
[HeadFrist-HTMLCSS学习笔记]第三章构建模块:Web页面建设 敲黑板!! <q>元素添加短引用,<blockquote>添加长引用 在段落里添加引用就使用<q> 自成一段的引用就使用<blockquote> 不是所有浏览器都有相同的显示 块元素<block> <h1><h2>···<h6>和<blockquote>均是块元素 每个块元素都单独显示(分块显示) 内联元素<inli…
零.说明(重要,需要先搞清楚概念有助于后面的理解) 1.mmc core card相关模块为对应card实现相应的操作,包括初始化操作.以及对应的总线操作集合.负责和对应card协议层相关的东西. 这里先学习mmc type card.后续再学习sd type card. 对应代码: drivers/mmc/core/mmc.c(提供接口), drivers/mmc/core/mmc-ops.c(提供和mmc type card协议相关的操作), drivers/mmc/core/mmc-ops…
一.说明 1.mmc core概述 mmc core主模块是mmc core的实现核心.也是本章的重点内容. 对应代码位置drivers/mmc/core/core.c. 其主要负责如下功能: mmc core初始化,包括注册mmc bus.mm host class等等 mmc host的管理和维护,包括为其他模块提供mmc_host的操作接口,如下 host的启动和停止 host的占用和释放 host电源状态的保存和恢复 host总线操作集的绑定和解绑 host上卡状态检测 为其他模块提供m…
一.说明 sdhci-msm是指高通的mmc host,其使用了标准SDHC标准.故可以使用前面说的<host(第二章)--sdhci>和<host(第三章)--sdhci-pltfm说明>的接口. 后续代码以msm8916平台的host实现以及linux 4.6.0版本中的sdhci-msm的实现为例,这部分代码都是开源的. 由于有一些寄存器内容需要文档的支撑但我们并没有,所以这里只是简单地介绍一下设计思想和代码结构. 二.dtsi节点 msm8916有两个sdhci host,…
零.说明 对应代码drivers/mmc/core/bus.c. 抽象出虚拟mmc bus,实现mmc bus的操作. 一.API总览 1.mmc bus相关 mmc_register_bus & mmc_unregister_bus 用于注册和卸载mmc bus(虚拟mmc总线)到设备驱动模型中. 原型:int mmc_register_bus(void) 原型:void mmc_unregister_bus(void) 2.mmc driver相关 mmc_alloc_card & m…
零.说明 对应代码drivers/mmc/core/host.c,drivers/mmc/core/host.h. 为底层host controller driver实现mmc host的申请以及注册的API等等,以及host相关属性的实现. 一.API总览 1.mmc host分配.注册相关 mmc_alloc_host & mmc_free_host 底层host controller驱动调用,用来分配或者释放一个struct mmc_host结构体,将其于mmc_host_class关联,…
一.host相关 1.struct mmc_host struct mmc_host是mmc core由host controller抽象出来的结构体,用于代表一个mmc host控制器. 数据结构如下: struct mmc_host { struct device *parent; // 对应的host controller的device struct device class_dev; // mmc_host的device结构体,会挂在class/mmc_host下 int index;…
任何一门语言在大规模应用阶段,必然要经历拆分模块的过程.便于维护与团队协作,与java走的最近的dojo率先引入加载器,早期的加载器都是同步的,使用document.write与同步Ajax请求实现.后来dojo开始以JSONP的方法设计它的每个模块结构.以script节点为主体加载它的模块.这个就是目前主流的加载器方式. 不得不提的是,dojo的加载器与AMD规范的发明者都是james Burke,dojo加载器独立出来就是著名的require.本章将深入的理解加载器的原理. 1.AMD规范…
摘自:http://www.cnblogs.com/xdotnet/archive/2012/03/07/aspnet_mvc40_validate.html 了解了这些就可以对MVC进一步认识,相信很多人都对MVC中三个模块有一定的认识.今天我们主要来看一下Models模块,这个和我们三层里用的 实体类有点相似,不同的是这里的属性需要添加一些验证属性(Attribute)或其他的一些Filter(过滤器).在MVC中验证属性主要包含在 System.ComponentModel.DataAnn…