![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
文章平均质量分 54
嘭噗
玩归玩,闹归闹,别拿工资开玩笑
展开
-
为什么HAL module名必须是HAL_MODULE_INFO_SYM
Hal层的库文件是怎么被上层调用的?上层调用时的入口(相当于main)又是什么呢?它就是HAL_MODULE_INFO_SYM。下gps.default.so库为例子,上层gpstest.apk打开后,会在/system/lib/hw/下面寻找gps.default.so(也可能是gps.$(platform).so)的这个库,gps.defualt.so的入口就是HAL_MODULE_INFO_SYM, 从此再去调用hal层里的open,init,write,read等接口,hal再通过这个接口去设备结点原创 2021-04-18 13:20:47 · 2028 阅读 · 0 评论 -
HAL例程
1、简单的HAL最小驱动,用于熟悉架构(1)hal_test.h#ifndef HAL_TEST_H#define HAL_TEST_H#include <hardware/hardware.h>#include <hardware/fb.h>__BEGIN_DECLS //C与c++兼容的宏定义#define HAL_TEST_HARDWARE_MODULE_ID "HAL_TEST" /原创 2021-04-18 13:18:55 · 398 阅读 · 0 评论 -
HAL框架
HAL框架当我们需要为这些设备编写HAL层代码时,必须严格按照Google定义的标准接口去实现,否则将导致设备无法在Android Framework下正常工作。1、321架构 (包含了三个结构体和两个常量,和一个函数。)HAL的模块接口在android\hardware\libhardware\include\hardware\hardware.h中android\hardware\libhardware\hardware.c模块与驱动#define HARDWARE_MODULE_TAG M原创 2021-04-18 13:15:32 · 349 阅读 · 0 评论