在初略介紹sensor的時候,就有講到sensor的架構,在此繼續將其具體化,來看看高通的sensor架構。
我們可以通過下圖看具體sensor是如何進行運作的。
該圖我們可以非常明顯地看到sensor通過i2c或者是spi將資料發到sensor driver中,drivers通過device driver framework將資料報裝後發給sensor manager,然後通過共享記憶體的方式發給上層。作為乙個bsp,當然我所做的是具體來分析adsp這部分的問題了。
ssc: snapdragon sensors core在這裡我提供我手上高通提供的文件,該文件詳細描述了如何進行porting的重要資訊。qmi: qualcomm messaging inte***ce
idl: inte***ce description language
cts: compatibility test suite
sam: sensors algorithm manager
openssc: ssc vendor ecosystem
ssi: sensor single image
下面我將通過這個文件來詳細描述如何進行porting。
宣告驅動程式的入口函式
在fwcode中qcom_firmware\adsp.8953.2.8.2\adsp_proc\sensors\dd\qcom\inc目錄下找到sns_dd.h,新增宣告。
如
extern sns_ddf_driver_if_s sns_dd_mpu6515_if;
原始碼">向fwcode新增原始碼
在fwcode中qcom_firmware\adsp.8953.2.8.2\adsp_proc\sensors\dd\qcom\src新增廠商給的code。並更新qcom_firmware\adsp.8953.2.8.2\adsp_proc\sensors\dd\qcom\build\dd_qcom.scons。
如:在src中新增sns_dd_mpu6515.c、sns_dd_mpu6515_ext.c、 sns_dd_mpu6515_selftest.c,需要在dd_qcom.scons的dd_sources中新增
"$/sns_dd_mpu6515.c",
"$/sns_dd_mpu6515_ext.c",
"$/sns_dd_mpu6515_selftest.c",
同時要配置編譯檔案進行匹配宣告。
在qcom_firmware\adsp.8953.2.8.2\adsp_proc\sensors\build\sensors.scons申明config名稱。
生成uuid等待匹配
請在qcom_firmware\adsp.8953.2.8.2\adsp_proc\sensors\common\inc\sns_reg_common.h中
#define sns_reg_uuid_mpu6515 \
此時adsp已經基本正常porting完成了。
在vender\qcom\proptery\sensors\dsps\reg_defaults中更新sensor_def_qcomdev.conf檔是至關重要的。
在文件中有一張表詳細藐視了config檔的所代表的意思。
此時uuid就要用上了。
2000 1 0x00010001
2001 2 0x00010001
# ssi smgr cfg 0: mpu6881 accel int
2002 0xcc4575757b468168 0x00010001 #uuid
2003 0x8168ae42524820ad 0x00010001 #uuid
2004 10000 0x00010001 #off_to_idle
2005 10000 0x00010001 #idle_to_ready
2006 45 0x00010001 #gpio1
2007 1000 0x00010001 #reg_group_id
2008 0 0x00010001 #cal_grp_id
2009 4 0x00010001 #i2c_bus
2010 0x68 0x00010001 #i2c_address
2011 1 0x00010001 #sens_default
2012 0x80 0x00010001 #flags
adb root
adb remount
adb shell rm /system/etc/sensors/sensor_def_qcomdev.conf
adb push sensor_def_qcomdev.conf /system/etc/sensors/sensor_def_qcomdev.conf
adb shell chmod 644 /system/etc/sensors/sensor_def_qcomdev.conf
adb shell rm /persist/sensor/sns.reg
adb shell sync
adb reboot
如何消除頁面中的
產生原因 模板檔案生成html檔案之後會在body開頭處加入乙個可見的控制符 導致頁面頭部會出現乙個空白行。原因是頁面的編碼是utf 8 bom。這種編碼方式一般會在windows作業系統中出現,比如windows自帶的記事本等軟體,在儲存乙個以utf 8編碼的檔案時,會在檔案開始的地方插入三個不可...
如何釋放hdfs中的續租 裝修中甲醛如何高效釋放
身體是革命的本錢,健康是首位,在當今市場,房子對大家來說不僅僅是安身立命的住所,也是一輩子都必須要奮鬥的。當您拿到新房開開心心入住的時候,必須要面對的乙個問題甲醛是否超標,這個我們都要心中有數,畢竟身體健康才是最重要的。針對大家關注的話題,美佳雲裝管理軟體蒐集了一些如何高效去除甲醛的方法,大家可參考...
c 中如何得到網頁中的URL
得到網頁原始碼 private string gethref return href 得到url private string geturl string href int first href href.indexof href string s1 href.substring first hre...