Lines Matching refs:PIN

1 # PIN  chapter
7 PIN即管脚控制器,用于统一管理各SoC的管脚资源,对外提供管脚复用功能。
11 PIN是一个软件层面的概念,目的是为了统一对各SoC的PIN管脚进行管理,对外提供管脚复用功能,配置PIN管脚的电气特性。
23 …源。相反,采用统一服务模式可以使用一个设备服务作为管理器,统一处理所有同类型对象的外部访问(这会在配置文件中有所体现),实现便捷管理和节约资源的目的。PIN模块接口适配模式采用统一服务模式(如图1…
27 PIN模块各分层作用:
29 - 接口层提供获取PIN管脚、设置PIN管脚推拉方式、获取PIN管脚推拉方式、设置PIN管脚推拉强度、获取PIN管脚推拉强度、设置PIN管脚功能、获取PIN管脚功能、释放PIN管脚的接口。
31 - 核心层主要提供PIN管脚资源匹配,PIN管脚控制器的添加、移除以及管理的能力,通过钩子函数与适配层交互。
41 PIN模块目前只支持小型系统LiteOS-A内核。
47 PIN模块主要用于管脚资源管理。在各SoC对接HDF框架时,需要来适配PIN驱动。下文将介绍如何进行PIN驱动适配。
51 为了保证上层在调用PIN接口时能够正确的操作PIN管脚,核心层在//drivers/hdf_core/framework/support/platform/include/pin/pin_core.…
70 | SetPinPull | cntlr:结构体指针,核心层PIN控制器<br>index:uint32_t类型变量,管脚索引号<br/>pullType:枚举常量,PIN管脚推拉方式 | 无 |H…
71 | GetPinPull | cntlr:结构体指针,核心层PIN控制器<br/>index:uint32_t类型变量,管脚索引号 | pullType:枚举常量指针,传出获取的PIN管脚推拉方式 …
72 …PinStrength | cntlr:结构体指针,核心层PIN控制器<br/>index:uint32_t类型变量,管脚索引号<br/>strength:uint32_t变量,PIN推拉强度 |…
73 …PinStrength | cntlr:结构体指针,核心层PIN控制器<br/>index:uint32_t类型变量,管脚索引号 | strength:uint32_t变量指针,传出获取的PIN推…
74 … SetPinFunc | cntlr:结构体指针,核心层PIN控制器<br/>index:uint32_t类型变量,管脚索引号<br/>funcName:char指针常量,传入PIN管脚功能 |…
75 | GetPinFunc | cntlr:结构体指针,核心层PIN控制器<br/>index:uint32_t类型变量,管脚索引号 | funcName:char双重指针常量,传出获取的PIN管脚功…
79 PIN模块适配HDF框架包含以下四个步骤:
85 - 实例化PIN控制器对象
99 PIN驱动入口开发参考:
104 .Bind = Hi35xxPinBind, // PIN不需要实现Bind,本例是一个空实现,驱动适配者可根据自身需要添加相关操作
105 .Init = Hi35xxPinInit, // 挂接PIN模块Init实例化
106 .Release = Hi35xxPinRelease, // 挂接PIN模块Release实例化
114 …完成驱动入口注册之后,需要在device_info.hcs文件中添加deviceNode信息,deviceNode信息与驱动入口注册相关。本例以两个PIN控制器为例,如有多个器件信息,则需要在de…
116 统一服务模式的特点是device_info.hcs文件中第一个设备节点必须为PIN管理器,其各项参数如表2所示:
122 | policy | 驱动服务发布的策略,PIN管理器具体配置为2,表示驱动对内核态和用户态都发布服务 |
123 | priority | 驱动启动优先级(0-200),值越大优先级越低。PIN管理器具体配置为8 |
124 | permission | 驱动创建设备节点权限,PIN管理器具体配置为0664 |
125 | moduleName | 驱动名称,PIN管理器固定为HDF_PLATFORM_PIN_MANAGER |
126 | serviceName | 驱动对外发布服务的名称,PIN管理器服务名设置为HDF_PLATFORM_PIN_MANAGER |
127 | deviceMatchAttr | 驱动私有数据匹配的关键字,PIN管理器没有使用,可忽略 |
140 device0 :: deviceNode { // 用于统一管理PIN并发布服务
147 … device1 :: deviceNode { // 为每一个PIN控制器配置一个HDF设备节点,存在多个时必须添加,否则不用。
161 …...... // 如果存在多个PIN控制器时【必须】添加节点,否则不用 …
177 number = 0; // 【必要】PIN控制器号
208 … ...... // 每个管脚控制器对应一个控制器节点,如存在多个PIN控制器,请依次添加对应的控制器节点。
220 3. 实例化PIN控制器对象
265 // PIN管脚控制器初始化
363 初始化自定义结构体对象和PinCntlr成员,并通过调用核心层PinCntlrAdd函数挂载PIN控制器。
491 【可选】针对新增驱动程序,建议验证驱动基本功能,例如挂载后的信息反馈,PIN管脚设置推拉方式、推拉强度等。