1.添加驱动文件

路径:adsp_proc/ssc/sensors
此次项目路径:ADSP.VT.5.4.3/adsp_proc/ssc_driver/driver
注:driver为自己新建的目录,以传感器名字命名
把驱动文件放到该路劲下

驱动 stk3329b (光感)bmi26x  (A+G)以这两个为例子

2.添加编译

路径:adsp/ssc/chipset/por.py
此次项目路径:ADSP.VT.5.4.3/adsp_proc/ssc/chipset/divar/por.py
注:在por.py文件中添加驱动文件中build目录下.scons文件的名字
修改如下图

3.配置json文件

路径:LINUX/android/vendor/qcom/proprietarysensors-see/registry/config/bengal
注:不同平台放不同目录,需要跟平台确认。


注:这边I2c地址是根据IC数据手册进行了进制转换得到的
注:上文图片是此项目要配置的,下文是高通文档相关属性及配置根据需求配置

4.高通默认配置

路径:adsp_proc/core/settings/buses/i2c/config/agatti/i2c_devcfg.c

注:上文是此次项目修改,下文是高通文档的参考模板

5.部分sensor外挂电源

大部分sensor是pmic长供电,但是也有例外

注:在上文的json配置中以及编译脚本por.py中进行修改

6.遇到的问题

1.添加bmi26x的时候,编译报错,报错log显示island overflow ,问了高通之后把por. py文件中的一些不用的island flag注释掉就可以了。

2.添加bmi26x的时候,因为项目原理图上显示bmi26x用的是i3c协议,我没有怀疑bmi26x这个传感器本身是不是支持i3c,所以就把它配置成i3c,结果无法bring up成功,最后询问了厂商之后才知道,该传感器不支持i3c,只支持i2c和spi,根据原理图,最后把它配置成i2c后bring up 成功。

3.平台不同,代码目录也会有不少差异,一开始不知道驱动文件放在哪个目录下,导致无法注册成功,后来看了该平台传感器文档后才知道目录。

高通(QCOM)sensor bring up的更多相关文章

  1. android 6.0 高通平台sensor 工作机制及流程(原创)

    最近工作上有碰到sensor的相关问题,正好分析下其流程作个笔记. 这个笔记分三个部分: sensor硬件和驱动的工作机制 sensor 上层app如何使用 从驱动到上层app这中间的流程是如何 Se ...

  2. 高通平台sensor框架图【学习笔记】

  3. 高通 sensor 从native到HAL

    app注册传感器监听 Android Sensor Framework 的整体架构如下图所示: 前几篇sensor相关的文章介绍了sensor的hal的知识,以press_sensor实时显示气压坐标 ...

  4. 基础:高通bring up camera【转】

    本文转载自:http://blog.csdn.net/liwei16611/article/details/53056710 bring UP 需要做的工作   1.kernelspace senso ...

  5. 高通Camera bring up软件流程【转】

    本文转载自:http://blog.csdn.net/liwei16611/article/details/51279658 高通camera bring up分为两种类型:YUV和bayerbrin ...

  6. 高通HAL层之Sensor HAL

    高通的HAL层其实分为两种,一种是直接从kernel这边报数据上来的,由sensor HAL层来监听,另一种是走ADSP的模式,HAL层是通过qmi的形式进行监听的: 走ADSP架构的可以看下面的博客 ...

  7. 高通adsp架构下sensor

    一.高通sensor架构: linux驱动由浅入深系列:高通sensor架构实例分析之一(整体概览+AP侧代码分析) linux驱动由浅入深系列:高通sensor架构实例分析之二(adsp驱动代码结构 ...

  8. 高通 8x26 andorid light sensor(TSL258x) 开发【转】

    本文转载自:http://www.voidcn.com/blog/u012296694/article/p-1669831.html 前言 8926平台的sensor架构与之前的平台完全不同,实际上已 ...

  9. 高通非adsp 架构下的sensor的bug调试

    高通 sensor 从native到HAL 高通HAL层之Sensor HAL 高通HAL层之bmp18x.cpp 问题现象: 当休眠后,再次打开preesure sensor的时候,会出现隔一段时候 ...

随机推荐

  1. java中什么叫多重捕获MultiCatch,它的用法是怎样的?

    2.多重捕获MultiCatch 马克-to-win:什么叫多重捕获MultiCatch?一段代码可能引起多个异常,这时可以定义两个或更多的catch子句来处理这种情况,每个子句捕获一种类型的异常.马 ...

  2. java中接口interface有什么用呢?举例!

    接口只有方法的定义,没有方法的任何实现.那这有什么意义呢?马克-to-win: 接口就像一个服务合同.接口只关心必须得干什么而不关心如何去实现它.有 意义吗?有意义.马克-to-win:比如我们的软件 ...

  3. Node的重要性

    一. 为什么要学Node 1. 是自己更全面, 有大局观 2. 提升话语权 3. 升职加薪的筹码 二. Node的作用和应用 1. 脱离浏览器运行 js 2. 后台API编写 3. webpack, ...

  4. scss使用方法以及相关内容

    我们平时都称之为 Sass,其实可分成sass和scss, 其中Sass 是以严格的缩进式语法规则来书写,不带大括号({})和分号(;),以".sass"后缀为扩展名:而 SCSS ...

  5. 体验了一把最近很火的开源项目-MASA Blazor

    前言 很惭愧直到去年底才接触到Blazor.那什么是Blazor呢?相信大家都看过官方文档的详细说明,另外MASA团队也有不错的说明介绍 .用官方的话说Blazor是一个交互式客户端Web UI的框架 ...

  6. 关键字static、extern、volatile、详解及举例

    一.预备知识 1. 什么是局部变量?什么是全局变量?          所谓局部变量,就是指在函数内部定义的变量的,只在该函数范围内有效. 全局变量是指,在函数外部定义的变量为外部变量,即全局变量.它 ...

  7. Spring-Bean依赖注入(引用数据类型和集合数据类型)

    为什么使用spring依赖注入详见–>依赖注入分析 1.创建实体类User类 package com.hao.domain; public class User { private String ...

  8. 安装mysql ndb cluster二进制版本在linux上

    Installing an NDB Cluster Binary Release on Linux (官方安装手册)手册地址:https://dev.mysql.com/doc/refman/5.7/ ...

  9. Go 1.18泛型的局限性初探

    前言 Go 1.18 版本之后正式引入泛型,它被称作类型参数(type parameters),本文初步介绍 Go 中泛型的使用.长期以来 go 都没有泛型的概念,只有接口 interface 偶尔类 ...

  10. 学习打卡day12&构建之法阅读笔记第一篇

    今天浅读了<构建之法>的前四章,稍微有一些个人的见解与感受 第一点即是开篇提及到的算法与数据结构这门学科开设的必要,大二上学期学习了这门课程,就我个人目前接触到的层面来看,几乎可以说用不太 ...