SDM450平台移植plsensor(stk3337)

news/2024/12/24 11:27:00/

一、硬件原理图,连接如下:

sensor

sensor

sensor

从上述的原理图我们可以得到管脚的连接:

SENSOR_I2C_SCL1   --->GPIO14

SENSOR_I2C_SDA1  --->GPIO15

EINT-PS ---> GPIO60

2.1 首先跟FAE获取当前项目的驱动代码:

2.2 如下是在cp侧的代码修改如下:

把sns_dd_alsprx_stk3x3x.c、sns_dd_alsprx_stk3x3x.h、sns_dd_alsprx_stk3x3x_uimg.c 放到ADSP.VT.3.0 / adsp_proc/Sensors/dd/qcom/src/ 这个目录

2.3 配置编译如下

diff --git a/adsp_proc/Sensors/build/Sensors.scons b/adsp_proc/Sensors/build/Sensors.scons
index f507109..bb8d445 100755
--- a/adsp_proc/Sensors/build/Sensors.scons
+++ b/adsp_proc/Sensors/build/Sensors.scons
@@ -388,6 +388,7 @@env.Append(CPPDEFINES = ["CONFIG_SUPPORT_EPL259X"])env.Append(CPPDEFINES = ["CONFIG_SUPPORT_KXTJ2"])env.Append(CPPDEFINES = ["CONFIG_SUPPORT_MC3416"])
+    env.Append(CPPDEFINES = ["CONFIG_SUPPORT_STK3X3X"])#env.Append(CPPDEFINES = ["FEATURE_TEST_ALGO_GPIO"])env.Replace(SNS_QMI_ENABLE = True)env.Append(CPPDEFINES = ["USE_NATIVE_MEMCPY"])
diff --git a/adsp_proc/Sensors/common/inc/sns_reg_common.h b/adsp_proc/Sensors/common/inc/sns_reg_common.h
index 44d0b08..59ac2e4 100755
--- a/adsp_proc/Sensors/common/inc/sns_reg_common.h
+++ b/adsp_proc/Sensors/common/inc/sns_reg_common.h
@@ -1807,6 +1807,8 @@#define SNS_REG_UUID_TMG490x \{0xaa,0x50,0x3b,0xd7,0xc0,0xda,0x4f,0xd2,0xad,0xd5,0xf2,0x79,0x7c,0x58,0x83,0x3a}#define SNS_REG_UUID_EPL259X \
+  {0x5f,0x82,0x42,0xac,0x58,0x0c,0x11,0xe8,0x9e,0x97,0x4c,0xcc,0x6a,0x79,0x25,0xc1}
+#define SNS_REG_UUID_STK3X3X \{0x4f,0x82,0x42,0xac,0x58,0x0c,0x11,0xe8,0x9e,0x97,0x4c,0xcc,0x6a,0x79,0x15,0xc0}#define SNS_REG_UUID_KXTJ2 \{0x73,0x47,0x6f,0x10,0x03,0xce,0x85,0xbe,0xc0,0xe9,0x88,0xe2,0x73,0xfe,0x8b,0x87}
diff --git a/adsp_proc/Sensors/dd/qcom/build/dd_qcom.scons b/adsp_proc/Sensors/dd/qcom/build/dd_qcom.scons
index 0ce2951..5f04201 100755
--- a/adsp_proc/Sensors/dd/qcom/build/dd_qcom.scons
+++ b/adsp_proc/Sensors/dd/qcom/build/dd_qcom.scons
@@ -310,6 +310,8 @@"${BUILDPATH}/drv_mc34xx_uimg.c","${BUILDPATH}/sns_dd_accel_mc34xx.c","${BUILDPATH}/sns_dd_uimg_accel_mc34xx.c",
+     "${BUILDPATH}/sns_dd_alsprx_stk3x3x.c",
+     "${BUILDPATH}/sns_dd_alsprx_stk3x3x_uimg.c",]DD_UIMG_SOURCES = [
@@ -335,6 +337,7 @@"${BUILDPATH}/sns_dd_alt_bmp280_uimg.c","${BUILDPATH}/sns_dd_uimg_accel_mc34xx.c","${BUILDPATH}/drv_mc34xx_uimg.c",
+         "${BUILDPATH}/sns_dd_alsprx_stk3x3x_uimg.c",]if 'SNS_HIMEM_UIMG' in env['CPPDEFINES']:
diff --git a/adsp_proc/Sensors/dd/qcom/inc/sns_dd.h b/adsp_proc/Sensors/dd/qcom/inc/sns_dd.h
index e3c7d62..a0b23e1 100755
--- a/adsp_proc/Sensors/dd/qcom/inc/sns_dd.h
+++ b/adsp_proc/Sensors/dd/qcom/inc/sns_dd.h
@@ -158,6 +158,7 @@extern sns_ddf_driver_if_s sns_dd_epl259x_driver_if;extern sns_ddf_driver_if_s sns_dd_accel_kxtj2;extern sns_ddf_driver_if_s sns_dd_acc_mc34xx_if;
+extern sns_ddf_driver_if_s sns_alsprx_stk3x3x_driver_fn_list;/* Generic DD interfaces available for vendors */extern sns_ddf_driver_if_s sns_dd_vendor_if_1;
diff --git a/adsp_proc/Sensors/ddf/inc/sns_ddf_common.h b/adsp_proc/Sensors/ddf/inc/sns_ddf_common.h
index 9278692..1fdf147 100755
--- a/adsp_proc/Sensors/ddf/inc/sns_ddf_common.h
+++ b/adsp_proc/Sensors/ddf/inc/sns_ddf_common.h
@@ -246,6 +246,7 @@SNS_DDF_VENDOR_MEMSIC,SNS_DDF_VENDOR_PARTRON,SNS_DDF_VENDOR_MCUBE,
+    SNS_DDF_VENDOR_SENSORTEK,SNS_DDF_VENDOR_NUM_SUPPORTED  /**< Add new entries above this line. */} sns_ddf_vendor_e;
diff --git a/adsp_proc/Sensors/smgr/src/sns_smgr_reg.c b/adsp_proc/Sensors/smgr/src/sns_smgr_reg.c
index 17ea2b2..ebabf89 100755
--- a/adsp_proc/Sensors/smgr/src/sns_smgr_reg.c
+++ b/adsp_proc/Sensors/smgr/src/sns_smgr_reg.c
@@ -445,6 +445,10 @@#ifdef CONFIG_SUPPORT_MC3416{ SNS_REG_UUID_MC3416, &sns_dd_acc_mc34xx_if},#endif
+#ifdef CONFIG_SUPPORT_STK3X3X
+    { SNS_REG_UUID_STK3X3X, &sns_alsprx_stk3x3x_driver_fn_list},
+#endif
+#endif // SENSORS_DD_DEV_FLAG

2.4 AP侧修改vendor/qcom/proprietary/sensors / dsps/reg_defaults/sensor_def_qcomdev.conf

添加STK3337的配置文件信息

# SSI SMGR Cfg 3: stk3x3x prx/als DRI
2303 0xc015796acc4c979e 0x00010001 #UUID
2302 0xe8110c58ac42824f 0x00010001 #UUID
2304 5700 0x00010001               #off_to_idle
2305 0 0x00010001                  #idle_to_ready
2306 0xFFFF 0x00010001             #gpio1
2307 1040 0x00010001               #reg_group_id
2308 0xFFFF 0x00010001             #cal_grp_id
2309 4 0x00010001                  #i2c_bus
2310 0x47 0x00010001               #i2c_address
2311 0 0x00010001                  #sens_default
2312 0x00 0x00010001               #flags
2368 0xff 0x00010003               #vdd
2369 0xff 0x00010003               #vddio

 

 


http://www.ppmy.cn/news/724929.html

相关文章

[高通SDM450][Android9.0]user版本uartlog常开

文章目录 开发平台基本信息问题描述解决方法user版本调试串口可输入user版本uartlog常开 开发平台基本信息 芯片: SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 user版本调试串口默认只输入调试信息&#xff0c;无法输入指令user版本&#xff0c;调试串口日志在开机进…

高通SDM450 ADC读取电池驱动调试

由于项目需要&#xff0c;使用的sdm450模块不带PMIC电源管理的&#xff0c;而项目又需要接电池使用&#xff0c;所以硬件把电池端接到一个ADC口&#xff0c;做了个简单的电池电路&#xff0c;通过ADC读取数值来确定电池电压&#xff0c;然后换算电池电量。 电池驱动流程 Andr…

Ubuntu 16.04 sdm450 modem编译

编译工具与安装位置&#xff1a; Hexgon Tool(2个) 按照默认位置安装就可以。 /home/mazhw/Qualcomm/HEXAGON_Tools llvm 3.5.2.4: /pkg/qct/software/llvm/release/arm 目录下创建目录3.5.2.4,将llvm解压后复制到此处。 gcc-linaro-aarch64-none-elf-4.9-2014.07_linux 安装位…

[高通SDM450][Android9.0]CTA认证--拆分申请权限分组

文章目录 开发平台基本信息问题描述解决方法 开发平台基本信息 芯片: SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 设备在进行入网认证的时候&#xff0c;实验室要求应用在使用特殊权限的时候&#xff0c;需要告知用户&#xff0c;要用户授权才能使用相应的权限&…

[高通SDM450][Android 9.0] 虹软人脸识别因IMEI变化导致授权失败

虹软人脸识别因IMEI变化导致授权失败 开发平台基本信息补丁下载地址前言问题描述解决方法结尾 开发平台基本信息 芯片: 高通SDM450 版本: Android 9.0 kernel: msm-4.9 补丁下载地址 https://gitee.com/Hebin320/csdn_patch 前言 在人脸识别终端上&#xff0c;使用人脸识别…

运输层:TCP拥塞控制

1.运输层&#xff1a;TCP拥塞控制 笔记来源&#xff1a; 湖科大教书匠&#xff1a;TCP的拥塞控制 声明&#xff1a;该学习笔记来自湖科大教书匠&#xff0c;笔记仅做学习参考 网络资源&#xff1a;在计算机网络中的链路容量&#xff08;即带宽&#xff09;、交换结点中的缓存和…

[高通SDM450][Android9.0]默认取消dm-verity以及解决OTA校验vbmeta失败问题

文章目录 开发平台基本信息问题描述解决方法 关闭dm-verity引发的问题 开发平台基本信息 芯片: SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 在user版本增加root权限之后&#xff0c;每次进行remount的时候&#xff0c;总会提示 remount of the / superblock failed…

高通SDM450韦根数据输入过快导致数据丢失问题分析处理

问题: 两款产品都有韦根输入功能&#xff0c;这两款产品分别使用的是SDM450和MSM8953平台&#xff0c;韦根输入的驱动采用同一个&#xff0c;当外部输入韦根数据的时间间隔速度在1ms以内的情况下&#xff0c;SDM450平台会出现概率性丢失数据&#xff0c;而msm8953平台确没有丢…