chime: Generate vendor blobs

Signed-off-by: HeroBuxx <me@herobuxx.me>
This commit is contained in:
HeroBuxx
2026-04-30 12:29:50 +00:00
commit 4a1a3982aa
903 changed files with 48275 additions and 0 deletions
@@ -0,0 +1,239 @@
{
"config":
{
"hw_platform": ["IDP", "IOT"],
"soc_id": ["441", "471", "473", "474"]
},
"ak0991x_0":{
"owner": "sns_ak0991x",
".mag":{
"owner": "sns_ak0991x",
".config":{
"owner": "sns_ak0991x",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
},
".config_2":{
"owner": "sns_ak0991x",
"use_fifo":{ "type": "int", "ver": "0",
"data": "0"
},
"nsf":{ "type": "int", "ver": "0",
"data": "0"
},
"sdr":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"ak0991x_0_platform":{
"owner": "sns_ak0991x",
".config":{
"owner": "sns_ak0991x",
"bus_type":{ "type": "int", "ver": "0",
"data": "3"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "12"
},
"i3c_address":{ "type": "int", "ver": "0",
"data": "20"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "12500"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "34"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "3"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "1"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".orient":{
"owner": "sns_ak0991x",
"x":{ "type": "str", "ver": "0",
"data": "-y"
},
"y":{ "type": "str", "ver": "0",
"data": "+x"
},
"z":{ "type": "str", "ver": "0",
"data": "+z"
}
},
".mag":{
"owner": "sns_ak0991x",
".fac_cal":{
"owner": "sns_ak0991x",
".corr_mat":{
"owner": "sns_ak0991x",
"0_0":{ "type": "flt", "ver": "0",
"data": "0.972"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "-0.012"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.067"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "-0.012"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.030"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.006"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.067"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.006"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "0.998"
}
},
".bias":{
"owner": "sns_ak0991x",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
},
".fac_cal_2":{
"owner": "sns_ak0991x",
".corr_mat":{
"owner": "sns_ak0991x",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_ak0991x",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".placement":{
"owner": "sns_ak0991x",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,160 @@
{
"config":
{
"hw_platform": ["IDP", "IOT"],
"soc_id": ["441", "471", "473", "474"]
},
"bmp285_0":{
"owner": "sns_bmp285",
".temp":{
"owner": "sns_bmp285",
".config":{
"owner": "sns_bmp285",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".pressure":{
"owner": "sns_bmp285",
".config":{
"owner": "sns_bmp285",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"bmp285_0_platform":{
"owner": "sns_bmp285",
".config":{
"owner": "sns_bmp285",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "1"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "118"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "1"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".temp":{
"owner": "sns_bmp285",
".fac_cal":
{
"owner": "sns_bmp285",
".scale":{
"owner": "sns_bmp285",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_bmp285",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".pressure":{
"owner": "sns_bmp285",
".fac_cal":
{
"owner": "sns_bmp285",
".scale":{
"owner": "sns_bmp285",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_bmp285",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".placement":{
"owner": "sns_bmp285",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,57 @@
{
"config":{
"hw_platform": ["IDP", "IOT"],
"soc_id": ["441", "471", "473", "474"]
},
"bu52053nvx_0":{
"owner": "sns_bu52053nvx",
".hall":{
"owner": "sns_bu52053nvx",
".config":{
"owner": "sns_bu52053nvx",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "1"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"bu52053nvx_0_platform":{
"owner": "sns_bu52053nvx",
".config":{
"owner": "sns_bu52053nvx",
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "36"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "2"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
}
}
}
}
@@ -0,0 +1,177 @@
{
"config":{
"hw_platform": ["IDP","Dragon", "Surf", "QRD", "HDK", "IOT"],
"soc_id": ["441", "471", "473", "474"]
},
"default_sensors": {
"owner": "suid",
".accel": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".gyro": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".mag": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".motion_detect": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".sensor_temperature": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
},
".attr_1": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "0" },
"val": { "type": "str", "ver": "0", "data": "lsm6dso" }
}
},
".proximity": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "16" },
"val": { "type": "int", "ver": "0", "data": "1" }
}
},
".ambient_light": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "16" },
"val": { "type": "int", "ver": "0", "data": "1" }
}
},
".accel_cal": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".gyro_cal": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".mag_cal": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".amd": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".tilt": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".gyro_rot_matrix": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".gravity": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".game_rv": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".geomag_rv": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".fmv": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".rotv": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
}
}
}
@@ -0,0 +1,323 @@
{
"config":{
"hw_platform": ["IDP", "IOT"],
"soc_id": [ "441", "471", "473", "474"]
},
"lsm6dso_0":{
"owner": "lsm6dso",
".accel":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "3"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".gyro":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "4"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".md":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".temp":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"lsm6dso_0_platform":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"bus_type":{ "type": "int", "ver": "0",
"data": "3"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "106"
},
"i3c_address":{ "type": "int", "ver": "0",
"data": "10"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "12500"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "32"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "2"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "3"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
},
"min_odr":{ "type": "int", "ver": "0",
"data": "13"
},
"max_odr":{ "type": "int", "ver": "0",
"data": "416"
}
},
".orient":{
"owner": "lsm6dso",
"x":{ "type": "str", "ver": "0",
"data": "-x"
},
"y":{ "type": "str", "ver": "0",
"data": "-y"
},
"z":{ "type": "str", "ver": "0",
"data": "+z"
}
},
".gyro":{
"owner": "lsm6dso",
".fac_cal":{
"owner": "lsm6dso",
".corr_mat":{
"owner": "lsm6dso",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".accel":{
"owner": "lsm6dso",
".fac_cal":{
"owner": "lsm6dso",
".corr_mat":{
"owner": "lsm6dso",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".temp":{
"owner": "lsm6dso",
".fac_cal":
{
"owner": "lsm6dso",
".scale":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".md":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"thresh":{ "type": "flt", "ver": "0",
"data": "0.6132"
},
"disable":{ "type": "int", "ver": "0",
"data": "0"
},
"win":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
},
".placement":{
"owner": "lsm6dso",
"0":{ "type": "flt", "ver": "0",
"data": "0.1"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.1"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.1"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,16 @@
{
"config":{
"hw_platform": ["IDP", "QRD", "IOT"],
"soc_id": ["441", "471", "473", "474"]
},
"power":{
"owner": "power_manager",
".island":{
"owner": "power_manager",
"enable_island":{ "type": "int", "ver": "0",
"data": "1"
}
}
}
}
@@ -0,0 +1,239 @@
{
"config":
{
"hw_platform": ["QRD"],
"soc_id": ["441", "471"]
},
"ak0991x_0":{
"owner": "sns_ak0991x",
".mag":{
"owner": "sns_ak0991x",
".config":{
"owner": "sns_ak0991x",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
},
".config_2":{
"owner": "sns_ak0991x",
"use_fifo":{ "type": "int", "ver": "0",
"data": "0"
},
"nsf":{ "type": "int", "ver": "0",
"data": "0"
},
"sdr":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"ak0991x_0_platform":{
"owner": "sns_ak0991x",
".config":{
"owner": "sns_ak0991x",
"bus_type":{ "type": "int", "ver": "0",
"data": "3"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "12"
},
"i3c_address":{ "type": "int", "ver": "0",
"data": "20"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "12500"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "34"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "2"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "1"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".orient":{
"owner": "sns_ak0991x",
"x":{ "type": "str", "ver": "0",
"data": "-x"
},
"y":{ "type": "str", "ver": "0",
"data": "-y"
},
"z":{ "type": "str", "ver": "0",
"data": "+z"
}
},
".mag":{
"owner": "sns_ak0991x",
".fac_cal":{
"owner": "sns_ak0991x",
".corr_mat":{
"owner": "sns_ak0991x",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.025"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "-0.003"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.003"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "-0.003"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "0.968"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.003"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.003"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.003"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.007"
}
},
".bias":{
"owner": "sns_ak0991x",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
},
".fac_cal_2":{
"owner": "sns_ak0991x",
".corr_mat":{
"owner": "sns_ak0991x",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_ak0991x",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".placement":{
"owner": "sns_ak0991x",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,323 @@
{
"config":{
"hw_platform": ["QRD"],
"soc_id": ["441", "471"]
},
"lsm6dso_0":{
"owner": "lsm6dso",
".accel":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "3"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".gyro":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "4"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".md":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".temp":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"lsm6dso_0_platform":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"bus_type":{ "type": "int", "ver": "0",
"data": "3"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "106"
},
"i3c_address":{ "type": "int", "ver": "0",
"data": "10"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "12500"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "32"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "2"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "3"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
},
"min_odr":{ "type": "int", "ver": "0",
"data": "13"
},
"max_odr":{ "type": "int", "ver": "0",
"data": "416"
}
},
".orient":{
"owner": "lsm6dso",
"x":{ "type": "str", "ver": "0",
"data": "+y"
},
"y":{ "type": "str", "ver": "0",
"data": "+x"
},
"z":{ "type": "str", "ver": "0",
"data": "-z"
}
},
".gyro":{
"owner": "lsm6dso",
".fac_cal":{
"owner": "lsm6dso",
".corr_mat":{
"owner": "lsm6dso",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".accel":{
"owner": "lsm6dso",
".fac_cal":{
"owner": "lsm6dso",
".corr_mat":{
"owner": "lsm6dso",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".temp":{
"owner": "lsm6dso",
".fac_cal":
{
"owner": "lsm6dso",
".scale":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".md":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"thresh":{ "type": "flt", "ver": "0",
"data": "0.6132"
},
"disable":{ "type": "int", "ver": "0",
"data": "0"
},
"win":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
},
".placement":{
"owner": "lsm6dso",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,264 @@
{
"config":{
"hw_platform": ["QRD"],
"soc_id": [ "441", "471"]
},
"tmd2725_0":{
"owner": "sns_tmd2725",
".als":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "3"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".prox":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"tmd2725_0_platform":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "1"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "57"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "35"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "1"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "2"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"vdd_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vdd"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".als":{
"owner": "sns_tmd2725",
".fac_cal":{
"owner": "sns_tmd2725",
"scale":{ "type": "flt", "ver": "0",
"data": "2459.0"
},
"bias":{ "type": "flt", "ver": "0",
"data": "2000.0"
}
},
".custom_cal":{
"owner": "sns_tmd2725",
"l0_factor":{ "type": "flt", "ver": "0",
"data": "1000.0"
},
"l1_factor":{ "type": "flt", "ver": "0",
"data": "260.0"
},
"l2_factor":{ "type": "flt", "ver": "0",
"data": "800.0"
},
"l3_factor":{ "type": "flt", "ver": "0",
"data": "270.0"
},
"d_factor":{ "type": "flt", "ver": "0",
"data": "41.0"
}
},
".def_config":{
"owner": "sns_tmd2725",
"a_time":{ "type": "flt", "ver": "0",
"data": "90000.0"
},
"w_time":{ "type": "flt", "ver": "0",
"data": "28.0"
},
"w_long":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"a_gain":{ "type": "flt", "ver": "0",
"data": "16000.0"
},
"a_pers":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"a_upperThrs":{ "type": "flt", "ver": "0",
"data": "5.0"
},
"a_lowerThrs":{ "type": "flt", "ver": "0",
"data": "5.0"
},
"a_thrsWidth":{ "type": "flt", "ver": "0",
"data": "10.0"
}
},
".cal_target":{
"owner": "sns_tmd2725",
"lux_cal_target":{ "type": "flt", "ver": "0",
"data": "300.0"
},
"lux_cal_target_tolerance":{ "type": "flt", "ver": "0",
"data": "15.0"
}
}
},
".prox":{
"owner": "sns_tmd2725",
".fac_cal":{
"owner": "sns_tmd2725",
"near_threshold":{ "type": "flt", "ver": "0",
"data": "60.0"
},
"far_threshold":{ "type": "flt", "ver": "0",
"data": "19.0"
}
},
".proxOffset_hWcal":{
"owner": "sns_tmd2725",
"proxOffset":{ "type": "flt", "ver": "0",
"data": "4.0"
},
"proxOffsetSign":{ "type": "flt", "ver": "0",
"data": "0.0"
}
},
".def_config":{
"owner": "sns_tmd2725",
"ptime":{ "type": "flt", "ver": "0",
"data": "49896.0"
},
"pwait_time":{ "type": "flt", "ver": "0",
"data": "28.0"
},
"ppulse_len":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"ppulse":{ "type": "flt", "ver": "0",
"data": "17.0"
},
"pgain":{ "type": "flt", "ver": "0",
"data": "4000.0"
},
"pldrive":{ "type": "flt", "ver": "0",
"data": "24.0"
},
"ppers":{ "type": "flt", "ver": "0",
"data": "2.0"
},
"pupper_thrs":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"plower_thrs":{ "type": "flt", "ver": "0",
"data": "255.0"
},
"poffset_sign":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"poffset_L":{ "type": "flt", "ver": "0",
"data": "50.0"
},
"pBinSearch":{ "type": "flt", "ver": "0",
"data": "2.0"
}
}
},
".placement":{
"owner": "sns_tmd2725",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,264 @@
{
"config":{
"hw_platform": ["IDP", "IOT"],
"soc_id": ["441", "471", "473", "474"]
},
"tmd2725_0":{
"owner": "sns_tmd2725",
".als":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "3"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".prox":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"tmd2725_0_platform":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "1"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "57"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "35"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "1"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "2"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"vdd_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vdd"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".als":{
"owner": "sns_tmd2725",
".fac_cal":{
"owner": "sns_tmd2725",
"scale":{ "type": "flt", "ver": "0",
"data": "2238.0"
},
"bias":{ "type": "flt", "ver": "0",
"data": "2000.0"
}
},
".custom_cal":{
"owner": "sns_tmd2725",
"l0_factor":{ "type": "flt", "ver": "0",
"data": "1000.0"
},
"l1_factor":{ "type": "flt", "ver": "0",
"data": "260.0"
},
"l2_factor":{ "type": "flt", "ver": "0",
"data": "800.0"
},
"l3_factor":{ "type": "flt", "ver": "0",
"data": "270.0"
},
"d_factor":{ "type": "flt", "ver": "0",
"data": "41.0"
}
},
".def_config":{
"owner": "sns_tmd2725",
"a_time":{ "type": "flt", "ver": "0",
"data": "90000.0"
},
"w_time":{ "type": "flt", "ver": "0",
"data": "28.0"
},
"w_long":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"a_gain":{ "type": "flt", "ver": "0",
"data": "16000.0"
},
"a_pers":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"a_upperThrs":{ "type": "flt", "ver": "0",
"data": "5.0"
},
"a_lowerThrs":{ "type": "flt", "ver": "0",
"data": "5.0"
},
"a_thrsWidth":{ "type": "flt", "ver": "0",
"data": "10.0"
}
},
".cal_target":{
"owner": "sns_tmd2725",
"lux_cal_target":{ "type": "flt", "ver": "0",
"data": "300.0"
},
"lux_cal_target_tolerance":{ "type": "flt", "ver": "0",
"data": "15.0"
}
}
},
".prox":{
"owner": "sns_tmd2725",
".fac_cal":{
"owner": "sns_tmd2725",
"near_threshold":{ "type": "flt", "ver": "0",
"data": "97.0"
},
"far_threshold":{ "type": "flt", "ver": "0",
"data": "19.0"
}
},
".proxOffset_hWcal":{
"owner": "sns_tmd2725",
"proxOffset":{ "type": "flt", "ver": "0",
"data": "4.0"
},
"proxOffsetSign":{ "type": "flt", "ver": "0",
"data": "0.0"
}
},
".def_config":{
"owner": "sns_tmd2725",
"ptime":{ "type": "flt", "ver": "0",
"data": "49896.0"
},
"pwait_time":{ "type": "flt", "ver": "0",
"data": "28.0"
},
"ppulse_len":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"ppulse":{ "type": "flt", "ver": "0",
"data": "17.0"
},
"pgain":{ "type": "flt", "ver": "0",
"data": "4000.0"
},
"pldrive":{ "type": "flt", "ver": "0",
"data": "24.0"
},
"ppers":{ "type": "flt", "ver": "0",
"data": "2.0"
},
"pupper_thrs":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"plower_thrs":{ "type": "flt", "ver": "0",
"data": "255.0"
},
"poffset_sign":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"poffset_L":{ "type": "flt", "ver": "0",
"data": "50.0"
},
"pBinSearch":{ "type": "flt", "ver": "0",
"data": "2.0"
}
}
},
".placement":{
"owner": "sns_tmd2725",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,192 @@
{
"config":
{
"hw_platform": ["IDP"],
"soc_id": ["417", "420", "444", "445"]
},
"af6133e_0":{
"owner": "sns_af6133e",
".mag":{
"owner": "sns_af6133e",
".config":{
"owner": "sns_af6133e",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"af6133e_0_platform":{
"owner": "sns_af6133e",
".config":{
"owner": "sns_af6133e",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "1"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "0x0C"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "100"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".orient":{
"owner": "sns_af6133e",
"x":{ "type": "str", "ver": "0",
"data": "+y"
},
"y":{ "type": "str", "ver": "0",
"data": "+x"
},
"z":{ "type": "str", "ver": "0",
"data": "-z"
}
},
".mag":{
"owner": "sns_af6133e",
".fac_cal":{
"owner": "sns_af6133e",
".corr_mat":{
"owner": "sns_af6133e",
"0_0":{ "type": "flt", "ver": "0",
"data": "0.9241"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0048"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0163"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "-0.0062"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0078"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "-0.0076"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0086"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0203"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0735"
}
}
}
},
".placement":{
"owner": "sns_af6133e",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
},
".setting":{
"owner": "sns_af6133e",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,239 @@
{
"config":
{
"hw_platform": ["IDP", "IOT"],
"soc_id": ["417", "420", "444", "445", "469", "470", "518"]
},
"ak0991x_0":{
"owner": "sns_ak0991x",
".mag":{
"owner": "sns_ak0991x",
".config":{
"owner": "sns_ak0991x",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
},
".config_2":{
"owner": "sns_ak0991x",
"use_fifo":{ "type": "int", "ver": "0",
"data": "0"
},
"nsf":{ "type": "int", "ver": "0",
"data": "0"
},
"sdr":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"ak0991x_0_platform":{
"owner": "sns_ak0991x",
".config":{
"owner": "sns_ak0991x",
"bus_type":{ "type": "int", "ver": "0",
"data": "3"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "12"
},
"i3c_address":{ "type": "int", "ver": "0",
"data": "20"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "12500"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "34"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "3"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "1"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".orient":{
"owner": "sns_ak0991x",
"x":{ "type": "str", "ver": "0",
"data": "-y"
},
"y":{ "type": "str", "ver": "0",
"data": "+x"
},
"z":{ "type": "str", "ver": "0",
"data": "+z"
}
},
".mag":{
"owner": "sns_ak0991x",
".fac_cal":{
"owner": "sns_ak0991x",
".corr_mat":{
"owner": "sns_ak0991x",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.031"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "-0.048"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.042"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "-0.048"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "0.982"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.009"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.042"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.009"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "0.987"
}
},
".bias":{
"owner": "sns_ak0991x",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
},
".fac_cal_2":{
"owner": "sns_ak0991x",
".corr_mat":{
"owner": "sns_ak0991x",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_ak0991x",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".placement":{
"owner": "sns_ak0991x",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,250 @@
{
"config":{
"hw_platform": ["IDP"],
"soc_id": ["417", "420", "444", "445"]
},
"bma2x2_0":{
"owner": "sns_bma2x2",
".accel":{
"owner": "sns_bma2x2",
".config":{
"owner": "sns_bma2x2",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".md":{
"owner": "sns_bma2x2",
".config":{
"owner": "sns_bma2x2",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".temp":{
"owner": "sns_bma2x2",
".config":{
"owner": "sns_bma2x2",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"bma2x2_0_platform":{
"owner": "sns_bma2x2",
".config":{
"owner": "sns_bma2x2",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "24"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "100"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "32"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "2"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "0"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "1"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".orient":{
"owner": "sns_bma2x2",
"x":{ "type": "str", "ver": "0",
"data": "-x"
},
"y":{ "type": "str", "ver": "0",
"data": "+y"
},
"z":{ "type": "str", "ver": "0",
"data": "-z"
}
},
".accel":{
"owner": "sns_bma2x2",
".fac_cal":{
"owner": "sns_bma2x2",
".corr_mat":{
"owner": "sns_bma2x2",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_bma2x2",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".temp":{
"owner": "sns_bma2x2",
".fac_cal":
{
"owner": "sns_bma2x2",
".scale":{
"owner": "sns_bma2x2",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_bma2x2",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".md":{
"owner": "sns_bma2x2",
".config":{
"owner": "sns_bma2x2",
"thresh":{ "type": "flt", "ver": "0",
"data": "0.083"
},
"disable":{ "type": "int", "ver": "0",
"data": "0"
},
"win":{ "type": "flt", "ver": "0",
"data": "0.04"
}
}
},
".placement":{
"owner": "sns_bma2x2",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,160 @@
{
"config":
{
"hw_platform": ["IDP", "IOT"],
"soc_id": ["417", "420", "444", "445", "469", "470", "518"]
},
"bmp285_0":{
"owner": "sns_bmp285",
".temp":{
"owner": "sns_bmp285",
".config":{
"owner": "sns_bmp285",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".pressure":{
"owner": "sns_bmp285",
".config":{
"owner": "sns_bmp285",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"bmp285_0_platform":{
"owner": "sns_bmp285",
".config":{
"owner": "sns_bmp285",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "1"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "118"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "1"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".temp":{
"owner": "sns_bmp285",
".fac_cal":
{
"owner": "sns_bmp285",
".scale":{
"owner": "sns_bmp285",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_bmp285",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".pressure":{
"owner": "sns_bmp285",
".fac_cal":
{
"owner": "sns_bmp285",
".scale":{
"owner": "sns_bmp285",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_bmp285",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".placement":{
"owner": "sns_bmp285",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,57 @@
{
"config":{
"hw_platform": ["IDP", "IOT"],
"soc_id": ["417", "420", "444", "445", "469", "470", "518"]
},
"bu52053nvx_0":{
"owner": "sns_bu52053nvx",
".hall":{
"owner": "sns_bu52053nvx",
".config":{
"owner": "sns_bu52053nvx",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "1"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"bu52053nvx_0_platform":{
"owner": "sns_bu52053nvx",
".config":{
"owner": "sns_bu52053nvx",
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "36"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "2"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
}
}
}
}
@@ -0,0 +1,177 @@
{
"config":{
"hw_platform": ["IDP","Dragon", "Surf", "QRD", "HDK", "IOT"],
"soc_id": ["417", "420", "444", "445", "469", "470", "518"]
},
"default_sensors": {
"owner": "suid",
".accel": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".gyro": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".mag": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".motion_detect": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".sensor_temperature": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
},
".attr_1": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "0" },
"val": { "type": "str", "ver": "0", "data": "lsm6dso" }
}
},
".proximity": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "16" },
"val": { "type": "int", "ver": "0", "data": "1" }
}
},
".ambient_light": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "16" },
"val": { "type": "int", "ver": "0", "data": "1" }
}
},
".accel_cal": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".gyro_cal": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".mag_cal": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".amd": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".tilt": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".gyro_rot_matrix": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".gravity": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".game_rv": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".geomag_rv": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".fmv": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
},
".rotv": {
"owner": "suid",
".attr_0": {
"owner": "suid",
"id": { "type": "int", "ver": "0", "data": "19" },
"val": { "type": "int", "ver": "0", "data": "0" }
}
}
}
}
@@ -0,0 +1,30 @@
{
"config":{
"hw_platform": ["IDP", "QRD"],
"soc_id": ["518"]
},
"sns_dynamic_libraries":
{
"owner": "dynamic_sensor",
"detect_on_every_boot":{ "type": "int", "ver": "0",
"data": "0"
},
".lib0":
{
"owner": "dynamic_sensor",
"name":{ "type": "str", "ver": "0",
"data": "lsm6dso_normal.so"
},
"reg_fun":{ "type": "str", "ver": "0",
"data": "sns_register_lsm6dso"
},
"reg_cnt":{ "type": "int", "ver": "0",
"data": "1"
},
"detected":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
}
@@ -0,0 +1,211 @@
{
"config":{
"hw_platform": ["IDP"],
"soc_id": ["417", "420", "444", "445"]
},
"kx022_0":{
"owner": "sns_kx022",
".accel":{
"owner": "sns_kx022",
".config":{
"owner": "sns_kx022",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".md":{
"owner": "sns_kx022",
".config":{
"owner": "sns_kx022",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"kx022_0_platform":{
"owner": "sns_kx022",
".config":{
"owner": "sns_kx022",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "30"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "32"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "3"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "0"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "1"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".orient":{
"owner": "sns_kx022",
"x":{ "type": "str", "ver": "0",
"data": "-x"
},
"y":{ "type": "str", "ver": "0",
"data": "+y"
},
"z":{ "type": "str", "ver": "0",
"data": "-z"
}
},
".accel":{
"owner": "sns_kx022",
".fac_cal":{
"owner": "sns_kx022",
".corr_mat":{
"owner": "sns_kx022",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_kx022",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".md":{
"owner": "sns_kx022",
".config":{
"owner": "sns_kx022",
"thresh":{ "type": "flt", "ver": "0",
"data": "2.45"
},
"disable":{ "type": "int", "ver": "0",
"data": "0"
},
"win":{ "type": "flt", "ver": "0",
"data": "0.25"
}
}
},
".placement":{
"owner": "sns_kx022",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,255 @@
{
"config":{
"hw_platform": ["IDP"],
"soc_id": ["417", "420", "444", "445"]
},
"lis2hh12_0":{
"owner": "lis2hh12",
".accel":{
"owner": "lis2hh12",
".config":{
"owner": "lis2hh12",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".md":{
"owner": "lis2hh12",
".config":{
"owner": "lis2hh12",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".temp":{
"owner": "lis2hh12",
".config":{
"owner": "lis2hh12",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"lis2hh12_0_platform":{
"owner": "lis2hh12",
".config":{
"owner": "lis2hh12",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "30"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "32"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "3"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"min_odr":{ "type": "int", "ver": "0",
"data": "10"
},
"max_odr":{ "type": "int", "ver": "0",
"data": "500"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".orient":{
"owner": "lis2hh12",
"x":{ "type": "str", "ver": "0",
"data": "x"
},
"y":{ "type": "str", "ver": "0",
"data": "y"
},
"z":{ "type": "str", "ver": "0",
"data": "-z"
}
},
".accel":{
"owner": "lis2hh12",
".fac_cal":{
"owner": "lis2hh12",
".corr_mat":{
"owner": "lis2hh12",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lis2hh12",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".temp":{
"owner": "lis2hh12",
".fac_cal":
{
"owner": "lis2hh12",
".scale":{
"owner": "lis2hh12",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lis2hh12",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".md":{
"owner": "lis2hh12",
".config":{
"owner": "lis2hh12",
"thresh":{ "type": "flt", "ver": "0",
"data": "1.2264"
},
"disable":{ "type": "int", "ver": "0",
"data": "0"
},
"win":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
},
".placement":{
"owner": "lis2hh12",
"0":{ "type": "flt", "ver": "0",
"data": "0.1"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.1"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.1"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,323 @@
{
"config":{
"hw_platform": ["IDP", "IOT"],
"soc_id": [ "417", "420", "444", "445", "469", "470", "518"]
},
"lsm6dso_0":{
"owner": "lsm6dso",
".accel":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "3"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".gyro":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "4"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".md":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".temp":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"lsm6dso_0_platform":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"bus_type":{ "type": "int", "ver": "0",
"data": "3"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "106"
},
"i3c_address":{ "type": "int", "ver": "0",
"data": "10"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "12500"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "32"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "2"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "3"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
},
"min_odr":{ "type": "int", "ver": "0",
"data": "13"
},
"max_odr":{ "type": "int", "ver": "0",
"data": "416"
}
},
".orient":{
"owner": "lsm6dso",
"x":{ "type": "str", "ver": "0",
"data": "-x"
},
"y":{ "type": "str", "ver": "0",
"data": "-y"
},
"z":{ "type": "str", "ver": "0",
"data": "+z"
}
},
".gyro":{
"owner": "lsm6dso",
".fac_cal":{
"owner": "lsm6dso",
".corr_mat":{
"owner": "lsm6dso",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".accel":{
"owner": "lsm6dso",
".fac_cal":{
"owner": "lsm6dso",
".corr_mat":{
"owner": "lsm6dso",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".temp":{
"owner": "lsm6dso",
".fac_cal":
{
"owner": "lsm6dso",
".scale":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".md":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"thresh":{ "type": "flt", "ver": "0",
"data": "0.6132"
},
"disable":{ "type": "int", "ver": "0",
"data": "0"
},
"win":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
},
".placement":{
"owner": "lsm6dso",
"0":{ "type": "flt", "ver": "0",
"data": "0.1"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.1"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.1"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,162 @@
{
"config":{
"hw_platform": ["IDP"],
"soc_id": ["417", "420", "444", "445"]
},
"mmc56x3x_0":{
"owner": "sns_mmc56x3x",
".mag":{
"owner": "sns_mmc56x3x",
".config":{
"owner": "sns_mmc56x3x",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"mmc56x3x_0_platform":{
"owner": "sns_mmc56x3x",
".config":{
"owner": "sns_mmc56x3x",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "1"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "48"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "100"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".orient":{
"owner": "sns_mmc56x3x",
"x":{ "type": "str", "ver": "0",
"data": "+x"
},
"y":{ "type": "str", "ver": "0",
"data": "+y"
},
"z":{ "type": "str", "ver": "0",
"data": "+z"
}
},
".mag":{
"owner": "sns_mmc56x3x",
".fac_cal":{
"owner": "sns_mmc56x3x",
".corr_mat":{
"owner": "sns_mmc56x3x",
"0_0":{ "type": "flt", "ver": "0",
"data": "0.9982"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0564"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "-0.0219"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0003"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0796"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0246"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "-0.0056"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "-0.0228"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.1561"
}
},
".bias":{
"owner": "sns_mmc56x3x",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".placement":{
"owner": "sns_mmc56x3x",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,16 @@
{
"config":{
"hw_platform": ["IDP", "QRD", "IOT"],
"soc_id": ["417", "420", "444", "445", "469", "470", "518"]
},
"power":{
"owner": "power_manager",
".island":{
"owner": "power_manager",
"enable_island":{ "type": "int", "ver": "0",
"data": "1"
}
}
}
}
@@ -0,0 +1,239 @@
{
"config":
{
"hw_platform": ["QRD"],
"soc_id": [ "417", "444", "518"]
},
"ak0991x_0":{
"owner": "sns_ak0991x",
".mag":{
"owner": "sns_ak0991x",
".config":{
"owner": "sns_ak0991x",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
},
".config_2":{
"owner": "sns_ak0991x",
"use_fifo":{ "type": "int", "ver": "0",
"data": "0"
},
"nsf":{ "type": "int", "ver": "0",
"data": "0"
},
"sdr":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"ak0991x_0_platform":{
"owner": "sns_ak0991x",
".config":{
"owner": "sns_ak0991x",
"bus_type":{ "type": "int", "ver": "0",
"data": "3"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "12"
},
"i3c_address":{ "type": "int", "ver": "0",
"data": "20"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "12500"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "34"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "2"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "1"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".orient":{
"owner": "sns_ak0991x",
"x":{ "type": "str", "ver": "0",
"data": "-x"
},
"y":{ "type": "str", "ver": "0",
"data": "-y"
},
"z":{ "type": "str", "ver": "0",
"data": "+z"
}
},
".mag":{
"owner": "sns_ak0991x",
".fac_cal":{
"owner": "sns_ak0991x",
".corr_mat":{
"owner": "sns_ak0991x",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.025"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "-0.003"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.003"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "-0.003"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "0.968"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.003"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.003"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.003"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.007"
}
},
".bias":{
"owner": "sns_ak0991x",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
},
".fac_cal_2":{
"owner": "sns_ak0991x",
".corr_mat":{
"owner": "sns_ak0991x",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sns_ak0991x",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".placement":{
"owner": "sns_ak0991x",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,323 @@
{
"config":{
"hw_platform": ["QRD"],
"soc_id": ["417", "444", "518"]
},
"lsm6dso_0":{
"owner": "lsm6dso",
".accel":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "3"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".gyro":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "4"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".md":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".temp":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"lsm6dso_0_platform":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"bus_type":{ "type": "int", "ver": "0",
"data": "3"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "106"
},
"i3c_address":{ "type": "int", "ver": "0",
"data": "10"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "12500"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "32"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "2"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "3"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
},
"min_odr":{ "type": "int", "ver": "0",
"data": "13"
},
"max_odr":{ "type": "int", "ver": "0",
"data": "416"
}
},
".orient":{
"owner": "lsm6dso",
"x":{ "type": "str", "ver": "0",
"data": "+x"
},
"y":{ "type": "str", "ver": "0",
"data": "+y"
},
"z":{ "type": "str", "ver": "0",
"data": "+z"
}
},
".gyro":{
"owner": "lsm6dso",
".fac_cal":{
"owner": "lsm6dso",
".corr_mat":{
"owner": "lsm6dso",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".accel":{
"owner": "lsm6dso",
".fac_cal":{
"owner": "lsm6dso",
".corr_mat":{
"owner": "lsm6dso",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".temp":{
"owner": "lsm6dso",
".fac_cal":
{
"owner": "lsm6dso",
".scale":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "lsm6dso",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".md":{
"owner": "lsm6dso",
".config":{
"owner": "lsm6dso",
"thresh":{ "type": "flt", "ver": "0",
"data": "0.6132"
},
"disable":{ "type": "int", "ver": "0",
"data": "0"
},
"win":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
},
".placement":{
"owner": "lsm6dso",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,264 @@
{
"config":{
"hw_platform": ["QRD"],
"soc_id": [ "417", "444", "518"]
},
"tmd2725_0":{
"owner": "sns_tmd2725",
".als":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "3"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".prox":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"tmd2725_0_platform":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "1"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "57"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "35"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "1"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "2"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"vdd_rail":{ "type": "str", "ver": "0",
"data": "/see/rail/eLDO"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".als":{
"owner": "sns_tmd2725",
".fac_cal":{
"owner": "sns_tmd2725",
"scale":{ "type": "flt", "ver": "0",
"data": "2459.0"
},
"bias":{ "type": "flt", "ver": "0",
"data": "2000.0"
}
},
".custom_cal":{
"owner": "sns_tmd2725",
"l0_factor":{ "type": "flt", "ver": "0",
"data": "1000.0"
},
"l1_factor":{ "type": "flt", "ver": "0",
"data": "260.0"
},
"l2_factor":{ "type": "flt", "ver": "0",
"data": "800.0"
},
"l3_factor":{ "type": "flt", "ver": "0",
"data": "270.0"
},
"d_factor":{ "type": "flt", "ver": "0",
"data": "41.0"
}
},
".def_config":{
"owner": "sns_tmd2725",
"a_time":{ "type": "flt", "ver": "0",
"data": "90000.0"
},
"w_time":{ "type": "flt", "ver": "0",
"data": "28.0"
},
"w_long":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"a_gain":{ "type": "flt", "ver": "0",
"data": "16000.0"
},
"a_pers":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"a_upperThrs":{ "type": "flt", "ver": "0",
"data": "5.0"
},
"a_lowerThrs":{ "type": "flt", "ver": "0",
"data": "5.0"
},
"a_thrsWidth":{ "type": "flt", "ver": "0",
"data": "10.0"
}
},
".cal_target":{
"owner": "sns_tmd2725",
"lux_cal_target":{ "type": "flt", "ver": "0",
"data": "300.0"
},
"lux_cal_target_tolerance":{ "type": "flt", "ver": "0",
"data": "15.0"
}
}
},
".prox":{
"owner": "sns_tmd2725",
".fac_cal":{
"owner": "sns_tmd2725",
"near_threshold":{ "type": "flt", "ver": "0",
"data": "60.0"
},
"far_threshold":{ "type": "flt", "ver": "0",
"data": "19.0"
}
},
".proxOffset_hWcal":{
"owner": "sns_tmd2725",
"proxOffset":{ "type": "flt", "ver": "0",
"data": "4.0"
},
"proxOffsetSign":{ "type": "flt", "ver": "0",
"data": "0.0"
}
},
".def_config":{
"owner": "sns_tmd2725",
"ptime":{ "type": "flt", "ver": "0",
"data": "49896.0"
},
"pwait_time":{ "type": "flt", "ver": "0",
"data": "28.0"
},
"ppulse_len":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"ppulse":{ "type": "flt", "ver": "0",
"data": "17.0"
},
"pgain":{ "type": "flt", "ver": "0",
"data": "4000.0"
},
"pldrive":{ "type": "flt", "ver": "0",
"data": "24.0"
},
"ppers":{ "type": "flt", "ver": "0",
"data": "2.0"
},
"pupper_thrs":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"plower_thrs":{ "type": "flt", "ver": "0",
"data": "255.0"
},
"poffset_sign":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"poffset_L":{ "type": "flt", "ver": "0",
"data": "50.0"
},
"pBinSearch":{ "type": "flt", "ver": "0",
"data": "2.0"
}
}
},
".placement":{
"owner": "sns_tmd2725",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,247 @@
{
"config":{
"hw_platform": ["IDP"],
"soc_id": ["417", "420", "444", "445"]
},
"sc7a20_0":{
"owner": "sc7a20",
".accel":{
"owner": "sc7a20",
".config":{
"owner": "sc7a20",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".md":{
"owner": "sc7a20",
".config":{
"owner": "sc7a20",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".temp":{
"owner": "sc7a20",
".config":{
"owner": "sc7a20",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"sc7a20_0_platform":{
"owner": "sc7a20",
".config":{
"owner": "sc7a20",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "24"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "32"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "0"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "1"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".orient":{
"owner": "sc7a20",
"x":{ "type": "str", "ver": "0",
"data": "+y"
},
"y":{ "type": "str", "ver": "0",
"data": "+x"
},
"z":{ "type": "str", "ver": "0",
"data": "-z"
}
},
".accel":{
"owner": "sc7a20",
".fac_cal":{
"owner": "sc7a20",
".corr_mat":{
"owner": "sc7a20",
"0_0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"0_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"0_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1_2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2_2":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sc7a20",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"y":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"z":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".temp":{
"owner": "sc7a20",
".fac_cal":
{
"owner": "sc7a20",
".scale":{
"owner": "sc7a20",
"x":{ "type": "flt", "ver": "0",
"data": "1.0"
}
},
".bias":{
"owner": "sc7a20",
"x":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
},
".md":{
"owner": "sc7a20",
".config":{
"owner": "sc7a20",
"thresh":{ "type": "flt", "ver": "0",
"data": "1.2264"
},
"disable":{ "type": "int", "ver": "0",
"data": "0"
},
"win":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
},
".placement":{
"owner": "sc7a20",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,150 @@
{
"config": {
"hw_platform": ["IDP"],
"soc_id": ["417", "420", "444", "445"]
},
"stk3a5x_0":{
"owner": "sns_stk3a5x",
".ambient_light":{
"owner": "sns_stk3a5x",
".config":{
"owner": "sns_stk3a5x",
"is_dri":{ "type": "int", "ver": "0",
"data": "0"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".proximity":{
"owner": "sns_stk3a5x",
".config":{
"owner": "sns_stk3a5x",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"stk3a5x_0_platform":{
"owner": "sns_stk3a5x",
".config":{
"owner": "sns_stk3a5x",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "1"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "70"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "35"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "3"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "1"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".als":{
"owner": "sns_stk3a5x",
".fac_cal":{
"owner": "sns_stk3a5x",
"scale":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"bias":{ "type": "flt", "ver": "0",
"data": "5000.0"
},
"als_other_1":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"als_other_2":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"als_other_3":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"als_other_4":{ "type": "flt", "ver": "0",
"data": "1.0"
}
}
},
".ps":{
"owner": "sns_stk3a5x",
".fac_cal":{
"owner": "sns_stk3a5x",
"near_threshold":{ "type": "flt", "ver": "0",
"data": "5000.0"
},
"far_threshold":{ "type": "flt", "ver": "0",
"data": "3000.0"
},
"fac_ct":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"ht_n_ct":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"lt_n_ct":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"ps_ver":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"ps_other_1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"ps_other_2":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
}
@@ -0,0 +1,273 @@
{
"config":{
"hw_platform": ["IDP"],
"soc_id": ["444"]
},
"sx932x_0":{
"owner": "sx932x_0",
".sar":{
"owner": "sx932x_0",
".config":{
"owner": "sx932x_0",
"is_dri":{ "type": "int", "ver": "1",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "2"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"sx932x_0_platform":{
"owner": "sns_sx932x",
".config":{
"owner": "sns_sx932x",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "2"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "40"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "100"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "36"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "3"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "1"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "1"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".placement":{
"owner": "sns_sx932x",
"0":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "2.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "3.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "4.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "5.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "6.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "7.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
},
".thresh":{
"owner": "sns_sx932x",
"threshold_0":{ "type": "flt", "ver": "50",
"data": "25.0"
},
"threshold_1":{ "type": "flt", "ver": "50",
"data": "25.0"
},
"threshold_2":{ "type": "flt", "ver": "50",
"data": "25.0"
},
"threshold_3":{ "type": "flt", "ver": "50",
"data": "25.0"
}
},
".offset":{
"owner": "sns_sx932x",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
}
},
".register":{
"owner": "sns_sx932x",
"Is_config":{ "type": "int", "ver": "0",
"data": "0"
},
"RegAFEPH0_0x28":{ "type": "int", "ver": "0",
"data": "40"
},
"RegAFEPH0":{ "type": "int", "ver": "0",
"data": "36"
},
"RegAFEPH1_0x29":{ "type": "int", "ver": "0",
"data": "41"
},
"RegAFEPH1":{ "type": "int", "ver": "0",
"data": "36"
},
"RegAFEPH2_0x2A":{ "type": "int", "ver": "0",
"data": "42"
},
"RegAFEPH2":{ "type": "int", "ver": "0",
"data": "36"
},
"RegAFEPH3_0x2B":{ "type": "int", "ver": "0",
"data": "43"
},
"RegAFEPH3":{ "type": "int", "ver": "0",
"data": "36"
},
"RegAFECTR4_0x24":{ "type": "int", "ver": "0",
"data": "36"
},
"RegAFECTR4":{ "type": "int", "ver": "0",
"data": "0"
},
"RegAFECTR7_0x27":{ "type": "int", "ver": "0",
"data": "37"
},
"RegAFECTR7":{ "type": "int", "ver": "0",
"data": "71"
},
"RegAFECTR3_0x23":{ "type": "int", "ver": "0",
"data": "35"
},
"RegAFECTR3":{ "type": "int", "ver": "0",
"data": "0"
},
"RegAFECTR6_0x26":{ "type": "int", "ver": "0",
"data": "38"
},
"RegAFECTR6":{ "type": "int", "ver": "0",
"data": "0"
},
"RegAFECTR8_0x2C":{ "type": "int", "ver": "0",
"data": "44"
},
"RegAFECTR8":{ "type": "int", "ver": "0",
"data": "18"
},
"RegAFECTR9_0x2D":{ "type": "int", "ver": "0",
"data": "45"
},
"RegAFECTR9":{ "type": "int", "ver": "0",
"data": "0"
},
"RegPROCTR0_0x30":{ "type": "int", "ver": "0",
"data": "48"
},
"RegPROCTR0":{ "type": "int", "ver": "0",
"data": "0"
},
"RegPROCTR1_0x31":{ "type": "int", "ver": "0",
"data": "49"
},
"RegPROCTR1":{ "type": "int", "ver": "0",
"data": "0"
},
"RegPROCTR4_0x34":{ "type": "int", "ver": "0",
"data": "52"
},
"RegPROCTR4":{ "type": "int", "ver": "0",
"data": "10"
},
"RegPROCTR5_0x35":{ "type": "int", "ver": "0",
"data": "53"
},
"RegPROCTR5":{ "type": "int", "ver": "0",
"data": "0"
},
"RegPROCTR6_0x36":{ "type": "int", "ver": "0",
"data": "54"
},
"RegPROCTR6":{ "type": "int", "ver": "0",
"data": "19"
},
"RegPROCTR7_0x37":{ "type": "int", "ver": "0",
"data": "55"
},
"RegPROCTR7":{ "type": "int", "ver": "0",
"data": "19"
},
"RegADVCTR2_0x42":{ "type": "int", "ver": "0",
"data": "66"
},
"RegADVCTR2":{ "type": "int", "ver": "0",
"data": "0"
},
"RegADVCTR3_0x43":{ "type": "int", "ver": "0",
"data": "67"
},
"RegADVCTR3":{ "type": "int", "ver": "0",
"data": "0"
},
"RegADVCTR4_0x44":{ "type": "int", "ver": "0",
"data": "68"
},
"RegADVCTR4":{ "type": "int", "ver": "0",
"data": "0"
},
"RegCTRL1_0x11":{ "type": "int", "ver": "0",
"data": "17"
},
"RegCTRL1Src":{ "type": "int", "ver": "0",
"data": "39"
}
}
}
}
@@ -0,0 +1,264 @@
{
"config":{
"hw_platform": ["IDP", "IOT"],
"soc_id": ["417", "420", "444", "445", "469", "470", "518"]
},
"tmd2725_0":{
"owner": "sns_tmd2725",
".als":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "3"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
},
".prox":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"is_dri":{ "type": "int", "ver": "0",
"data": "1"
},
"hw_id":{ "type": "int", "ver": "0",
"data": "0"
},
"res_idx":{ "type": "int", "ver": "0",
"data": "0"
},
"sync_stream":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
},
"tmd2725_0_platform":{
"owner": "sns_tmd2725",
".config":{
"owner": "sns_tmd2725",
"bus_type":{ "type": "int", "ver": "0",
"data": "0"
},
"bus_instance":{ "type": "int", "ver": "0",
"data": "1"
},
"slave_config":{ "type": "int", "ver": "0",
"data": "57"
},
"min_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"max_bus_speed_khz":{ "type": "int", "ver": "0",
"data": "400"
},
"reg_addr_type":{ "type": "int", "ver": "0",
"data": "0"
},
"dri_irq_num":{ "type": "int", "ver": "0",
"data": "35"
},
"irq_pull_type":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_is_chip_pin":{ "type": "int", "ver": "0",
"data": "1"
},
"irq_drive_strength":{ "type": "int", "ver": "0",
"data": "0"
},
"irq_trigger_type":{ "type": "int", "ver": "0",
"data": "1"
},
"num_rail":{ "type": "int", "ver": "0",
"data": "2"
},
"rail_on_state":{ "type": "int", "ver": "0",
"data": "2"
},
"vddio_rail":{ "type": "str", "ver": "0",
"data": "/pmic/client/sensor_vddio"
},
"vdd_rail":{ "type": "str", "ver": "0",
"data": "/see/rail/eLDO"
},
"rigid_body_type":{ "type": "int", "ver": "0",
"data": "0"
}
},
".als":{
"owner": "sns_tmd2725",
".fac_cal":{
"owner": "sns_tmd2725",
"scale":{ "type": "flt", "ver": "0",
"data": "1875.0"
},
"bias":{ "type": "flt", "ver": "0",
"data": "2000.0"
}
},
".custom_cal":{
"owner": "sns_tmd2725",
"l0_factor":{ "type": "flt", "ver": "0",
"data": "1000.0"
},
"l1_factor":{ "type": "flt", "ver": "0",
"data": "260.0"
},
"l2_factor":{ "type": "flt", "ver": "0",
"data": "800.0"
},
"l3_factor":{ "type": "flt", "ver": "0",
"data": "270.0"
},
"d_factor":{ "type": "flt", "ver": "0",
"data": "41.0"
}
},
".def_config":{
"owner": "sns_tmd2725",
"a_time":{ "type": "flt", "ver": "0",
"data": "90000.0"
},
"w_time":{ "type": "flt", "ver": "0",
"data": "28.0"
},
"w_long":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"a_gain":{ "type": "flt", "ver": "0",
"data": "16000.0"
},
"a_pers":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"a_upperThrs":{ "type": "flt", "ver": "0",
"data": "5.0"
},
"a_lowerThrs":{ "type": "flt", "ver": "0",
"data": "5.0"
},
"a_thrsWidth":{ "type": "flt", "ver": "0",
"data": "10.0"
}
},
".cal_target":{
"owner": "sns_tmd2725",
"lux_cal_target":{ "type": "flt", "ver": "0",
"data": "300.0"
},
"lux_cal_target_tolerance":{ "type": "flt", "ver": "0",
"data": "15.0"
}
}
},
".prox":{
"owner": "sns_tmd2725",
".fac_cal":{
"owner": "sns_tmd2725",
"near_threshold":{ "type": "flt", "ver": "0",
"data": "58.0"
},
"far_threshold":{ "type": "flt", "ver": "0",
"data": "19.0"
}
},
".proxOffset_hWcal":{
"owner": "sns_tmd2725",
"proxOffset":{ "type": "flt", "ver": "0",
"data": "4.0"
},
"proxOffsetSign":{ "type": "flt", "ver": "0",
"data": "0.0"
}
},
".def_config":{
"owner": "sns_tmd2725",
"ptime":{ "type": "flt", "ver": "0",
"data": "49896.0"
},
"pwait_time":{ "type": "flt", "ver": "0",
"data": "28.0"
},
"ppulse_len":{ "type": "flt", "ver": "0",
"data": "1.0"
},
"ppulse":{ "type": "flt", "ver": "0",
"data": "17.0"
},
"pgain":{ "type": "flt", "ver": "0",
"data": "4000.0"
},
"pldrive":{ "type": "flt", "ver": "0",
"data": "24.0"
},
"ppers":{ "type": "flt", "ver": "0",
"data": "2.0"
},
"pupper_thrs":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"plower_thrs":{ "type": "flt", "ver": "0",
"data": "255.0"
},
"poffset_sign":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"poffset_L":{ "type": "flt", "ver": "0",
"data": "50.0"
},
"pBinSearch":{ "type": "flt", "ver": "0",
"data": "2.0"
}
}
},
".placement":{
"owner": "sns_tmd2725",
"0":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"1":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"3":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"4":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"5":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"6":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"7":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"8":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"9":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"10":{ "type": "flt", "ver": "0",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "0",
"data": "0.0"
}
}
}
}
@@ -0,0 +1,16 @@
{
"config":{
},
"sns_dynamic_sensors":
{
"owner":"sns_dynamic_sensors",
"sns_bring_to_ear_register":
{
"type" : "str",
"ver" : "0",
"data" : "sns_bring_to_ear.so"
}
}
}
+49
View File
@@ -0,0 +1,49 @@
{
"config":
{
"hw_platform": ["IDP"],
"soc_id": ["444"]
},
"vpg_0_platform":{
"owner": "sns_vpg",
".settings":{
"owner": "sns_vmc",
"0":{ "type": "flt", "ver": "2",
"data": "85.0"
},
"1":{ "type": "flt", "ver": "2",
"data": "0.0"
},
"2":{ "type": "flt", "ver": "2",
"data": "0.1"
},
"3":{ "type": "flt", "ver": "2",
"data": "0.001"
},
"4":{ "type": "flt", "ver": "2",
"data": "0.001"
},
"5":{ "type": "flt", "ver": "2",
"data": "12.0"
},
"6":{ "type": "flt", "ver": "2",
"data": "12.0"
},
"7":{ "type": "flt", "ver": "2",
"data": "0.04"
},
"8":{ "type": "flt", "ver": "2",
"data": "0.08"
},
"9":{ "type": "flt", "ver": "2",
"data": "0.15"
},
"10":{ "type": "flt", "ver": "2",
"data": "0.0"
},
"11":{ "type": "flt", "ver": "2",
"data": "0.0"
}
}
}
}
+16
View File
@@ -0,0 +1,16 @@
{
"config": {
"hw_platform": [ "MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "339", "340", "347", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400",
"407", "417", "440", "415", "439", "416", "437", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "455", "456", "454","450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "496", "497", "498", "515", "507", "518"]
},
"sns_amd": {
"owner": "sns_amd",
"param1": {"ver": "0","type": "flt","data": "0.06"
},
"param2": {"ver": "0","type": "flt","data": "0.5"
},
"sample_rate": {"ver": "0","type": "flt", "data": "10.0"
}
}
}
@@ -0,0 +1,11 @@
{
"config": {
"hw_platform": [ "MTP", "Dragon", "Surf", "QRD", "HDK"],
"soc_id": ["339", "340", "361", "415", "439", "456", "501", "502"]
},
"sns_amd": {
"owner": "sns_amd",
"enabled": {"ver": "0","type": "int", "data": "0"
}
}
}
@@ -0,0 +1,12 @@
{
"config": {
"hw_platform": [ "MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "347", "341", "355", "360", "365", "366", "393", "394", "400", "407", "417", "440",
"416", "437", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "454", "450", "476", "467", "468", "469", "470", "473", "474", "475", "497", "498", "515", "507", "518"]
},
"sns_amd": {
"owner": "sns_amd",
"enabled": {"ver": "0","type": "int", "data": "1"
}
}
}
+10
View File
@@ -0,0 +1,10 @@
{
"config":{
},
"sns_aont": {
"owner": "sns_aont",
"aont_enable":{ "type": "int", "ver": "0",
"data": "1"
}
}
}
@@ -0,0 +1,37 @@
{
"config":{
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417","440",
"415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454", "450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_basic_gestures": {
"owner": "sns_basic_gestures",
"sample_rate": { "type": "flt", "ver": "0",
"data": "30.0"
},
"push_threshold": { "type": "flt", "ver": "0",
"data": "14.7178"
},
"pull_threshold": { "type": "flt", "ver": "0",
"data": "14.7178"
},
"shake_threshold": { "type": "flt", "ver": "0",
"data": "14.7178"
},
"sleep": { "type": "flt", "ver": "0",
"data": "0.3"
},
"param1": { "type": "flt", "ver": "0",
"data": "0.1"
},
"param2": { "type": "flt", "ver": "0",
"data": "4.9059"
},
"param3": { "type": "flt", "ver": "0",
"data": "0.1"
},
"param4": { "type": "flt", "ver": "0",
"data": "0.2618"
}
}
}
@@ -0,0 +1,37 @@
{
"config":{
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417",
"415", "439", "440", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_bring_to_ear": {
"owner": "sns_bring_to_ear",
"sample_rate": { "type": "flt", "ver": "0",
"data": "30.0"
},
"facing_angle_threshold": { "type": "flt", "ver": "0",
"data": "1.1345"
},
"horiz_angle_threshold": { "type": "flt", "ver": "0",
"data": "0.3491"
},
"vert_angle_threshold": { "type": "flt", "ver": "0",
"data": "0.3491"
},
"proximity_enable": { "type": "int", "ver": "0",
"data": "0"
},
"param1": { "type": "flt", "ver": "0",
"data": "2.943"
},
"param2": { "type": "flt", "ver": "0",
"data": "0.2"
},
"param3": { "type": "flt", "ver": "0",
"data": "0.2618"
},
"param4": {"type": "flt", "ver": "0",
"data": "0.2"
}
}
}
+150
View File
@@ -0,0 +1,150 @@
{
"config": {
"hw_platform": ["MTP","QRD","Dragon","Surf", "HDK"],
"soc_id": ["339", "340", "356", "361", "415", "439", "456", "501", "502"]
},
"ccd_amd": {
"owner": "sns_ccd",
"h2": { "ver": "0","type": "int",
"data": "50"},
"disable_flush_only": { "ver": "0","type": "int",
"data": "0"}
},
"ccd_ttw": {
"owner": "sns_ccd",
"te0_ratecfg": { "ver": "0","type": "int",
"data": "0x1" },
"te0_xmd_win_len_samp": { "ver": "0","type": "int",
"data": "0x4" },
"te0_xmd_threshhold1": { "ver": "0","type": "int",
"data": "0x4B00" },
"te0_xmd_threshhold2": { "ver": "0","type": "int",
"data": "0x0" },
"te0_xmd_hysteresis1": { "ver": "0","type": "int",
"data": "0x0" },
"te0_xmd_hysteresis2": { "ver": "0","type": "int",
"data": "0x0" },
"te0_tilt_win_sum_shift": { "ver": "0","type": "int",
"data": "0x2" },
"te0_tr_win_len_samples": { "ver": "0","type": "int",
"data": "0xD" },
"te0_tr_angle_cosine_sq": { "ver": "0","type": "int",
"data": "0x327" },
"te0_tr_decimate_en": { "ver": "0","type": "int",
"data": "0x0" },
"te0_tr_hysteresis": { "ver": "0","type": "int",
"data": "0x0" },
"te0_dt_angle_cosine_sq": { "ver": "0","type": "int",
"data": "0x2D0" },
"te0_dt_ref_gravity_latch": { "ver": "0","type": "int",
"data": "0x0" },
"te0_ori0_x_th_lower": { "ver": "0","type": "int",
"data": "0x1DED" },
"te0_ori0_x_th_upper": { "ver": "0","type": "int",
"data": "0x0213" },
"te0_ori0_y_th_lower": { "ver": "0","type": "int",
"data": "0x1B1D" },
"te0_ori0_y_th_upper": { "ver": "0","type": "int",
"data": "0x04E3" },
"te0_ori0_z_th_lower": { "ver": "0","type": "int",
"data": "0x1B44" },
"te0_ori0_z_th_upper": { "ver": "0","type": "int",
"data": "0x4D5" },
"te0_ori0_x_th_lower_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_ori0_x_th_upper_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_ori0_y_th_lower_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_ori0_y_th_upper_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_ori0_z_th_lower_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_ori0_z_th_upper_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_ori0_delay": { "ver": "0","type": "int",
"data": "0x0" },
"te0_ori1_x_th_lower": { "ver": "0","type": "int",
"data": "0x1C88" },
"te0_ori1_x_th_upper": { "ver": "0","type": "int",
"data": "0x377" },
"te0_ori1_y_th_lower": { "ver": "0","type": "int",
"data": "0x0" },
"te0_ori1_y_th_upper": { "ver": "0","type": "int",
"data": "0xF00" },
"te0_ori1_z_th_lower": { "ver": "0","type": "int",
"data": "0x0" },
"te0_ori1_z_th_upper": { "ver": "0","type": "int",
"data": "0xA00" },
"te0_ori1_x_th_lower_en": { "ver": "0","type": "int",
"data": "0x0" },
"te0_ori1_x_th_upper_en": { "ver": "0","type": "int",
"data": "0x0" },
"te0_ori1_y_th_lower_en": { "ver": "0","type": "int",
"data": "0x0" },
"te0_ori1_y_th_upper_en": { "ver": "0","type": "int",
"data": "0x0" },
"te0_ori1_z_th_lower_en": { "ver": "0","type": "int",
"data": "0x0" },
"te0_ori1_z_th_upper_en": { "ver": "0","type": "int",
"data": "0x0" },
"te0_ori1_delay": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd0_xmd_cfg1_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_csd0_xmd_cfg2_en": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd0_tr_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_csd0_ori0_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_csd0_xmd_cfg1_posthyst": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd0_xmd_cfg2_posthyst": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd0_tr_posthyst": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd0_ori_cfg1_posthyst": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd0_xmd_cfg1_inv": { "ver": "0","type": "int",
"data": "0x1" },
"te0_csd0_xmd_cfg2_inv": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd0_tr_inv": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd0_ori0_inv": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd0_delay": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd0_output_inv": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd1_xmd_cfg1_en": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd1_xmd_cfg2_en": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd1_tr_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_csd1_ori1_en": { "ver": "0","type": "int",
"data": "0x1" },
"te0_csd1_xmd_cfg1_posthyst": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd1_xmd_cfg2_posthyst": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd1_tr_posthyst": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd1_ori_cfg1_posthyst": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd1_xmd_cfg1_inv": { "ver": "0","type": "int",
"data": "0x1" },
"te0_csd1_xmd_cfg2_inv": { "ver": "0","type": "int",
"data": "0x1" },
"te0_csd1_tr_inv": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd1_ori1_inv": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd1_delay": { "ver": "0","type": "int",
"data": "0x0" },
"te0_csd1_output_inv": { "ver": "0","type": "int",
"data": "0x0" }
}
}
@@ -0,0 +1,17 @@
{
"config": {
"hw_platform": ["MTP","QRD","Dragon","Surf", "HDK"],
"soc_id": ["339", "340", "361"]
},
"ccd_walk": {
"owner": "sns_ccd",
"xct": { "ver": "0","type": "int",
"data": "0xA" },
"mls": { "ver": "0","type": "int",
"data": "0x6" },
"mps": { "ver": "0","type": "int",
"data": "0x4" },
"hmps": { "ver": "0","type": "int",
"data": "0x4" }
}
}
@@ -0,0 +1,39 @@
{
"config": {
"hw_platform": ["MTP", "Surf", "RCM", "QRD", "HDK"],
"soc_id": ["415", "439", "456", "501", "502"]
},
"ccd_walk": {
"owner": "sns_ccd",
"xct": { "ver": "0","type": "int",
"data": "0xA" },
"mls": { "ver": "0","type": "int",
"data": "0x6" },
"mps": { "ver": "0","type": "int",
"data": "0x4" },
"hmps": { "ver": "0","type": "int",
"data": "0x4" },
"hwln1": { "ver": "0","type": "int",
"data": "0xA" },
"mwln3": { "ver": "0","type": "int",
"data": "0xA" },
"hpe0": { "ver": "0","type": "int",
"data": "0x1" },
"lcb0": { "ver": "0","type": "int",
"data": "0xD17E" },
"lcb1": { "ver": "0","type": "int",
"data": "0x0889" },
"lcb2": { "ver": "0","type": "int",
"data": "0x16C7" },
"lcb3": { "ver": "0","type": "int",
"data": "0x0106" },
"lcb4": { "ver": "0","type": "int",
"data": "0x0324" },
"lcb5": { "ver": "0","type": "int",
"data": "0x3850" },
"lcb6": { "ver": "0","type": "int",
"data": "0xfffede4b" },
"ltt": { "ver": "0","type": "int",
"data": "0xFC9C" }
}
}
@@ -0,0 +1,39 @@
{
"config": {
"hw_platform": ["MTP", "Surf", "RCM", "QRD"],
"soc_id": ["356"]
},
"ccd_walk": {
"owner": "sns_ccd",
"xct": { "ver": "0","type": "int",
"data": "0xA" },
"mls": { "ver": "0","type": "int",
"data": "0x2" },
"mps": { "ver": "0","type": "int",
"data": "0x4" },
"hmps": { "ver": "0","type": "int",
"data": "0x2" },
"hwln1": { "ver": "0","type": "int",
"data": "0xA" },
"mwln3": { "ver": "0","type": "int",
"data": "0xA" },
"hpe0": { "ver": "0","type": "int",
"data": "0x1" },
"lcb0": { "ver": "0","type": "int",
"data": "0xE832" },
"lcb1": { "ver": "0","type": "int",
"data": "0x3F8" },
"lcb2": { "ver": "0","type": "int",
"data": "0x8E1" },
"lcb3": { "ver": "0","type": "int",
"data": "0x37B" },
"lcb4": { "ver": "0","type": "int",
"data": "0x1E6" },
"lcb5": { "ver": "0","type": "int",
"data": "0x2ADF" },
"lcb6": { "ver": "0","type": "int",
"data": "0xF9A" },
"ltt": { "ver": "0","type": "int",
"data": "0xFCFC" }
}
}
+19
View File
@@ -0,0 +1,19 @@
{
"config":{
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "300", "301", "305", "321", "336", "339", "341", "347", "355", "356", "360", "361", "365", "366", "393", "394", "400",
"407", "416", "417", "437", "440", "415", "439", "444", "445", "420", "424", "443", "459", "441", "471", "455", "456", "454", "450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "496", "497", "498", "515", "507", "518"]
},
"sns_cm":{
"owner": "sns_cm",
"heap_size":{ "type": "int", "ver": "0",
"data": "1572864"
},
"max_batch_disabled":{ "type": "int", "ver": "0",
"data": "0"
},
"min_batch_period_thrshld_ms":{ "type": "int", "ver": "0",
"data": "10"
}
}
}
+30
View File
@@ -0,0 +1,30 @@
{
"config":{
"hw_platform": ["MTP","QRD","Dragon","Surf", "HDK"],
"soc_id": ["339", "356", "361", "415", "439", "456", "501", "502"]
},
"dae":{
"owner": "sns_dae",
"use_sdc":{ "type": "int", "ver": "0",
"data": "1"
},
"debug_accel_values":{ "type": "int", "ver": "0",
"data": "0"
},
"dd_msg_mask":{ "type": "int", "ver": "0",
"data": "0"
},
"enable_qdss":{ "type": "int", "ver": "0",
"data": "0"
},
"dbg_mask":{ "type": "int", "ver": "0",
"data": "0"
},
"ulog_msg_mask":{ "type": "int", "ver": "0",
"data": "0x1F"
},
"fwk_msg_mask":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
@@ -0,0 +1,38 @@
{
"config":
{
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "300", "301", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407",
"417", "440", "415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454", "450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_device_orient_platform": {
"owner": "sns_device_orient",
".config":{
"owner": "sns_device_orient",
"param0": {
"type": "int", "ver": "0", "data": "4"
},
"param1": {
"type": "flt", "ver": "0", "data": "20.0"
},
"param2": {
"type": "flt", "ver": "0", "data": "0.25"
},
"param3": {
"type": "flt", "ver": "0", "data": "70.0"
},
"param4": {
"type": "flt", "ver": "0", "data": "45.0"
},
"param5": {
"type": "flt", "ver": "0", "data": "2.0"
},
"param6": {
"type": "flt", "ver": "0", "data": "15.0"
},
"param7": {
"type": "int", "ver": "0", "data": "1"
}
}
}
}
@@ -0,0 +1,379 @@
{
"config":
{
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "300", "301", "305", "321", "336", "339", "341", "347", "355", "356", "360", "361", "352", "365", "366", "393", "394", "400",
"407", "417", "440", "415", "439", "416", "437", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "455", "456", "454", "450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "496", "497", "498", "515", "507", "518"]
},
"sns_diag_config":
{
"owner":"diag_filter_sensor",
"qdss":
{
"type" : "int",
"ver" : "0",
"data" : "0"
}
},
"sns_diag_sensor_datatype":
{
"owner":"diag_filter_sensor",
"geomag_rv":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"game_rv":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"gravity":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"cm":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"accel":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"humidity":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"ambient_temperature":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"sensor_temperature":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"motion_detect":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"gyro":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"ultra_violet":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"pressure":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"mag":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"offbody_detect":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"thermopile":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"ambient_light":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"hall":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"proximity":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"rgb":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"test":
{
"type" : "int",
"ver" : "0",
"data" : "0"
},
"flush_test":
{
"type" : "int",
"ver" : "0",
"data" : "0"
},
"md_test":
{
"type" : "int",
"ver" : "0",
"data" : "0"
},
"da_test":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"amd":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"rmd":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"facing":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"gyro_cal":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"oem1":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"mag_cal":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"resampler":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"smd":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"basic_gestures":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"multishake":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"bring_to_ear":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"cmc":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"dpc":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"distance_bound":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"gyro_rot_matrix":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"fmv":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"rotv":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"pedometer":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"device_orient":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"tilt":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"tilt_to_wake":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"heart_rate":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"ppg":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"wrist_tilt_gesture":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"pedometer_wrist":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"data_acquisition_engine":
{
"type" : "int",
"ver" : "0",
"data" : "0"
},
"ccd_walk":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"ccd_ttw":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"ccd_hw":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"threshold":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"sar":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"radar":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"activity_recognition":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"dae_datalog":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"location":
{
"type" : "int",
"ver" : "0",
"data" : "1"
},
"step_detect":
{
"type" : "int",
"ver" : "0",
"data" : "1"
}
}
}
@@ -0,0 +1,11 @@
{
"config": {
},
"sns_direct_channel":
{
"owner": "sns_direct_channel",
"latency_enable":{ "type": "int", "ver": "0",
"data": "0"
}
}
}
@@ -0,0 +1,28 @@
{
"config": {
"hw_platform": [ "MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417",
"440", "415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454", "450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_distance_bound_speed_for_motion_states": {
"owner": "sns_distance_bound",
"unknown": {"ver": "0","type": "flt","data": "0.0"
},
"stationary": {"ver": "0","type": "flt","data": "0.0"
},
"move": {"ver": "0","type": "flt","data": "1.0"
},
"fiddle": {"ver": "0","type": "flt","data": "0.0"
},
"pedestrian": {"ver": "0","type": "flt","data": "1.0"
},
"vehicle": {"ver": "0","type": "flt","data": "16.67"
},
"walk": {"ver": "0","type": "flt","data": "1.1"
},
"run": {"ver": "0","type": "flt","data": "2.5"
},
"bike": {"ver": "0","type": "flt","data": "5.55"
}
}
}
+28
View File
@@ -0,0 +1,28 @@
{
"config": {
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417",
"440", "415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454", "450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_dpc": {
"owner": "sns_dpc",
"param1": {
"ver": "0", "type": "flt", "data": "0.5"
},
"param2": {
"ver": "0", "type": "flt", "data": "0.02"
},
"param3": {
"ver": "0", "type": "flt", "data": "0.04"
},
"param4": {
"ver": "0", "type": "flt", "data": "7.5"
},
"param5": {
"ver": "0", "type": "flt", "data": "0.1"
},
"param6": {
"ver": "0", "type": "flt", "data": "0.1746"
}
}
}
+25
View File
@@ -0,0 +1,25 @@
{
"config":{
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417",
"440", "415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454", "450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_facing": {
"owner": "sns_facing",
"angle_threshold": { "type": "flt", "ver": "0",
"data": "0.3491"
},
"report_neutral": { "type": "int", "ver": "0",
"data": "1"
},
"sample_rate": { "type": "flt", "ver": "0",
"data": "30.0"
},
"min_sample_rate": { "type": "flt", "ver": "0",
"data": "30.0"
},
"max_sample_rate": { "type": "flt", "ver": "0",
"data": "100.0"
}
}
}
+52
View File
@@ -0,0 +1,52 @@
{
"config":
{
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["415", "439", "456", "454","450", "469", "470", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_fmv_platform": {
"owner": "sns_fmv",
".config":{
"owner": "sns_fmv",
"accuracy_unknown": { "type": "int", "ver": "0",
"data": "30000"
},
"accuracy_abs_rest": { "type": "int", "ver": "0",
"data": "30000"
},
"accuracy_rel_rest": { "type": "int", "ver": "0",
"data": "30000"
},
"accuracy_motion": { "type": "int", "ver": "0",
"data": "30000"
},
"accuracy_fast_motion": { "type": "int", "ver": "0",
"data": "10000"
},
"gyro_gap_thresh": { "type": "int", "ver": "0",
"data": "500"
},
"mag_innov": { "type": "flt", "ver": "0",
"data": "9.0"
},
"mag_sample_gap_fac": { "type": "flt", "ver": "0",
"data": "1.0"
},
"tyro_thresh_for_zupt": { "type": "flt", "ver": "0",
"data": "0.001"
},
"amd_int_cfg_param1": { "type": "flt", "ver": "0",
"data": "0.000061"
},
"amd_int_cfg_param2": { "type": "flt", "ver": "0",
"data": "0.6"
},
"amd_int_cfg_param3": { "type": "flt", "ver": "0",
"data": "0.4"
},
"debug_mode": { "type": "int", "ver": "0",
"data": "0"
}
}
}
}
@@ -0,0 +1,53 @@
{
"config":
{
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP"],
"soc_id": ["291", "246", "300", "301", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417",
"440", "444", "445", "420", "424", "443", "434", "435", "459", "441", "467", "468", "471", "476", "473", "474", "515"]
},
"sns_fmv_platform": {
"owner": "sns_fmv",
".config":{
"owner": "sns_fmv",
"accuracy_unknown": { "type": "int", "ver": "0",
"data": "3000"
},
"accuracy_abs_rest": { "type": "int", "ver": "0",
"data": "250"
},
"accuracy_rel_rest": { "type": "int", "ver": "0",
"data": "1500"
},
"accuracy_motion": { "type": "int", "ver": "0",
"data": "3000"
},
"gyro_gap_thresh": { "type": "int", "ver": "0",
"data": "501"
},
"mag_innov": { "type": "flt", "ver": "0",
"data": "9.0"
},
"mag_sample_gap_fac": { "type": "flt", "ver": "0",
"data": "1.0"
},
"tyro_thresh_for_zupt": { "type": "flt", "ver": "0",
"data": "0.001"
},
"sensor_rpt_rate": { "type": "flt", "ver": "0",
"data": "1.0"
},
"def_sample_rate": { "type": "flt", "ver": "0",
"data": "5.0"
},
"amd_int_cfg_param1": { "type": "flt", "ver": "0",
"data": "0.06"
},
"amd_int_cfg_param2": { "type": "flt", "ver": "0",
"data": "0.5"
},
"amd_int_cfg_param5": { "type": "flt", "ver": "0",
"data": "0.16"
}
}
}
}
@@ -0,0 +1,29 @@
{
"config": {
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "300", "301", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417",
"440", "415", "439", "416", "437", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454", "450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_geomag_rv": {
"owner": "sns_geomag_rv",
".config": {
"owner": "sns_geomag_rv",
"gamerv_cfg_param1": {"type": "int","ver": "0","data": "300"
},
"gamerv_cfg_param2": {"type": "int","ver": "0","data": "300"
},
"fusion_min_samp_rate": {"type": "flt","ver": "0","data": "1.0"
},
"gamerv_def_rpt_rate": {"type": "flt","ver": "0","data": "1.0"
},
"gamerv_def_sample_rate": {"type": "flt","ver": "0","data": "5.0"
},
"amd_int_cfg_param1": {"type": "flt","ver": "0","data": "0.06"
},
"amd_int_cfg_param2": {"type": "flt","ver": "0","data": "0.5"
},
"game_rv_c_sys": {"type": "int","ver": "0","data": "0"
}
}
}
}
+25
View File
@@ -0,0 +1,25 @@
{
"config": {
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "300", "301", "305", "321", "336", "347", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400",
"407", "417", "440", "415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "455", "456", "454", "450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "496", "497", "498", "515", "507", "518"]
},
"sns_gyro_cal_config": {
"owner": "sns_gyro_cal",
"calibration_period": {"type": "int","ver": "0",
"data": "60"
},
"num_samples": {"type": "int","ver": "0",
"data": "64"
},
"variance_threshold": {"type": "flt","ver": "0",
"data": "0.00000085"
},
"sample_rate": {"type": "flt","ver": "0",
"data": "10.0"
},
"bias_threshold": {"type": "flt","ver": "0",
"data": "0.20"
}
}
}
@@ -0,0 +1,136 @@
{
"config": {
"hw_platform": [ "MTP", "Dragon", "Surf","QRD","HDK"
],
"soc_id": ["300", "301"]
},
"sns_heart_rate": {
"owner": "sns_heart_rate",
"sample_rate_ppg":{"ver": "0","type": "flt",
"data": "20.0"
},
"sample_rate_accel":{"ver": "0","type": "flt",
"data": "20.0"
},
"update_flterval_in_fft_samples":{"ver": "0","type": "int",
"data": "20.0"
},
"min_fft_fltervals_for_first_one_shot_update":{"ver": "0","type": "int",
"data": "7"
},
"min_fft_fltervals_for_first_continuous_update":{"ver": "0","type": "int",
"data": "7"
},
"max_bpm_age_for_warm_start":{"ver": "0","type": "int",
"data": "3276800"
},
"max_alpha":{"ver": "0","type": "flt",
"data": "1.0"
},
"min_alpha":{"ver": "0","type": "flt",
"data": "0.01"
},
"min_o_h":{"ver": "0","type": "flt",
"data": "0.5"
},
"max_o_h":{"ver": "0","type": "flt",
"data": "0.9"
},
"max_del_b":{"ver": "0","type": "flt",
"data": "10.0"
},
"acc_peak_distance":{"ver": "0","type": "int",
"data": "1"
},
"ppg_peak_distance":{"ver": "0","type": "int",
"data": "2"
},
"num_ppg_peaks":{"ver": "0","type": "int",
"data": "6"
},
"num_acc_peaks":{"ver": "0","type": "int",
"data": "6"
},
"peak_width_ppg":{"ver": "0","type": "int",
"data": "2"
},
"peak_thresh_ppg":{"ver": "0","type": "flt",
"data": "0.1"
},
"peak_thresh_acc":{"ver": "0","type": "flt",
"data": "0.1"
},
"max_ind_diff":{"ver": "0","type": "int",
"data": "10"
},
"max_acc_thr":{"ver": "0","type": "flt",
"data": "80"
},
"harm_acc_thr":{"ver": "0","type": "flt",
"data": "0.6"
},
"oneshot_max_acc_thr":{"ver": "0","type": "flt",
"data": "10.0"
},
"oneshot_harm_acc_thr":{"ver": "0","type": "flt",
"data": "0.4"
},
"continuous_max_acc_thr":{"ver": "0","type": "flt",
"data": "80.0"
},
"continuous_harm_acc_thr":{"ver": "0","type": "flt",
"data": "0.6"
},
"globalminhr":{"ver": "0","type": "flt",
"data": "40.0"
},
"globalmaxhr":{"ver": "0","type": "flt",
"data": "250.0"
},
"num_samples_to_skip_after_reset":{"ver": "0","type": "int",
"data": "40"
},
"noaccel_thresh":{"ver": "0","type": "flt",
"data": "80000.0"
},
"max_blanked_ppg_segments":{"ver": "0","type": "int",
"data": "51"
},
"min_bad_spread_ratio_for_ppg_blanking":{"ver": "0","type": "flt",
"data": "2.3"
},
"max_blanked_accel_segments":{"ver": "0","type": "int",
"data": "0"
},
"min_bad_spread_ratio_for_accel_blanking":{"ver": "0","type": "flt",
"data": "2.3"
},
"accuracy_decay_alpha":{"ver": "0","type": "flt",
"data": "0.98"
},
"android_accuracy_low_thresh":{"ver": "0","type": "flt",
"data": "0.3"
},
"android_accuracy_high_thresh":{"ver": "0","type": "flt",
"data": "0.7"
},
"android_accuracy_medium_thresh":{"ver": "0","type": "flt",
"data": "0.45"
},
"do_minppg":{"ver": "0","type": "int",
"data": "1"
},
"do_mingoodppgtrack":{"ver": "0","type": "int",
"data": "0"
},
"do_width_harm":{"ver": "0","type": "int",
"data": "1"
},
"do_stride_is_hr_processing":{"ver": "0","type": "int",
"data": "0"
},
"alpha_lowpass":{"ver": "0","type": "flt",
"data": "0.27"
}
}
}
+16
View File
@@ -0,0 +1,16 @@
{
"config": {
"hw_platform": ["MTP", "Dragon", "Surf", "HDK", "IDP", "QRD", "IOT"],
"soc_id": ["339", "355", "356", "361", "365", "366", "394", "400", "407", "417", "440", "415", "439", "416", "437", "444", "445", "420",
"424", "443", "434", "435", "459", "441", "471", "456", "454","450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_mag_cal_config": {
"owner": "sns_mag_cal",
"anomaly_threshold": {"type": "flt","ver": "0",
"data": "200.0"
},
"sample_rate": { "type": "flt", "ver": "0",
"data": "25.0"
}
}
}
@@ -0,0 +1,12 @@
{
"config": {
"hw_platform": ["MTP", "Dragon", "Surf", "HDK", "IDP"],
"soc_id": ["291", "246", "300", "301", "305", "321", "336", "341", "360", "393"]
},
"sns_mag_cal_config": {
"owner": "sns_mag_cal",
"anomaly_threshold": {"type": "flt","ver": "0",
"data": "200.0"
}
}
}
@@ -0,0 +1,25 @@
{
"config": {
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417",
"440", "415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454","450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_multishake": {
"owner": "sns_multishake",
"min_shake_period": {
"ver": "0", "type": "flt", "data": "0.22"
},
"max_shake_period": {
"ver": "0", "type": "flt", "data": "0.7"
},
"sleep_time": {
"ver": "0", "type": "flt", "data": "0.12"
},
"shake_thresh": {
"ver": "0", "type": "flt", "data": "1.5"
},
"sample_rate": {
"ver": "0", "type": "flt", "data": "100.0"
}
}
}
@@ -0,0 +1,34 @@
{
"config": {
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417",
"440", "415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454","450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_pedometer": {
"owner": "sns_pedometer",
"param8": {
"ver": "0", "type": "flt", "data": "3.0"
},
"param7": {
"ver": "0", "type": "flt", "data": "0.5"
},
"param6": {
"ver": "0", "type": "flt", "data": "4.0"
},
"param5": {
"ver": "0", "type": "flt", "data": "0.2"
},
"param4": {
"ver": "0", "type": "flt", "data": "0.02"
},
"param3": {
"ver": "0", "type": "flt", "data": "0.1"
},
"param2": {
"ver": "0", "type": "flt", "data": "0.5"
},
"param1": {
"ver": "0", "type": "flt", "data": "0.0"
}
}
}
+25
View File
@@ -0,0 +1,25 @@
{
"config": {
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "300", "301", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394",
"400", "407", "417", "440", "415", "439", "416", "437", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454","450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_rmd": {
"owner": "sns_rmd",
"param4": {
"ver": "0", "type": "flt", "data": "0.2"
},
"param3": {
"ver": "0", "type": "flt", "data": "5"
},
"param2": {
"ver": "0", "type": "flt", "data": "0.2"
},
"param1": {
"ver": "0", "type": "flt", "data": "173"
},
"sample_rate": {
"ver": "0", "type": "flt", "data": "30.0"
}
}
}
+23
View File
@@ -0,0 +1,23 @@
{
"config":
{
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "300", "301", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400",
"407", "417", "440", "415", "439", "416", "437","444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454","450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_rotv_platform": {
"owner": "sns_rotv",
".config":{
"owner": "sns_rotv",
"min_report_rate": {
"type": "flt", "ver": "0", "data": "1.0"
},
"debug_mode": {
"type": "int", "ver": "0", "data": "0"
},
"sample_rate": {
"type": "flt", "ver": "0", "data": "5.0"
}
}
}
}
+40
View File
@@ -0,0 +1,40 @@
{
"config": {
"hw_platform": ["MTP", "Dragon", "Surf", "QRD", "HDK", "IDP", "IOT"],
"soc_id": ["291", "246", "300", "301", "305", "321", "336", "339", "341", "355", "356", "360", "361", "365", "366", "393", "347", "394", "400",
"407", "416", "417", "437", "440", "415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454","450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_smd": {
"owner": "sns_smd",
"sample_rate": {
"ver": "0", "type": "flt", "data": "10.0"
},
"accel_window_time": {
"ver": "0", "type": "int", "data": "5"
},
"detect_threshold": {
"ver": "0", "type": "flt", "data": "0.158113883"
},
"self_transition_prob_sm": {
"ver": "0", "type": "flt", "data": "0.9"
},
"variable_decision_latency": {
"ver": "0", "type": "int", "data": "1"
},
"max_latency": {
"ver": "0", "type": "int", "data": "10"
},
"step_count_thresh": {
"ver": "0", "type": "int", "data": "5"
},
"step_window_time": {
"ver": "0", "type": "int", "data": "3"
},
"eigen_thresh": {
"ver": "0", "type": "flt", "data": "6.0"
},
"accel_norm_std_thresh": {
"ver": "0", "type": "flt", "data": "2.0"
}
}
}
+18
View File
@@ -0,0 +1,18 @@
{
"config": {
"hw_platform": [ "MTP", "Dragon", "Surf", "HDK", "IDP", "QRD", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "339", "340", "341", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417",
"440", "415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454","450", "476", "467", "468", "469", "470", "473", "474", "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_tilt": {
"owner": "sns_tilt",
"sample_rate": {"ver": "0","type": "flt","data": "10.0"
},
"angle_threshold": {"ver": "0","type": "flt","data": "0.61086524"
},
"init_accel_window_time": {"ver": "0","type": "flt", "data": "1.0"
},
"accel_window_time": {"ver": "0","type": "flt", "data": "2.0"
}
}
}
@@ -0,0 +1,11 @@
{
"config": {
"hw_platform": [ "MTP", "Dragon", "Surf", "HDK", "QRD"],
"soc_id": ["339", "340", "356", "361", "415", "439", "456", "501", "502"]
},
"sns_tilt": {
"owner": "sns_tilt",
"enabled": {"ver": "0","type": "int", "data": "0"
}
}
}
@@ -0,0 +1,12 @@
{
"config": {
"hw_platform": [ "MTP", "Dragon", "Surf", "HDK", "IDP", "QRD", "IOT"],
"soc_id": ["291", "246", "305", "321", "336", "341", "355", "360", "365", "366", "393", "394", "400", "407", "417", "440", "444", "445", "420", "424", "443",
"434", "435", "459", "441", "471", "454","450", "476", "467", "468", "469", "470", "473", "474", "475", "497", "498", "515", "507", "518"]
},
"sns_tilt": {
"owner": "sns_tilt",
"enabled": {"ver": "0","type": "int", "data": "1"
}
}
}
@@ -0,0 +1,48 @@
{
"config": {
"hw_platform": [ "MTP", "Dragon", "Surf", "IDP", "QRD", "IOT"
],
"soc_id": ["291", "246", "305", "321", "336", "339", "355", "356", "360", "361", "365", "366", "393", "394", "400", "407", "417", "440",
"415", "439", "444", "445", "420", "424", "443", "434", "435", "459", "441", "471", "456", "454","450", "476", "467", "468", "469", "470", "473", "474"
, "501", "502", "475", "497", "498", "515", "507", "518"]
},
"sns_tilt_to_wake": {
"owner": "sns_tilt_to_wake",
"accel_sampling_rate":{"ver": "0","type": "flt",
"data": "25.0"
},
"filter_window_seconds":{"ver": "0","type": "flt",
"data": "0.16"
},
"accel_window_seconds":{"ver": "0","type": "flt",
"data": "1.1"
},
"accel_sub_window_seconds":{"ver": "0","type": "flt",
"data": "0.55"
},
"window_for_accel_stability_check_seconds":{"ver": "0","type": "flt",
"data": "0.16"
},
"min_delta_pitch_threshold_deg":{"ver": "0","type": "flt",
"data": "45.0"
},
"min_pitch_threshold_deg":{"ver": "0","type": "flt",
"data": "40.0"
},
"min_abs_delta_z_threshold_deg":{"ver": "0","type": "flt",
"data": "10.0"
},
"max_roll_threshold_deg":{"ver": "0","type": "flt",
"data": "25.0"
},
"max_accel_spread_threshold":{"ver": "0","type": "flt",
"data": "4.8"
},
"max_accel_norm_deviation_from_G_threshold":{"ver": "0","type": "flt",
"data": "2.7"
},
"max_pitch_threshold_deg":{"ver": "0","type": "flt",
"data": "200.0"
}
}
}
@@ -0,0 +1,28 @@
{
"config": {
"hw_platform": [
"MTP", "Dragon", "Surf", "QRD" ],
"soc_id": ["300", "301"]
},
"sns_wrist_pedo": {
"owner": "sns_wrist_pedo",
"default_disable": {
"ver": "0", "type": "int", "data": "0"
},
"sample_rate": {
"ver": "0", "type": "flt", "data": "20.0"
},
"step_count_threshold": {
"ver": "0", "type": "int", "data": "0"
},
"step_threshold": {
"ver": "0", "type": "flt", "data": "10.1"
},
"swing_threshold": {
"ver": "0", "type": "flt", "data": "10.5"
},
"step_prob_threshold": {
"ver": "0", "type": "flt", "data": "0.49"
}
}
}
+1
View File
@@ -0,0 +1 @@
sensors.ssc.so
+885
View File
@@ -0,0 +1,885 @@
// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc. All rights reserved.
// https://developers.google.com/protocol-buffers/
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// Author: kenton@google.com (Kenton Varda)
// Based on original Protocol Buffers design by
// Sanjay Ghemawat, Jeff Dean, and others.
//
// The messages in this file describe the definitions found in .proto files.
// A valid .proto file can be translated directly to a FileDescriptorProto
// without any other information (e.g. without reading its imports).
syntax = "proto2";
package google.protobuf;
option go_package = "github.com/golang/protobuf/protoc-gen-go/descriptor;descriptor";
option java_package = "com.google.protobuf";
option java_outer_classname = "DescriptorProtos";
option csharp_namespace = "Google.Protobuf.Reflection";
option objc_class_prefix = "GPB";
option cc_enable_arenas = true;
// descriptor.proto must be optimized for speed because reflection-based
// algorithms don't work during bootstrapping.
option optimize_for = SPEED;
// The protocol compiler can output a FileDescriptorSet containing the .proto
// files it parses.
message FileDescriptorSet {
repeated FileDescriptorProto file = 1;
}
// Describes a complete .proto file.
message FileDescriptorProto {
optional string name = 1; // file name, relative to root of source tree
optional string package = 2; // e.g. "foo", "foo.bar", etc.
// Names of files imported by this file.
repeated string dependency = 3;
// Indexes of the public imported files in the dependency list above.
repeated int32 public_dependency = 10;
// Indexes of the weak imported files in the dependency list.
// For Google-internal migration only. Do not use.
repeated int32 weak_dependency = 11;
// All top-level definitions in this file.
repeated DescriptorProto message_type = 4;
repeated EnumDescriptorProto enum_type = 5;
repeated ServiceDescriptorProto service = 6;
repeated FieldDescriptorProto extension = 7;
optional FileOptions options = 8;
// This field contains optional information about the original source code.
// You may safely remove this entire field without harming runtime
// functionality of the descriptors -- the information is needed only by
// development tools.
optional SourceCodeInfo source_code_info = 9;
// The syntax of the proto file.
// The supported values are "proto2" and "proto3".
optional string syntax = 12;
}
// Describes a message type.
message DescriptorProto {
optional string name = 1;
repeated FieldDescriptorProto field = 2;
repeated FieldDescriptorProto extension = 6;
repeated DescriptorProto nested_type = 3;
repeated EnumDescriptorProto enum_type = 4;
message ExtensionRange {
optional int32 start = 1; // Inclusive.
optional int32 end = 2; // Exclusive.
optional ExtensionRangeOptions options = 3;
}
repeated ExtensionRange extension_range = 5;
repeated OneofDescriptorProto oneof_decl = 8;
optional MessageOptions options = 7;
// Range of reserved tag numbers. Reserved tag numbers may not be used by
// fields or extension ranges in the same message. Reserved ranges may
// not overlap.
message ReservedRange {
optional int32 start = 1; // Inclusive.
optional int32 end = 2; // Exclusive.
}
repeated ReservedRange reserved_range = 9;
// Reserved field names, which may not be used by fields in the same message.
// A given name may only be reserved once.
repeated string reserved_name = 10;
}
message ExtensionRangeOptions {
// The parser stores options it doesn't recognize here. See above.
repeated UninterpretedOption uninterpreted_option = 999;
// Clients can define custom options in extensions of this message. See above.
extensions 1000 to max;
}
// Describes a field within a message.
message FieldDescriptorProto {
enum Type {
// 0 is reserved for errors.
// Order is weird for historical reasons.
TYPE_DOUBLE = 1;
TYPE_FLOAT = 2;
// Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if
// negative values are likely.
TYPE_INT64 = 3;
TYPE_UINT64 = 4;
// Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if
// negative values are likely.
TYPE_INT32 = 5;
TYPE_FIXED64 = 6;
TYPE_FIXED32 = 7;
TYPE_BOOL = 8;
TYPE_STRING = 9;
// Tag-delimited aggregate.
// Group type is deprecated and not supported in proto3. However, Proto3
// implementations should still be able to parse the group wire format and
// treat group fields as unknown fields.
TYPE_GROUP = 10;
TYPE_MESSAGE = 11; // Length-delimited aggregate.
// New in version 2.
TYPE_BYTES = 12;
TYPE_UINT32 = 13;
TYPE_ENUM = 14;
TYPE_SFIXED32 = 15;
TYPE_SFIXED64 = 16;
TYPE_SINT32 = 17; // Uses ZigZag encoding.
TYPE_SINT64 = 18; // Uses ZigZag encoding.
}
enum Label {
// 0 is reserved for errors
LABEL_OPTIONAL = 1;
LABEL_REQUIRED = 2;
LABEL_REPEATED = 3;
}
optional string name = 1;
optional int32 number = 3;
optional Label label = 4;
// If type_name is set, this need not be set. If both this and type_name
// are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
optional Type type = 5;
// For message and enum types, this is the name of the type. If the name
// starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
// rules are used to find the type (i.e. first the nested types within this
// message are searched, then within the parent, on up to the root
// namespace).
optional string type_name = 6;
// For extensions, this is the name of the type being extended. It is
// resolved in the same manner as type_name.
optional string extendee = 2;
// For numeric types, contains the original text representation of the value.
// For booleans, "true" or "false".
// For strings, contains the default text contents (not escaped in any way).
// For bytes, contains the C escaped value. All bytes >= 128 are escaped.
// TODO(kenton): Base-64 encode?
optional string default_value = 7;
// If set, gives the index of a oneof in the containing type's oneof_decl
// list. This field is a member of that oneof.
optional int32 oneof_index = 9;
// JSON name of this field. The value is set by protocol compiler. If the
// user has set a "json_name" option on this field, that option's value
// will be used. Otherwise, it's deduced from the field's name by converting
// it to camelCase.
optional string json_name = 10;
optional FieldOptions options = 8;
}
// Describes a oneof.
message OneofDescriptorProto {
optional string name = 1;
optional OneofOptions options = 2;
}
// Describes an enum type.
message EnumDescriptorProto {
optional string name = 1;
repeated EnumValueDescriptorProto value = 2;
optional EnumOptions options = 3;
// Range of reserved numeric values. Reserved values may not be used by
// entries in the same enum. Reserved ranges may not overlap.
//
// Note that this is distinct from DescriptorProto.ReservedRange in that it
// is inclusive such that it can appropriately represent the entire int32
// domain.
message EnumReservedRange {
optional int32 start = 1; // Inclusive.
optional int32 end = 2; // Inclusive.
}
// Range of reserved numeric values. Reserved numeric values may not be used
// by enum values in the same enum declaration. Reserved ranges may not
// overlap.
repeated EnumReservedRange reserved_range = 4;
// Reserved enum value names, which may not be reused. A given name may only
// be reserved once.
repeated string reserved_name = 5;
}
// Describes a value within an enum.
message EnumValueDescriptorProto {
optional string name = 1;
optional int32 number = 2;
optional EnumValueOptions options = 3;
}
// Describes a service.
message ServiceDescriptorProto {
optional string name = 1;
repeated MethodDescriptorProto method = 2;
optional ServiceOptions options = 3;
}
// Describes a method of a service.
message MethodDescriptorProto {
optional string name = 1;
// Input and output type names. These are resolved in the same way as
// FieldDescriptorProto.type_name, but must refer to a message type.
optional string input_type = 2;
optional string output_type = 3;
optional MethodOptions options = 4;
// Identifies if client streams multiple client messages
optional bool client_streaming = 5 [default = false];
// Identifies if server streams multiple server messages
optional bool server_streaming = 6 [default = false];
}
// ===================================================================
// Options
// Each of the definitions above may have "options" attached. These are
// just annotations which may cause code to be generated slightly differently
// or may contain hints for code that manipulates protocol messages.
//
// Clients may define custom options as extensions of the *Options messages.
// These extensions may not yet be known at parsing time, so the parser cannot
// store the values in them. Instead it stores them in a field in the *Options
// message called uninterpreted_option. This field must have the same name
// across all *Options messages. We then use this field to populate the
// extensions when we build a descriptor, at which point all protos have been
// parsed and so all extensions are known.
//
// Extension numbers for custom options may be chosen as follows:
// * For options which will only be used within a single application or
// organization, or for experimental options, use field numbers 50000
// through 99999. It is up to you to ensure that you do not use the
// same number for multiple options.
// * For options which will be published and used publicly by multiple
// independent entities, e-mail protobuf-global-extension-registry@google.com
// to reserve extension numbers. Simply provide your project name (e.g.
// Objective-C plugin) and your project website (if available) -- there's no
// need to explain how you intend to use them. Usually you only need one
// extension number. You can declare multiple options with only one extension
// number by putting them in a sub-message. See the Custom Options section of
// the docs for examples:
// https://developers.google.com/protocol-buffers/docs/proto#options
// If this turns out to be popular, a web service will be set up
// to automatically assign option numbers.
message FileOptions {
// Sets the Java package where classes generated from this .proto will be
// placed. By default, the proto package is used, but this is often
// inappropriate because proto packages do not normally start with backwards
// domain names.
optional string java_package = 1;
// If set, all the classes from the .proto file are wrapped in a single
// outer class with the given name. This applies to both Proto1
// (equivalent to the old "--one_java_file" option) and Proto2 (where
// a .proto always translates to a single class, but you may want to
// explicitly choose the class name).
optional string java_outer_classname = 8;
// If set true, then the Java code generator will generate a separate .java
// file for each top-level message, enum, and service defined in the .proto
// file. Thus, these types will *not* be nested inside the outer class
// named by java_outer_classname. However, the outer class will still be
// generated to contain the file's getDescriptor() method as well as any
// top-level extensions defined in the file.
optional bool java_multiple_files = 10 [default = false];
// This option does nothing.
optional bool java_generate_equals_and_hash = 20 [deprecated=true];
// If set true, then the Java2 code generator will generate code that
// throws an exception whenever an attempt is made to assign a non-UTF-8
// byte sequence to a string field.
// Message reflection will do the same.
// However, an extension field still accepts non-UTF-8 byte sequences.
// This option has no effect on when used with the lite runtime.
optional bool java_string_check_utf8 = 27 [default = false];
// Generated classes can be optimized for speed or code size.
enum OptimizeMode {
SPEED = 1; // Generate complete code for parsing, serialization,
// etc.
CODE_SIZE = 2; // Use ReflectionOps to implement these methods.
LITE_RUNTIME = 3; // Generate code using MessageLite and the lite runtime.
}
optional OptimizeMode optimize_for = 9 [default = SPEED];
// Sets the Go package where structs generated from this .proto will be
// placed. If omitted, the Go package will be derived from the following:
// - The basename of the package import path, if provided.
// - Otherwise, the package statement in the .proto file, if present.
// - Otherwise, the basename of the .proto file, without extension.
optional string go_package = 11;
// Should generic services be generated in each language? "Generic" services
// are not specific to any particular RPC system. They are generated by the
// main code generators in each language (without additional plugins).
// Generic services were the only kind of service generation supported by
// early versions of google.protobuf.
//
// Generic services are now considered deprecated in favor of using plugins
// that generate code specific to your particular RPC system. Therefore,
// these default to false. Old code which depends on generic services should
// explicitly set them to true.
optional bool cc_generic_services = 16 [default = false];
optional bool java_generic_services = 17 [default = false];
optional bool py_generic_services = 18 [default = false];
optional bool php_generic_services = 42 [default = false];
// Is this file deprecated?
// Depending on the target platform, this can emit Deprecated annotations
// for everything in the file, or it will be completely ignored; in the very
// least, this is a formalization for deprecating files.
optional bool deprecated = 23 [default = false];
// Enables the use of arenas for the proto messages in this file. This applies
// only to generated classes for C++.
optional bool cc_enable_arenas = 31 [default = false];
// Sets the objective c class prefix which is prepended to all objective c
// generated classes from this .proto. There is no default.
optional string objc_class_prefix = 36;
// Namespace for generated classes; defaults to the package.
optional string csharp_namespace = 37;
// By default Swift generators will take the proto package and CamelCase it
// replacing '.' with underscore and use that to prefix the types/symbols
// defined. When this options is provided, they will use this value instead
// to prefix the types/symbols defined.
optional string swift_prefix = 39;
// Sets the php class prefix which is prepended to all php generated classes
// from this .proto. Default is empty.
optional string php_class_prefix = 40;
// Use this option to change the namespace of php generated classes. Default
// is empty. When this option is empty, the package name will be used for
// determining the namespace.
optional string php_namespace = 41;
// Use this option to change the namespace of php generated metadata classes.
// Default is empty. When this option is empty, the proto file name will be
// used for determining the namespace.
optional string php_metadata_namespace = 44;
// Use this option to change the package of ruby generated classes. Default
// is empty. When this option is not set, the package name will be used for
// determining the ruby package.
optional string ruby_package = 45;
// The parser stores options it doesn't recognize here.
// See the documentation for the "Options" section above.
repeated UninterpretedOption uninterpreted_option = 999;
// Clients can define custom options in extensions of this message.
// See the documentation for the "Options" section above.
extensions 1000 to max;
reserved 38;
}
message MessageOptions {
// Set true to use the old proto1 MessageSet wire format for extensions.
// This is provided for backwards-compatibility with the MessageSet wire
// format. You should not use this for any other reason: It's less
// efficient, has fewer features, and is more complicated.
//
// The message must be defined exactly as follows:
// message Foo {
// option message_set_wire_format = true;
// extensions 4 to max;
// }
// Note that the message cannot have any defined fields; MessageSets only
// have extensions.
//
// All extensions of your type must be singular messages; e.g. they cannot
// be int32s, enums, or repeated messages.
//
// Because this is an option, the above two restrictions are not enforced by
// the protocol compiler.
optional bool message_set_wire_format = 1 [default = false];
// Disables the generation of the standard "descriptor()" accessor, which can
// conflict with a field of the same name. This is meant to make migration
// from proto1 easier; new code should avoid fields named "descriptor".
optional bool no_standard_descriptor_accessor = 2 [default = false];
// Is this message deprecated?
// Depending on the target platform, this can emit Deprecated annotations
// for the message, or it will be completely ignored; in the very least,
// this is a formalization for deprecating messages.
optional bool deprecated = 3 [default = false];
// Whether the message is an automatically generated map entry type for the
// maps field.
//
// For maps fields:
// map<KeyType, ValueType> map_field = 1;
// The parsed descriptor looks like:
// message MapFieldEntry {
// option map_entry = true;
// optional KeyType key = 1;
// optional ValueType value = 2;
// }
// repeated MapFieldEntry map_field = 1;
//
// Implementations may choose not to generate the map_entry=true message, but
// use a native map in the target language to hold the keys and values.
// The reflection APIs in such implementations still need to work as
// if the field is a repeated message field.
//
// NOTE: Do not set the option in .proto files. Always use the maps syntax
// instead. The option should only be implicitly set by the proto compiler
// parser.
optional bool map_entry = 7;
reserved 8; // javalite_serializable
reserved 9; // javanano_as_lite
// The parser stores options it doesn't recognize here. See above.
repeated UninterpretedOption uninterpreted_option = 999;
// Clients can define custom options in extensions of this message. See above.
extensions 1000 to max;
}
message FieldOptions {
// The ctype option instructs the C++ code generator to use a different
// representation of the field than it normally would. See the specific
// options below. This option is not yet implemented in the open source
// release -- sorry, we'll try to include it in a future version!
optional CType ctype = 1 [default = STRING];
enum CType {
// Default mode.
STRING = 0;
CORD = 1;
STRING_PIECE = 2;
}
// The packed option can be enabled for repeated primitive fields to enable
// a more efficient representation on the wire. Rather than repeatedly
// writing the tag and type for each element, the entire array is encoded as
// a single length-delimited blob. In proto3, only explicit setting it to
// false will avoid using packed encoding.
optional bool packed = 2;
// The jstype option determines the JavaScript type used for values of the
// field. The option is permitted only for 64 bit integral and fixed types
// (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING
// is represented as JavaScript string, which avoids loss of precision that
// can happen when a large value is converted to a floating point JavaScript.
// Specifying JS_NUMBER for the jstype causes the generated JavaScript code to
// use the JavaScript "number" type. The behavior of the default option
// JS_NORMAL is implementation dependent.
//
// This option is an enum to permit additional types to be added, e.g.
// goog.math.Integer.
optional JSType jstype = 6 [default = JS_NORMAL];
enum JSType {
// Use the default type.
JS_NORMAL = 0;
// Use JavaScript strings.
JS_STRING = 1;
// Use JavaScript numbers.
JS_NUMBER = 2;
}
// Should this field be parsed lazily? Lazy applies only to message-type
// fields. It means that when the outer message is initially parsed, the
// inner message's contents will not be parsed but instead stored in encoded
// form. The inner message will actually be parsed when it is first accessed.
//
// This is only a hint. Implementations are free to choose whether to use
// eager or lazy parsing regardless of the value of this option. However,
// setting this option true suggests that the protocol author believes that
// using lazy parsing on this field is worth the additional bookkeeping
// overhead typically needed to implement it.
//
// This option does not affect the public interface of any generated code;
// all method signatures remain the same. Furthermore, thread-safety of the
// interface is not affected by this option; const methods remain safe to
// call from multiple threads concurrently, while non-const methods continue
// to require exclusive access.
//
//
// Note that implementations may choose not to check required fields within
// a lazy sub-message. That is, calling IsInitialized() on the outer message
// may return true even if the inner message has missing required fields.
// This is necessary because otherwise the inner message would have to be
// parsed in order to perform the check, defeating the purpose of lazy
// parsing. An implementation which chooses not to check required fields
// must be consistent about it. That is, for any particular sub-message, the
// implementation must either *always* check its required fields, or *never*
// check its required fields, regardless of whether or not the message has
// been parsed.
optional bool lazy = 5 [default = false];
// Is this field deprecated?
// Depending on the target platform, this can emit Deprecated annotations
// for accessors, or it will be completely ignored; in the very least, this
// is a formalization for deprecating fields.
optional bool deprecated = 3 [default = false];
// For Google-internal migration only. Do not use.
optional bool weak = 10 [default = false];
// The parser stores options it doesn't recognize here. See above.
repeated UninterpretedOption uninterpreted_option = 999;
// Clients can define custom options in extensions of this message. See above.
extensions 1000 to max;
reserved 4; // removed jtype
}
message OneofOptions {
// The parser stores options it doesn't recognize here. See above.
repeated UninterpretedOption uninterpreted_option = 999;
// Clients can define custom options in extensions of this message. See above.
extensions 1000 to max;
}
message EnumOptions {
// Set this option to true to allow mapping different tag names to the same
// value.
optional bool allow_alias = 2;
// Is this enum deprecated?
// Depending on the target platform, this can emit Deprecated annotations
// for the enum, or it will be completely ignored; in the very least, this
// is a formalization for deprecating enums.
optional bool deprecated = 3 [default = false];
reserved 5; // javanano_as_lite
// The parser stores options it doesn't recognize here. See above.
repeated UninterpretedOption uninterpreted_option = 999;
// Clients can define custom options in extensions of this message. See above.
extensions 1000 to max;
}
message EnumValueOptions {
// Is this enum value deprecated?
// Depending on the target platform, this can emit Deprecated annotations
// for the enum value, or it will be completely ignored; in the very least,
// this is a formalization for deprecating enum values.
optional bool deprecated = 1 [default = false];
// The parser stores options it doesn't recognize here. See above.
repeated UninterpretedOption uninterpreted_option = 999;
// Clients can define custom options in extensions of this message. See above.
extensions 1000 to max;
}
message ServiceOptions {
// Note: Field numbers 1 through 32 are reserved for Google's internal RPC
// framework. We apologize for hoarding these numbers to ourselves, but
// we were already using them long before we decided to release Protocol
// Buffers.
// Is this service deprecated?
// Depending on the target platform, this can emit Deprecated annotations
// for the service, or it will be completely ignored; in the very least,
// this is a formalization for deprecating services.
optional bool deprecated = 33 [default = false];
// The parser stores options it doesn't recognize here. See above.
repeated UninterpretedOption uninterpreted_option = 999;
// Clients can define custom options in extensions of this message. See above.
extensions 1000 to max;
}
message MethodOptions {
// Note: Field numbers 1 through 32 are reserved for Google's internal RPC
// framework. We apologize for hoarding these numbers to ourselves, but
// we were already using them long before we decided to release Protocol
// Buffers.
// Is this method deprecated?
// Depending on the target platform, this can emit Deprecated annotations
// for the method, or it will be completely ignored; in the very least,
// this is a formalization for deprecating methods.
optional bool deprecated = 33 [default = false];
// Is this method side-effect-free (or safe in HTTP parlance), or idempotent,
// or neither? HTTP based RPC implementation may choose GET verb for safe
// methods, and PUT verb for idempotent methods instead of the default POST.
enum IdempotencyLevel {
IDEMPOTENCY_UNKNOWN = 0;
NO_SIDE_EFFECTS = 1; // implies idempotent
IDEMPOTENT = 2; // idempotent, but may have side effects
}
optional IdempotencyLevel idempotency_level = 34
[default = IDEMPOTENCY_UNKNOWN];
// The parser stores options it doesn't recognize here. See above.
repeated UninterpretedOption uninterpreted_option = 999;
// Clients can define custom options in extensions of this message. See above.
extensions 1000 to max;
}
// A message representing a option the parser does not recognize. This only
// appears in options protos created by the compiler::Parser class.
// DescriptorPool resolves these when building Descriptor objects. Therefore,
// options protos in descriptor objects (e.g. returned by Descriptor::options(),
// or produced by Descriptor::CopyTo()) will never have UninterpretedOptions
// in them.
message UninterpretedOption {
// The name of the uninterpreted option. Each string represents a segment in
// a dot-separated name. is_extension is true iff a segment represents an
// extension (denoted with parentheses in options specs in .proto files).
// E.g.,{ ["foo", false], ["bar.baz", true], ["qux", false] } represents
// "foo.(bar.baz).qux".
message NamePart {
required string name_part = 1;
required bool is_extension = 2;
}
repeated NamePart name = 2;
// The value of the uninterpreted option, in whatever type the tokenizer
// identified it as during parsing. Exactly one of these should be set.
optional string identifier_value = 3;
optional uint64 positive_int_value = 4;
optional int64 negative_int_value = 5;
optional double double_value = 6;
optional bytes string_value = 7;
optional string aggregate_value = 8;
}
// ===================================================================
// Optional source code info
// Encapsulates information about the original source file from which a
// FileDescriptorProto was generated.
message SourceCodeInfo {
// A Location identifies a piece of source code in a .proto file which
// corresponds to a particular definition. This information is intended
// to be useful to IDEs, code indexers, documentation generators, and similar
// tools.
//
// For example, say we have a file like:
// message Foo {
// optional string foo = 1;
// }
// Let's look at just the field definition:
// optional string foo = 1;
// ^ ^^ ^^ ^ ^^^
// a bc de f ghi
// We have the following locations:
// span path represents
// [a,i) [ 4, 0, 2, 0 ] The whole field definition.
// [a,b) [ 4, 0, 2, 0, 4 ] The label (optional).
// [c,d) [ 4, 0, 2, 0, 5 ] The type (string).
// [e,f) [ 4, 0, 2, 0, 1 ] The name (foo).
// [g,h) [ 4, 0, 2, 0, 3 ] The number (1).
//
// Notes:
// - A location may refer to a repeated field itself (i.e. not to any
// particular index within it). This is used whenever a set of elements are
// logically enclosed in a single code segment. For example, an entire
// extend block (possibly containing multiple extension definitions) will
// have an outer location whose path refers to the "extensions" repeated
// field without an index.
// - Multiple locations may have the same path. This happens when a single
// logical declaration is spread out across multiple places. The most
// obvious example is the "extend" block again -- there may be multiple
// extend blocks in the same scope, each of which will have the same path.
// - A location's span is not always a subset of its parent's span. For
// example, the "extendee" of an extension declaration appears at the
// beginning of the "extend" block and is shared by all extensions within
// the block.
// - Just because a location's span is a subset of some other location's span
// does not mean that it is a descendant. For example, a "group" defines
// both a type and a field in a single declaration. Thus, the locations
// corresponding to the type and field and their components will overlap.
// - Code which tries to interpret locations should probably be designed to
// ignore those that it doesn't understand, as more types of locations could
// be recorded in the future.
repeated Location location = 1;
message Location {
// Identifies which part of the FileDescriptorProto was defined at this
// location.
//
// Each element is a field number or an index. They form a path from
// the root FileDescriptorProto to the place where the definition. For
// example, this path:
// [ 4, 3, 2, 7, 1 ]
// refers to:
// file.message_type(3) // 4, 3
// .field(7) // 2, 7
// .name() // 1
// This is because FileDescriptorProto.message_type has field number 4:
// repeated DescriptorProto message_type = 4;
// and DescriptorProto.field has field number 2:
// repeated FieldDescriptorProto field = 2;
// and FieldDescriptorProto.name has field number 1:
// optional string name = 1;
//
// Thus, the above path gives the location of a field name. If we removed
// the last element:
// [ 4, 3, 2, 7 ]
// this path refers to the whole field declaration (from the beginning
// of the label to the terminating semicolon).
repeated int32 path = 1 [packed = true];
// Always has exactly three or four elements: start line, start column,
// end line (optional, otherwise assumed same as start line), end column.
// These are packed into a single field for efficiency. Note that line
// and column numbers are zero-based -- typically you will want to add
// 1 to each before displaying to a user.
repeated int32 span = 2 [packed = true];
// If this SourceCodeInfo represents a complete declaration, these are any
// comments appearing before and after the declaration which appear to be
// attached to the declaration.
//
// A series of line comments appearing on consecutive lines, with no other
// tokens appearing on those lines, will be treated as a single comment.
//
// leading_detached_comments will keep paragraphs of comments that appear
// before (but not connected to) the current element. Each paragraph,
// separated by empty lines, will be one comment element in the repeated
// field.
//
// Only the comment content is provided; comment markers (e.g. //) are
// stripped out. For block comments, leading whitespace and an asterisk
// will be stripped from the beginning of each line other than the first.
// Newlines are included in the output.
//
// Examples:
//
// optional int32 foo = 1; // Comment attached to foo.
// // Comment attached to bar.
// optional int32 bar = 2;
//
// optional string baz = 3;
// // Comment attached to baz.
// // Another line attached to baz.
//
// // Comment attached to qux.
// //
// // Another line attached to qux.
// optional double qux = 4;
//
// // Detached comment for corge. This is not leading or trailing comments
// // to qux or corge because there are blank lines separating it from
// // both.
//
// // Detached comment for corge paragraph 2.
//
// optional string corge = 5;
// /* Block comment attached
// * to corge. Leading asterisks
// * will be removed. */
// /* Block comment attached to
// * grault. */
// optional int32 grault = 6;
//
// // ignored detached comments.
optional string leading_comments = 3;
optional string trailing_comments = 4;
repeated string leading_detached_comments = 6;
}
}
// Describes the relationship between generated code and its original source
// file. A GeneratedCodeInfo message is associated with only one generated
// source file, but may contain references to different source .proto files.
message GeneratedCodeInfo {
// An Annotation connects some span of text in generated code to an element
// of its generating .proto file.
repeated Annotation annotation = 1;
message Annotation {
// Identifies the element in the original source .proto file. This field
// is formatted the same as SourceCodeInfo.Location.path.
repeated int32 path = 1 [packed = true];
// Identifies the filesystem path to the original source .proto.
optional string source_file = 2;
// Identifies the starting offset in bytes in the generated code
// that relates to the identified object.
optional int32 begin = 3;
// Identifies the ending offset in bytes in the generated code that
// relates to the identified offset. The end offset should be one past
// the last relevant byte (so the length of the text = end - begin).
optional int32 end = 4;
}
}
+97
View File
@@ -0,0 +1,97 @@
// Custom options for defining:
// - Maximum size of string/bytes
// - Maximum number of elements in array
//
// These are used by nanopb to generate statically allocable structures
// for memory-limited environments.
syntax = "proto2";
import "google/protobuf/descriptor.proto";
option java_package = "fi.kapsi.koti.jpa.nanopb";
enum FieldType {
FT_DEFAULT = 0; // Automatically decide field type, generate static field if possible.
FT_CALLBACK = 1; // Always generate a callback field.
FT_POINTER = 4; // Always generate a dynamically allocated field.
FT_STATIC = 2; // Generate a static field or raise an exception if not possible.
FT_IGNORE = 3; // Ignore the field completely.
}
enum IntSize {
IS_DEFAULT = 0; // Default, 32/64bit based on type in .proto
IS_8 = 8;
IS_16 = 16;
IS_32 = 32;
IS_64 = 64;
}
// This is the inner options message, which basically defines options for
// a field. When it is used in message or file scope, it applies to all
// fields.
message NanoPBOptions {
// Allocated size for 'bytes' and 'string' fields.
optional int32 max_size = 1;
// Allocated number of entries in arrays ('repeated' fields)
optional int32 max_count = 2;
// Size of integer fields. Can save some memory if you don't need
// full 32 bits for the value.
optional IntSize int_size = 7 [default = IS_DEFAULT];
// Force type of field (callback or static allocation)
optional FieldType type = 3 [default = FT_DEFAULT];
// Use long names for enums, i.e. EnumName_EnumValue.
optional bool long_names = 4 [default = true];
// Add 'packed' attribute to generated structs.
// Note: this cannot be used on CPUs that break on unaligned
// accesses to variables.
optional bool packed_struct = 5 [default = false];
// Add 'packed' attribute to generated enums.
optional bool packed_enum = 10 [default = false];
// Skip this message
optional bool skip_message = 6 [default = false];
// Generate oneof fields as normal optional fields instead of union.
optional bool no_unions = 8 [default = false];
// integer type tag for a message
optional uint32 msgid = 9;
// decode oneof as anonymous union
optional bool anonymous_oneof = 11 [default = false];
}
// Extensions to protoc 'Descriptor' type in order to define options
// inside a .proto file.
//
// Protocol Buffers extension number registry
// --------------------------------
// Project: Nanopb
// Contact: Petteri Aimonen <jpa@kapsi.fi>
// Web site: http://kapsi.fi/~jpa/nanopb
// Extensions: 1010 (all types)
// --------------------------------
extend google.protobuf.FileOptions {
optional NanoPBOptions nanopb_fileopt = 1010;
}
extend google.protobuf.MessageOptions {
optional NanoPBOptions nanopb_msgopt = 1010;
}
extend google.protobuf.EnumOptions {
optional NanoPBOptions nanopb_enumopt = 1010;
}
extend google.protobuf.FieldOptions {
optional NanoPBOptions nanopb = 1010;
}
+103
View File
@@ -0,0 +1,103 @@
// @file sns_accel.proto
//
// Defines the API for Accelerometer Sensors.
// All Accelerometer Sensor drivers are required to comply with this API.
// Any new functionality for Accelerometer Sensor can be defined in a
// device specific API file.
//
// Copyright (c) 2016-2018, 2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
import "sns_physical_sensor_test.proto";
import "sns_std_event_gated_sensor.proto";
import "sns_cal.proto";
// Attribute requirements:
// The Accelerometer Sensor publishes:
// 1. SNS_STD_SENSOR_ATTRID_TYPE attribute value as "accel".
// 2. SNS_STD_SENSOR_ATTRID_RESOLUTIONS attribute values in (m/s2)/LSB unit.
// 3. SNS_STD_SENSOR_ATTRID_RANGES attribute values in +/-m/s2 unit.
// 4. See sns_std_sensor.proto for other attributes.
// Handling stream requests:
// 1. The Accelerometer Sensor handles the sns_std_sensor_config
// message request with msgid SNS_STD_SENSOR_MSGID_SNS_STD_SENSOR_CONFIG
// for all non-gated stream enable/update requests.
// 2. The Accelerometer Sensor handles the sns_std_sensor_config
// message request with msgid SNS_STD_EVENT_GATED_SENSOR_MSGID_SNS_STD_SENSOR_CONFIG
// for all gated stream enable/update requests.
// a. Accelerometer stream is gated on the motion detection feature
// available on most accel hardware. This feature is published via the
// "motion_detect" Sensor by the same driver library as "accel" Sensor.
// b. If "motion_detect" is not supported then the Sensor does not support
// stream gating. Any gated client request is rejected in this case.
// 3. The Accelerometer Sensor uses batching_period item in
// sns_std_request as the requested batching rate to determine
// hardware FIFO watermark.
// Handling stream events:
// 1. The Accelerometer Sensor publishes acceleration data stream events
// using the sns_std_sensor_event message.
// 2. Each stream event contains three output data fields where data is
// in m/s2 units and is factory calibrated.
// 3. Data in the stream is adjusted to Android coordinate system relative to a
// mobile device held with screen facing the user in it's natural orientation:
// X-axis: parallel to the screen pointing to the right
// Y-axis: parallel to the screen pointing to the top
// Z-axis: perpendicular to the screen pointing towards the user
// This conforms to the mobile device axes orientation as specified by the
// Android Sensor API.
// 4. Data in the stream event is ordered as:
// data[0] = X-axis
// data[1] = Y-axis
// data[2] = Z-axis
// 5. Each stream event publishes an accuracy field:
// SNS_STD_SENSOR_SAMPLE_STATUS_UNRELIABLE to mark invalid samples when hardware is
// yet to stabilize after the sensor is configured.
// SNS_STD_SENSOR_SAMPLE_STATUS_ACCURACY_HIGH to mark samples when they are valid.
// 6. The Accelerometer Sensor publishes a configuration event using the
// sns_std_sensor_physical_config_event message.
// It publishes this event each time there is change in hardware config of the sensor
// and contains current physical sensor config of the sensor.
// 7. The Accelerometer Sensor publishes a factory calibration event using the
// sns_cal_event message. It uses bias and comp_matrix fields in this event.
// It publishes this event each time there is change in it's factory calibration
// data or when a client sends a new streaming request.
// 8. When all outstanding requests to the Sensor are gated requests and if the
// "motion_detect" Sensor is enabled then the accel Sensor stops generating
// output events.
// a. When motion detect interrupt fires:
// - All existing accel gated stream requests are converted to non-gated
// stream requests.
// The accel Sensor publishes an event with message ID
// SNS_STD_EVENT_GATED_SENSOR_MSGID_GATED_REQ_CONVERTED_TO_NON_GATED to
// to indicate this change to it's gated clients.
// - The accel Sensor resumes generating output to all clients.
// So in effect motion_detect Sensor and accel gated Sensor stream have
// a one shot behavior.
// b. The Sensor resumes generating output events if motion detect interrupt
// is disabled potentially due to a new non-gated accel stream request or
// the request to motion_detect Sensor is disabled.
// 9. When all outstanding requests to the Sensor are gated requests but if
// "motion_detect" Sensor is not enabled then the Sensor continues to generate
// output events.
// Handling self-test requests:
// 1. The Accelerometer Sensor implements SNS_PHYSICAL_SENSOR_TEST_TYPE_COM test
// type using the physical sensor test API.
// 2. The Accelerometer Sensor implements SNS_PHYSICAL_SENSOR_TEST_TYPE_FACTORY test
// type to determine factory calibration parameters using the physical
// sensor test API.
// 3. The Accelerometer Sensor could implement other test types.
// Handling test events:
// 1. The Accelerometer Sensor uses sns_physical_sensor_test_event message to publish
// a test completion event.
// 2. The test_passed field in sns_physical_sensor_test_event is used to output the
// pass/fail result of self-test execution.
// 3. The test_data field in sns_physical_sensor_test_event could be used to output any
// driver-specific error data.
@@ -0,0 +1,32 @@
// @file sns_accel_cal.proto
//
// Defines message types for the Accel Calibration Sensor.
//
// Copyright (c) 2017, 2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_cal.proto";
// The Accel Calibration Sensor determines the calibration parameters
// for accel sensor
// Accel Calibration Sensor Attributes:
// - SNS_STD_SENSOR_ATTRID_TYPE: "accel_cal"
// - SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_TYPE_ON_CHANGE
// Stream Requests:
// - SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG message ID is used to
// enable the sensor
// - SNS_CAL_MSGID_SNS_CAL_RESET message ID is used to reset the algorithm
// and any previously determined calibration parameters.
// Stream Events:
// - SNS_CAL_MSGID_SNS_CAL_EVENT message ID is used to report calibration
// parameters to the client of the sensor. The sns_cal_event message as
// defined in sns_cal.proto is used to report this data event where the
// units for the bias field in the message are in m / s ^2
@@ -0,0 +1,69 @@
// @file sns_activity_recognition.proto
//
// Defines message types for the Activity Recognition (AR) Sensor.
//
// Copyright (c) 2019-2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// Acitivity Recognition Sensor Attribute Requirements:
// SNS_STD_SENSOR_ATTRID_TYPE: "activity_recognition"
// SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_TYPE_ON_CHANGE
// Stream Requests:
// - SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG is used to enable the sensor
// Message IDs for Acitivity Recognition Sensor
enum sns_activity_recognition_msgid {
option (nanopb_enumopt).long_names = false;
// The sns_ar_event message is used to publish updated state. A new event
// will be generated upon any state change.
SNS_ACTIVITY_RECOGNITION_MSGID_SNS_AR_EVENT = 800;
// Configuration event generated at least once in response to enable request
SNS_ACTIVITY_RECOGNITION_MSGID_SNS_AR_CONFIG_EVENT = 801;
}
// User activity states
enum sns_ar_motion_state
{
option (nanopb_enumopt).long_names = false;
// UNKNOWN is reported when the algorithm is unable to detect the current
// activity state.
SNS_AR_UNKNOWN = 0;
// User is relatively stationary.
SNS_AR_STATIONARY = 1;
// User is classified as a pedestrian
SNS_AR_PED = 2;
// User is in a non-motorized vehicle
SNS_AR_NMV = 3;
// User is in a motorized vehicle.
SNS_AR_MV = 4;
// User is walking
SNS_AR_WALK = 5;
// User is running
SNS_AR_RUN = 6;
// User is on a bicycle
SNS_AR_BICYCLE = 7;
// User is in a car
SNS_AR_CAR = 8;
}
message sns_ar_config_event
{
// List of supported motion states
repeated sns_ar_motion_state states = 1;
}
message sns_ar_event
{
// List of active states for this user
// Multiple states may be reported concurrently
// Any states not listed here are presumed to be inactive
repeated sns_ar_motion_state states = 1 [(nanopb).max_count = 4];
}
@@ -0,0 +1,73 @@
// @file sns_ambient_light.proto
//
// Defines the API for Ambient Light Sensors.
// All Ambient Light Sensor drivers are required to comply with this API.
// Any new functionality for Ambient Light Sensor can be defined in a
// device specific API file.
//
// Copyright (c) 2016-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
import "sns_physical_sensor_test.proto";
import "sns_cal.proto";
// Attribute requirements:
// The Ambient Light Sensor publishes:
// 1. SNS_STD_SENSOR_ATTRID_TYPE attribute value as "ambient_light".
// 2. SNS_STD_SENSOR_ATTRID_RESOLUTIONS attribute value in Lux/LSB.
// 3. SNS_STD_SENSOR_ATTRID_RANGES attribute values in Lux unit.
// 4. See sns_std_sensor.proto for other attributes.
// Handling stream requests:
// 1. The Ambient Light Sensor supports both streaming and on-change
// modes and the operating mode is configured in the Registry.
// 2. The streaming Ambient Light Sensor handles the sns_std_sensor_config
// request for all stream enable/update requests.
// 3. The on-change Ambient Light Sensor handles the
// SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG request for
// all stream enable/update requests.
// 4. In on-change mode the Sensor uses interrupt operation and reports
// samples for only significant change in ambient light.
// Example: +/- 10% change.
// Handling stream events:
// 1. The Ambient Light Sensor publishes current illumination data stream
// events using the sns_std_sensor_event message.
// 2. Each stream event contains two output data fields where data is
// factory calibrated and ordered as:
// data[0] = ambient light in Lux
// data[1] = raw ADC value associated with data[0]
// 3. Each stream event publishes an accuracy field:
// SNS_STD_SENSOR_SAMPLE_STATUS_UNRELIABLE to mark invalid samples when hardware is
// yet to stabilize after the sensor is configured.
// SNS_STD_SENSOR_SAMPLE_STATUS_ACCURACY_HIGH to mark samples when they are valid.
// 4. The Ambient Light Sensor publishes a configuration event using the
// sns_std_sensor_physical_config_event message.
// It publishes this event each time there is change in hardware config of the sensor
// and contains current physical sensor config of the sensor.
// 5. The Ambient Light Sensor publishes a factory calibration event using the
// sns_cal_event message. It uses bias and scale_factor fields in this event.
// It publishes this event each time there is change in it's factory calibration
// data or when a client sends a new request.
// Handling self-test requests:
// 1. The Ambient Light Sensor implements SNS_PHYSICAL_SENSOR_TEST_TYPE_COM test
// type using the physical sensor test API.
// 2. The Ambient Light Sensor implements SNS_PHYSICAL_SENSOR_TEST_TYPE_FACTORY test
// type to determine factory calibration parameters using the physical
// sensor test API. The factory test for Ambient Light Sensor calibrates
// the sensor such that it's output Lux value is comparable to a standard
// Luxmeter output in any lighting condition.
// 3. The Ambient Light Sensor could implement other test types.
// Handling test events:
// 1. The Ambient Light Sensor uses sns_physical_sensor_test_event message to publish
// a test completion event.
// 2. The test_passed field in sns_physical_sensor_test_event is used to output the
// pass/fail result of self-test execution.
// 3. The test_data field in sns_physical_sensor_test_event could be used to output any
// driver-specific error data.
@@ -0,0 +1,68 @@
// @file sns_ambient_temperature.proto
//
// Defines the API for Ambient Temperature Sensors.
// All Ambient Temperature Sensor drivers are required to comply with this API.
// Any new functionality for Ambient Temperature Sensor can be defined in a
// device specific API file.
//
// Copyright (c) 2016-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
import "sns_physical_sensor_test.proto";
import "sns_cal.proto";
// Attribute requirements:
// The Ambient Temperature Sensor publishes:
// 1. SNS_STD_SENSOR_ATTRID_TYPE attribute value as "ambient_temperature".
// 2. SNS_STD_SENSOR_ATTRID_RESOLUTIONS attribute value in degrees Celsius/LSB.
// 3. SNS_STD_SENSOR_ATTRID_RANGES attribute values in degrees Celsius unit.
// 4. The ambient_temperature sensor is an on-change sensor.
// 5. The SNS_STD_SENSOR_ATTRID_RATES attribute is not applicable
// since this is an on-change sensor.
// 6. See sns_std_sensor.proto for other attributes.
// Handling stream requests:
// 1. The Ambient Temperature Sensor handles the SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG
// message ID for all stream enable/update requests.
// 2. If the physical sensor supports hardware FIFO then the Ambient Temperature
// Sensor uses batching_period item in sns_std_request as the requested
// batching rate to determine hardware FIFO watermark.
// Handling stream events:
// 1. The Ambient Temperature Sensor publishes data stream events using the
// sns_std_sensor_event message.
// 2. Each stream event contains one output data field where data is
// factory calibrated and ordered as:
// data[0] = Ambient Temperature data in degrees Celsius
// 3. Each stream event publishs an accuracy field:
// SNS_STD_SENSOR_SAMPLE_STATUS_UNRELIABLE to mark invalid samples when hardware is
// yet to stabilize after the sensor is configured.
// SNS_STD_SENSOR_SAMPLE_STATUS_ACCURACY_HIGH to mark samples when they are valid.
// 4. The Ambient Temperature Sensor publishes a configuration event using the
// sns_std_sensor_physical_config_event message.
// It publishes this event each time there is change in hardware config of the sensor
// and contains current physical sensor config of the sensor.
// 5. The Ambient Temperature Sensor publishes a factory calibration event using the
// sns_cal_event message. It uses bias and scale_factor fields in this event.
// It publishes this event each time there is change in it's factory calibration
// data or when a client sends a new streaming request.
// Handling self-test requests:
// 1. The Ambient Temperature Sensor implements SNS_PHYSICAL_SENSOR_TEST_TYPE_COM test
// type using the physical sensor test API.
// 2. The Ambient Temperature Sensor implements SNS_PHYSICAL_SENSOR_TEST_TYPE_FACTORY test
// type to determine factory calibration parameters using the physical
// sensor test API.
// 3. The Ambient Temperature Sensor could implement other test types.
// Handling test events:
// 1. The Ambient Temperature Sensor uses sns_physical_sensor_test_event message to publish
// a test completion event.
// 2. The test_passed field in sns_physical_sensor_test_event is used to output the
// pass/fail result of self-test execution.
// 3. The test_data field in sns_physical_sensor_test_event could be used to output any
// driver-specific error data.
+51
View File
@@ -0,0 +1,51 @@
// @file sns_amd.proto
//
// Defines message types for the Absolute Motion Detector (AMD) Sensor.
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// AMD calculates motion and stationary states. AMD will initially start in an
// unknown state, and later transition to motion or stationary.
// AMD Sensor Attribute Requirements:
// SNS_STD_SENSOR_ATTRID_TYPE: "amd"
// SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_TYPE_ON_CHANGE
// Stream Requests:
// - SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG is used to enable the sensor
// Message IDs for AMD Sensor
enum sns_amd_msgid {
option (nanopb_enumopt).long_names = false;
SNS_AMD_MSGID_SNS_AMD_EVENT = 772;
}
enum sns_amd_event_type
{
option (nanopb_enumopt).long_names = false;
SNS_AMD_EVENT_TYPE_UNKNOWN = 0;
SNS_AMD_EVENT_TYPE_STATIONARY = 1;
SNS_AMD_EVENT_TYPE_MOTION = 2;
}
message sns_amd_event
{
// AMD motion state
required sns_amd_event_type state = 1 [default = SNS_AMD_EVENT_TYPE_UNKNOWN];
}
// Stream events:
//
// The sns_amd_event message is used to publish updated state
//
// AMD does not publish configuration events.
+37
View File
@@ -0,0 +1,37 @@
// @file sns_aont.proto
//
// Defines message types for the AONT(Always On Test) Sensor.
//
// Copyright (c) 2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// The Always On Test Sensor runs an Always On sensors usecase for stability test coverage
// Always On Test Sensor Attribute Requirements:
// SNS_STD_SENSOR_ATTRID_TYPE: "always_on_test"
// SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_ON_CHANGE
// Stream Requests:
// - SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG is used to enable the sensor
// Stream Events:
enum sns_aont_msgid
{
option (nanopb_enumopt).long_names = false;
SNS_AONT_MSGID_SNS_AONT_DATA = 1024;
}
// Data Message
// Output data event generated by the aont sensor.
message sns_aont_data
{
// AONT output - Accel data along axis x,y,z in m/s2
repeated float aont = 1 [(nanopb).max_count = 3];
}
@@ -0,0 +1,101 @@
// @file sns_basic_gestures.proto
//
// Defines message types for the the basic_gestures sensor
//
// Copyright (c) 2017 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
// Basic Gestures algorithm provides the ability to detect a Push, Pull,
// or Shake gesture.
// Basic Gestures reports "Axis Unknown", when the direction of a shake cannot
// be reliably determined.
// Basic gestures Sensor Attribute Requirements:
// SNS_STD_SENSOR_ATTRID_TYPE: "basic_gestures"
// SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_TYPE_ON_CHANGE
// Stream Requests:
// - SNS_BASIC_GESTURES_MSGID_SNS_BASIC_GESTURES_CONFIG is used to enable the sensor
// Message IDs for Basic gestures Sensor
enum sns_basic_gestures_msgid
{
option (nanopb_enumopt).long_names = false;
SNS_BASIC_GESTURES_MSGID_SNS_BASIC_GESTURES_CONFIG = 512;
SNS_BASIC_GESTURES_MSGID_SNS_BASIC_GESTURES_EVENT = 1024;
}
//To mask Basic gesture algorithm output states
enum sns_basic_gestures_event_mask
{
option (nanopb_enumopt).long_names = false;
// For masking push and pull states
SNS_BASIC_GESTURES_EVENT_MASK_PUSH_AND_PULL = 1;
// For masking shake left and right states
SNS_BASIC_GESTURES_EVENT_MASK_SHAKE_LEFT_AND_RIGHT = 2;
// For masking shake top and bottom states
SNS_BASIC_GESTURES_EVENT_MASK_SHAKE_TOP_AND_BOTTOM = 4;
//For masking shake other state
SNS_BASIC_GESTURES_EVENT_MASK_SHAKE_OTHER = 8;
}
// Device Basic gesture detected by Basic gestures sensor
enum sns_basic_gestures_event_type
{
option (nanopb_enumopt).long_names = false;
//Phone is pulled away from the user in a direction perpendicular to the screen
SNS_BASIC_GESTURES_EVENT_TYPE_PUSH = 1;
//Phone is pulled toward the user in a direction perpendicular to the screen
SNS_BASIC_GESTURES_EVENT_TYPE_PULL = 2;
//Phone is shaken toward the left
SNS_BASIC_GESTURES_EVENT_TYPE_SHAKE_LEFT = 3;
//Phone is shaken toward the right
SNS_BASIC_GESTURES_EVENT_TYPE_SHAKE_RIGHT = 4;
//Phone is shaken toward the top
SNS_BASIC_GESTURES_EVENT_TYPE_SHAKE_TOP = 5;
//Phone is shaken toward the bottom
SNS_BASIC_GESTURES_EVENT_TYPE_SHAKE_BOTTOM = 6;
//Phone is shaken, but phone shake direction cannot be clearly determined
SNS_BASIC_GESTURES_EVENT_TYPE_SHAKE_OTHER = 7;
}
// Event Message
// Output data event generated by the basic_gestures sensor.
// Default values of optional fields added in registry
message sns_basic_gestures_config
{
//Sleep time in seconds
optional float sleep = 1;
//Push threshold m/s/s(default = 1.5G),where G=9.81188
//min_push_threshold:1G, max_push_threshold:5G
optional float push_threshold = 2;
//Pull threshold m/s/s (default = 1.5G)
//min_pull_threshold:1G, max_pull_threshold:5G
optional float pull_threshold = 3;
//Shake threshold m/s/s(default = 1.5G)
//min_shake_threshold:1G, max_shake_threshold:5G
optional float shake_threshold = 4;
//For masking output events.
//By default, All states reported.
//Client should use sns_basic_gestures_event_mask fields for masking,
//specific events
//Example: If client doesn't want push and pull events,then,
//client updates event_mask with SNS_BASIC_GESTURES_EVENT_MASK_PUSH_AND_PULL
//event_mask |= SNS_BASIC_GESTURES_EVENT_MASK_PUSH_AND_PULL;
optional bytes event_mask = 5;
}
// Event Message
// Output data event generated by the basic_gestures sensor.
message sns_basic_gestures_event
{
// basic_gestures sensor state info
required sns_basic_gestures_event_type state=1;
}
// Stream events:
//
// The sns_basic_gestures_event message is used to publish updated state
//
// Basic_gestures sensor does not publish configuration events.
@@ -0,0 +1,40 @@
// @file sns_bring_to_ear.proto
//
// Defines message types for the the Bring_To_Ear sensor
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// Bring_to_ear sensor detects bring to ear event,
// When a device has been held in a face-up position,
// afterwhich the device is brought to the user's ear, with the top of the device facing upwards.
// Bring to ear Sensor Attribute Requirements:
// SNS_STD_SENSOR_ATTRID_TYPE: "bring_to_ear"
// SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_TYPE_ON_CHANGE
//
// ## Request Message: SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG
// No configuration is available for this sensor.
// ## Event Message: SNS_BRING_TO_EAR_MSGID_SNS_BRING_TO_EAR_EVENT
// Reported upon new detection of bring_to_ear event
// Message IDs for Bring to ear Sensor
enum sns_bring_to_ear_msgid
{
option (nanopb_enumopt).long_names = false;
// Empty Message
SNS_BRING_TO_EAR_MSGID_SNS_BRING_TO_EAR_EVENT = 1024;
}
// Stream events:
//
// The sns_bring_to_ear_event message is used to publish updated state
//
// Bring_to_ear sensor does not publish configuration events.
+118
View File
@@ -0,0 +1,118 @@
// @file sns_cal.proto
//
// Defines standard message types pertaining to calibration
//
// Copyright (c) 2016-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// For dynamic calibration supported by Calibration Sensors:
// Client will use the standard on change config message id to enable
// Calibration Sensor. Calibration algorithms are inherently on change in
// behavior.
// For both dynamic calibration supported by Calibration Sensors &
// factory calibration supported by Physical Sensors:
// Client can send an empty request with the msg id for reset
// to reset the calibration parameters.
enum sns_cal_msgid
{
option (nanopb_enumopt).long_names = false;
SNS_CAL_MSGID_SNS_CAL_RESET = 512;
SNS_CAL_MSGID_SNS_CAL_EVENT = 1022;
}
// Calibration Event
// Used as an output data event by Calibration Sensors to convey
// dynamic calibration estimates and
// as a config event by Physical Sensors to convey factory calibration
// being applied
//
// A) The data field of the sns_cal_event message
//
// 1) float bias[] (Nx1 vector)
// The zero bias (B) correction subtracted to get calibrated sample.(Nx1 vector)
//
// 2) float scale_factor (Nx1 vector)
// The scaling (SF) to be done before doing any bias correction.
//
// 3) float comp_matrix (NxN matrix)
// The compensation matrix (CM). The matrix elements are in row major order ie:
// CM = CM0 CM1 CM2
// CM3 CM4 CM5
// CM6 CM7 CM8
//
// The calibrated sample (Sc) is computed as following.
//
// if SF, B and CM are available,
//
// Sc = CM * ((S .* SF) - B)
//
// if only B and CM are available,
//
// Sc = CM * (S - B)
//
// if only SF and B are available,
//
// Sc = ((S .* SF) - B)
//
// if only SF is available,
//
// Sc = S .* SF
//
// if only B is available,
//
// Sc = (S - B)
//
// if only CM is available
//
// Sc = CM * S
//
// where:
// Sc = Calibrated sensor sample
// S = Sensor sample (Nx1 vector)
// SF = Scaling factor to be applied to S
// CM = compensation_matrix
// B = bias
// "*" represents matrix multiplication
// ".*" represents element-by-element multiplication
//
//
// B) The status field of the sns_std_sensor_event message contains
// the quality of calibration defined by sns_std_sensor_sample_status as
// SNS_STD_SENSOR_SAMPLE_STATUS_UNRELIABLE = 0; // Sample is unreliable.
// SNS_STD_SENSOR_SAMPLE_STATUS_ACCURACY_LOW = 1; // Sample is low accuracy.
// SNS_STD_SENSOR_SAMPLE_STATUS_ACCURACY_MEDIUM = 2;// Sample is medium accuracy.
// SNS_STD_SENSOR_SAMPLE_STATUS_ACCURACY_HIGH = 3; // Sample is high accuracy.
message sns_cal_event
{
//Optional bias value
//If no bias is being published this will be of size 0.
//Generic for different axes biases.
//Size is defined by axes value inherently.
repeated float bias = 1;
//Optional scaling factor
//If no scaling factor is published this will be of size 0.
//Size if published is has to be equal to the axes of the data
repeated float scale_factor = 2;
//If no CM is being published this will be of size 0.
//Optional CM values .
//Size if published should be equal to matrix of size [axes*axes]
repeated float comp_matrix = 3;
// Event sample status.
required sns_std_sensor_sample_status status = 4 [default = SNS_STD_SENSOR_SAMPLE_STATUS_UNRELIABLE];
// Calibration ID, a unique identifier for the calibration set being used
// As an example, could be set when there are distinct calibration sets for different
// device modes being maintained
optional fixed32 cal_id = 5;
}
+116
View File
@@ -0,0 +1,116 @@
// @file sns_client.proto
//
// Defines the interface between external clients and the Sensors QMI Client
// Manager. The Client Manager is the primary path for external clients
// to communicate with the SSC.
//
// Copyright (c) 2016-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std.proto";
import "sns_std_type.proto";
// Message IDs
//
// Message IDs uniquely identify a particular message amongst all message
// supported by a Sensor, both requests and events; they need not be unique
// between different Sensors. IDs are subdivided into several reserved pools.
// These reservations are made so that Framework components can appropriately
// optimize their processing.
//
// Reserved for Framework use only:
// 0-127 - Request Messages
// 128-255 - Non-recurrent events (configuration updates, one-time events, etc)
// 256-511 - Recurrent and/or periodic events (e.g. sensor samples)
//
// Sensor use:
// 512-767 - Request messages
// 768-1023 - Non-recurrent events
// 1024-1536 - Recurrent events
//
// Note that messages serving as request messages can also be sent as
// configuration events back to the client (with the same ID). While batching
// data for a non-wakeup client, if the AP is in suspend and all batching space
// exhausted, the oldest recurrent events may be dropped.
// Framework-defined message IDs:
enum sns_client_msgid {
option (nanopb_enumopt).long_names = false;
// Disable request explicitly handled only on the client interface.
SNS_CLIENT_MSGID_SNS_CLIENT_DISABLE_REQ = 10;
// NOTE: 120-127 Are reserved
}
enum sns_client_delivery {
option (nanopb_enumopt).long_names = false;
// Send events whenever available (at sample rate or batch period)
// - If a batch_period larger than system capacity is requested, all data
// will be sent upon capacity exhaustion.
// - The flush_period will be effectively ignored, as unsent batched
// data will not accrue in the buffer.
SNS_CLIENT_DELIVERY_WAKEUP = 0;
// Send events only when client processor is awake; batch otherwise. Once
// the target processor exits suspend, any/all pending events will be sent.
SNS_CLIENT_DELIVERY_NO_WAKEUP = 1;
}
// Request Message
message sns_client_request_msg {
// SUID associated with this request; intended destination
required sns_std_suid suid = 1;
// See comment above
required fixed32 msg_id = 2;
// Whether to wakeup the client processor (if it is in suspend), when an
// event is generated and ready to send. The Qualcomm Client Manager will
// enforce these criteria for all clients; this information is made available
// to sensors for optimization purposes only.
message suspend_config {
// Processor on which the client resides; If a flush occurs for one client
// on an external processor, all clients will receive a flush of data.
required sns_std_client_processor client_proc_type = 1 [default = SNS_STD_CLIENT_PROCESSOR_APSS];
// Whether to send events while the specified processor is in suspend.
required sns_client_delivery delivery_type = 2 [default = SNS_CLIENT_DELIVERY_WAKEUP];
//The client expects that, when the message with an id specified in this list
//is generated, the message should only be delivered to the client if data is already being delivered
//to the processor mentioned above.
repeated fixed32 nowakeup_msg_ids = 3;
}
required suspend_config susp_config = 3;
// Base message payload; contents will be partially specified by Sensor developer
required sns_std_request request = 4;
}
message sns_client_event_msg {
// SUID associated with this Event; source of data
required sns_std_suid suid = 1;
// An event generated by a Sensor; used within sns_client_event_msg and SensorBatchMessage
message sns_client_event {
// See comment above
required fixed32 msg_id = 1;
// Timestamp associated with this event
// For most events, this timestamp is specified by the Sensor.
// For events generated by the Framework (such as configuration updates or
// error events), this timestamp refers to the time at which the event was
// created.
required fixed64 timestamp = 2;
// Dynamic length payload, containing the actual data/event
// This payload will need to be decoded separately, using the Sensor-specific
// header file
required bytes payload = 3;
}
repeated sns_client_event events = 2;
}
+81
View File
@@ -0,0 +1,81 @@
// @file sns_cmc.proto
//
// Defines message types for the Coarse Motion Classifier (CMC) Sensor.
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// CMC Sensor Attribute Requirements:
// SNS_STD_SENSOR_ATTRID_TYPE: "coarse_motion_classifier"
// SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_TYPE_ON_CHANGE
// Stream Requests:
// - SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG is used to enable the sensor
// Message IDs for CMC Sensor
enum sns_cmc_msgid {
option (nanopb_enumopt).long_names = false;
SNS_CMC_MSGID_SNS_CMC_EVENT = 772;
}
// Gives the state which the algorithm is capable
// of detecting
enum sns_cmc_motion_state
{
option (nanopb_enumopt).long_names = false;
// stated with 1 to match with algo where 0
// is for UNKNOWN
SNS_CMC_STATIONARY = 1;
SNS_CMC_MOVE = 2;
SNS_CMC_FIDDLE = 3;
SNS_CMC_PEDESTRIAN = 4;
SNS_CMC_VEHICLE = 5;
SNS_CMC_WALK = 6;
SNS_CMC_RUN = 7;
SNS_CMC_BIKE = 8;
}
// Gives the information about the states represented
// by sns_cmc_motion_state
enum sns_cmc_motion_state_event
{
option (nanopb_enumopt).long_names = false;
// when any state of any of the motion state cannot
// be determined. The first event of first client will
// typically have all states as SNS_MS_UNKNOWN
SNS_MS_UNKNOWN = 0;
// A given motion state is ACTIVE
SNS_MS_ACTIVE = 1;
// A given motion state is INACTIVE
SNS_MS_INACTIVE = 2;
}
message sns_cmc_event
{
message data
{
// motion state by CMC
required sns_cmc_motion_state ms_state = 1;
// gives UNKNOWN/ACTIVE/INACTIVE information for the motion state
required sns_cmc_motion_state_event ms_state_event = 2 [default = SNS_MS_UNKNOWN];
}
repeated data events = 1;
}
// Stream events:
//
// The sns_cmc_event message is used to publish updated state
//
// CMC does not publish configuration events.
+65
View File
@@ -0,0 +1,65 @@
// @file sns_da_test.proto
//
// Defines the API for communicating with the Driver acceptance
// test sensor.
// This is to used by the linux command line partner application
// to send string messages to the sns_da_test_sensor
//
// Copyright (c) 2017, 2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
enum sns_da_test_msgid {
option (nanopb_enumopt).long_names = false;
SNS_DA_TEST_MSGID_SNS_DA_TEST_REQ = 512;
SNS_DA_TEST_MSGID_SNS_DA_TEST_LOG = 768;
SNS_DA_TEST_MSGID_SNS_DA_TEST_EVENT = 1024;
}
//This message contains the test parameters as a single string in the format below
//-testcase=<not_mandatory> -sample_rate=< any +tive value > -sensor=<data_type>
//-duration=< any +tive value in seconds> -batch_period=<+tive value in seconds>
message sns_da_test_req {
optional string test_args = 1;
}
//This message contains any return data from the test driver including PASS/FAIL
//msg. and explainations if applicable
message sns_da_test_event {
optional string test_event = 1;
}
// Sensor State log message
// This definition is used by da_test sensor to log test
// information when publishing sensor api event
message sns_da_test_log {
//Time elapsed between streaming start request time and first sample received
required uint64 time_to_first_event = 1;
//Time elapsed between streaming stop request time and last sample received
required sfixed32 time_to_last_event = 2;
//Time when last sample was received
required uint64 sample_ts = 3;
//Total number of samples received
required uint32 total_samples = 4;
//time delta between samples avegraged over number of samples
required uint32 avg_delta = 5;
//configures sample rate received in the SNS_STD_SENSOR_PHYSICAL_CONFIG_EVENT
required sfixed32 recvd_phy_config_sample_rate = 6;
//random seed used by the da_test instance
optional uint64 random_seed_used = 7;
//The number of std_req sent out by this instance of da_test
optional uint32 num_request_sent = 8;
//timestamp of first sample received on da_test
optional uint64 first_sample_timestamp = 9;
}
@@ -0,0 +1,61 @@
// @file sns_device_mode.proto
//
// Defines message types for the Device Mode Sensor.
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// DEVICE_MODE determine the current mode of the device
// DEVICE_MODE Sensor Attribute Requirements:
// SNS_STD_SENSOR_ATTRID_TYPE: "device_mode"
// SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_TYPE_ON_CHANGE
// Stream Requests:
// - SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG is used to enable the sensor
// - Client must remove stream to disable the sensor
// Message IDs for DEVICE_MODE Sensor
enum sns_device_mode_msgid
{
option (nanopb_enumopt).long_names = false;
SNS_DEVICE_MODE_MSGID_SNS_DEVICE_MODE_EVENT = 772;
}
enum sns_device_mode
{
option (nanopb_enumopt).long_names = false;
SNS_DEVICE_MODE_UNKNOWN = 0;
SNS_DEVICE_MODE_FLIP_OPEN = 1;
}
enum sns_device_state
{
option (nanopb_enumopt).long_names = false;
SNS_DEVICE_STATE_INACTIVE = 0;
SNS_DEVICE_STATE_ACTIVE = 1;
}
message sns_device_mode_event
{
message mode_spec {
required sns_device_mode mode = 1;
required sns_device_state state = 2;
}
// Device Mode
repeated mode_spec device_mode = 1;
}
// Stream events:
//
// The sns_device_mode_event message is used to publish updated mode
//
// DEVICE_MODE does not publish configuration events.
@@ -0,0 +1,57 @@
// @file sns_device_orient.proto
//
// Defines the API for the Device Orientation sensors
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// A device orientation sensor reports the current orientation of the device.
//
// Minor or transient rotations should not cause a new event to be reported,
// and this sensor should only be implemented with the help of an accelerometer.
// Moving the device to an orientation where the Z axis is vertical (either up
// or down) should not cause a new event to be reported.
// ## Device Orientation sensor attributes:
// SNS_STD_SENSOR_ATTRID_TYPE is "device_orient"
//
// ## Request Message: SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG
// No configuration is available for this sensor.
//
// ## Event Message: SNS_DEVICE_ORIENT_MSGID_SNS_DEVICE_ORIENT_EVENT
// Message IDs for Device Orientation Sensor
enum sns_device_orient_msgid {
option (nanopb_enumopt).long_names = false;
SNS_DEVICE_ORIENT_MSGID_SNS_DEVICE_ORIENT_EVENT = 776;
}
enum sns_device_orient_event_type
{
option (nanopb_enumopt).long_names = false;
SNS_DEVICE_ORIENT_EVENT_TYPE_UNKNOWN = -1;
// Device is in default orientation (Y axis is vertical and points up)
SNS_DEVICE_ORIENT_EVENT_TYPE_DEFAULT = 0;
// Device is rotated 90 degrees counter-clockwise from default orientation
// (X axis is vertical and points up)
SNS_DEVICE_ORIENT_EVENT_TYPE_POS_1 = 1;
// Device is rotated 180 degrees from default orientation (Y axis is
// vertical and points down)
SNS_DEVICE_ORIENT_EVENT_TYPE_POS_2 = 2;
// Device is rotated 90 degrees clockwise from default orientation (X axis
// is vertical and points down)
SNS_DEVICE_ORIENT_EVENT_TYPE_POS_3 = 3;
}
message sns_device_orient_event
{
// Detected state
required sns_device_orient_event_type state = 1;
}
+433
View File
@@ -0,0 +1,433 @@
// @file sns_diag.proto
//
// Defines log messages used by the sensors diag service
//
// Copyright (c) 2016-2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std.proto";
import "sns_std_sensor.proto";
import "sns_client.proto";
// Batch Sample Type
enum sns_diag_batch_sample_type
{
option (nanopb_enumopt).long_names = false;
// This is the only sample in the batch
SNS_DIAG_BATCH_SAMPLE_TYPE_ONLY = 0;
// This is the first sample of the batch
SNS_DIAG_BATCH_SAMPLE_TYPE_FIRST = 1;
// This is an intermediate sample of the batch
SNS_DIAG_BATCH_SAMPLE_TYPE_INTERMEDIATE = 2;
// This is the last sample of the batch
SNS_DIAG_BATCH_SAMPLE_TYPE_LAST = 3;
}
// Sensor Interrupts
enum sns_diag_interrupt
{
option (nanopb_enumopt).long_names = false;
// Interrupt caused by detection of a threshold being
// exceeded
SNS_DIAG_INTERRUPT_THRESHOLD = 0;
// Interrupt caused by detection of movement of the device
SNS_DIAG_INTERRUPT_MOTION = 1;
// Interrupt caused by detection of tilting of the device
SNS_DIAG_INTERRUPT_TILT = 2;
// Interrupt caused by detection of free fall
SNS_DIAG_INTERRUPT_FREE_FALL = 3;
// Interrupt caused by detection of double-tap
SNS_DIAG_INTERRUPT_DOUBLE_TAP= 4;
// Interrupt caused by detection of acceleration shock
SNS_DIAG_INTERRUPT_SHOCK = 5;
// Interrupt caused by CCD AMD
SNS_DIAG_INTERRUPT_CCD_AMD = 6;
// Interrupt caused by CCD WALK
SNS_DIAG_INTERRUPT_CCD_WALK = 7;
// Interrupt caused by CCD TILT
SNS_DIAG_INTERRUPT_CCD_TILT = 8;
// Interrupt caused by CCD TE0
SNS_DIAG_INTERRUPT_CCD_TE0 = 9;
// Interrupt caused by CCD TE1
SNS_DIAG_INTERRUPT_CCD_TE1 = 10;
// Interrupt caused by CCD TE2
SNS_DIAG_INTERRUPT_CCD_TE2 = 11;
}
// Opaque Payload
// This message defines the fields used to log an undefined payload
message sns_diag_opaque_payload
{
required bytes payload = 1;
}
// Batch Sample
// This message defines the fields used to log batched data.
message sns_diag_batch_sample
{
// Indicates if the sample is the first, intermediate, last or only
// sample of a batch
required sns_diag_batch_sample_type sample_type = 1 [default = SNS_DIAG_BATCH_SAMPLE_TYPE_ONLY];
// Timestamp of the sensor state data sample
required fixed64 timestamp = 2;
// Sensor state data sample
repeated float sample = 3;
// Data status.
required sns_std_sensor_sample_status status = 4 [default = SNS_STD_SENSOR_SAMPLE_STATUS_UNRELIABLE];
}
// Sensor State Hardware Interrupt Log Packet
// This message defines the fields used to log sensor state information
// pertaining to hardware interrupts
// This message is used as the payload field of sns_diag_sensor_log
message sns_diag_sensor_state_interrupt
{
// Type of sensor hardware interrupt
required sns_diag_interrupt interrupt = 1;
// Timestamp when the interrupt occurred
required fixed64 timestamp = 2;
}
// Sensor State Raw
// This message defines the fields used to log sensor state information
// pertaining to raw uncalibrated physical sensor data.
// This message is used as the payload field of sns_diag_sensor_log
message sns_diag_sensor_state_raw
{
repeated sns_diag_batch_sample sample = 1;
}
// Client API Response Message
message sns_diag_client_resp_msg
{
// The error response sent to the client
required sns_std_error error = 1;
}
// Client API log packet
// This message defines the fields to log all
// Request, Response and Event messages at the Client API
// This message is used as the payload field of sns_diag_sensor_log
message sns_diag_client_api_log
{
// The client id that identifies the client connection
required fixed64 client_id = 1;
// Data type of the source sensor
required string src_sensor_type = 2;
// The Client API log packet payload
oneof client_api_log_payload
{
// Client API Request message as defined in sns_client.proto
sns_client_request_msg request_payload = 100;
// Client API Event message as defined in sns_client.proto
sns_client_event_msg event_payload = 101;
// Client API Response message as defined in sns_diag.proto
sns_diag_client_resp_msg resp_payload = 102;
}
}
// Sensor API log packet
// This message defines the fields to log all Request and
// Event messages at the Sensor API
// This message is used as the payload field of sns_diag_sensor_log
message sns_diag_sensor_api_log
{
// The message id of the message being logged
required fixed32 message_id = 1;
// Timestamp associated with this message
required fixed64 timestamp = 2;
// Data stream associated with this message
optional fixed64 stream_id = 3;
// The Sensor API log packet payload
oneof sensor_api_log_payload
{
// Sensor API Event message containing sensor specific event message
// as defined in the sensor's proto api file
sns_diag_opaque_payload opaque_payload = 100;
// Sensor API Request message as defined in sns_std.proto
sns_std_request request_payload = 101;
}
}
// Sensor log packet
// This message defines the fields to log all sensor specific
// messages. This includes Sensor API messages, Client API messages,
// HW Interrupt messages, Sensor State messages
message sns_diag_sensor_log
{
// Log ID for the log packet
required fixed32 log_id = 1;
// Timestamp when log packet.was generated
required fixed64 timestamp = 2;
// Sensor UID for the log packet
required sns_std_suid suid = 3;
// Data type provided by the Sensor UID
required string sensor_type = 4;
// The instance id of the sensor to which this
// message was passed to or obtained from
required fixed64 instance_id = 5;
// The log packet payload
oneof sensor_log_payload
{
// Sensor specific Sensor State Algo message
sns_diag_opaque_payload opaque_payload = 100;
// Sensor API message
sns_diag_sensor_api_log sensor_api_payload = 101;
// Client API message
sns_diag_client_api_log client_api_payload = 102;
// Sensor State Raw message
sns_diag_sensor_state_raw sensor_state_raw_payload = 103;
// Sensor State Hardware Interrupt message
sns_diag_sensor_state_interrupt sensor_state_interrupt_payload = 104;
}
}
// Sensor Instance Mapping Log Packet
// This message defines the fields used to log sensor instance mapping
// information. This message is used as the payload field of sns_diag_fw_log
message sns_diag_instance_map_log
{
// The instance id of the source sensor instance
required fixed64 src_instance_id = 1;
// Array of destination Sensor Instance IDs or Sensor IDs that the
// source sensor instance is feeding to.
// If no destination instance ids are specified it signifies
// deletion of the source instance
repeated fixed64 dest_instance_id = 2;
// Array of data stream ids that the
// source sensor instance is feeding to
repeated fixed64 stream_id = 3;
}
// Island mode states
enum sns_diag_island_state
{
option (nanopb_enumopt).long_names = false;
// In Island mode
SNS_DIAG_ISLAND_STATE_IN_ISLAND_MODE = 0;
// Not in Island Mode
SNS_DIAG_ISLAND_STATE_NOT_IN_ISLAND_MODE = 1;
// Island mode disabled
SNS_DIAG_ISLAND_STATE_ISLAND_DISABLED = 2;
}
// Island mode transition Log Packet
// This message defines the fields used to log
// transitions into and out of island mode
//
// This log packet is generated each time the system transitions into or out
// of island mode or when island mode is disabled or when triggered by
// a request to the diag sensor
//
// This message is used as the payload field of sns_diag_fw_log
message sns_diag_island_transition_log
{
// Timestamp of the transition
//
// When logpacket is triggered, this timestamp will retain
// the timestamp when the current state became effective.
required fixed64 timestamp = 1;
// Island state after transition is completed
required sns_diag_island_state island_state = 2;
// User defined cookie
// Used by test scripts to identify logs triggered
// by messages sent to the SSC
optional fixed64 cookie = 3;
// Total time system spent in island since device boot(micro seconds)
optional fixed64 total_island_time = 4;
}
// Island exit vote Log Packet
// This message defines the fields used to log vote for island mode exits.
//
// This log packet is generated at each call to island_exit()
message sns_diag_island_exit_vote_log
{
// Timestamp
required fixed64 timestamp = 1;
// SUID of the Sensor responsible for the vote
optional sns_std_suid sensor = 2;
}
// Heap IDs
enum sns_diag_heap_id
{
option (nanopb_enumopt).long_names = false;
// Primary Heap
SNS_DIAG_HEAP_ID_HEAP_MAIN = 0;
// Island Heap
SNS_DIAG_HEAP_ID_HEAP_ISLAND = 1;
// PRAM Heap
SNS_DIAG_HEAP_ID_HEAP_PRAM = 2;
// EVENT Heap
SNS_DIAG_HEAP_ID_HEAP_EVENT = 3;
// BATCH Heap
SNS_DIAG_HEAP_ID_HEAP_BATCH = 4;
// Event buffer
SNS_DIAG_HEAP_ID_EVENT_BUFFER = 100;
}
// Memory status Log Packet
// This message defines the fields used to log the memory utilization
// This log packet is generated when a request is sent to the diag sensor
message sns_diag_mem_utilization_log
{
// Timestamp
required fixed64 timestamp = 1;
// Heap ID
required sns_diag_heap_id heap_id = 2;
// Total Memory
required fixed32 total_memory = 3;
// Used Memory
required fixed32 used_memory = 4;
// User defined cookie
// Used by test scripts to identify logs triggered
// by messages sent to the SSC
optional fixed64 cookie = 5;
}
// Event Service status Log Packet
// This message defines the fields used to log the memory utilization and
// other statistics from the Event Service.
// Used only for SW debug; *not guaranteed to be backward compatible*
// This log packet is generated when a request is sent to the diag sensor
message sns_diag_event_service_log
{
// Timestamp
required fixed64 timestamp = 1;
// User defined cookie
// Used by test scripts to identify logs triggered
// by messages sent to the SSC
optional fixed64 cookie = 2;
message heap_stats
{
enum sns_event_service_heap_id
{
SNS_EVENT_SERVICE_HEAP_ID_ISLAND = 0;
SNS_EVENT_SERVICE_HEAP_ID_MAIN = 1;
}
// Heap ID
required sns_event_service_heap_id heap_id = 1;
// Total memory available in heap (in blocks)
required fixed32 total_memory = 2;
// Current memory consumption (in blocks)
required fixed32 used_memory = 3;
// Maximum memory consumption since last log packet (in blocks)
required fixed32 max_memory = 4;
// Total clusters available
required fixed32 total_clusters = 5;
// Current number of clusters in use
required fixed32 used_clusters = 6;
// Maximum in-use clusters since last log packet
required fixed32 max_clusters = 7;
// Number of allocation failues since the last DIAG log packet
// If Island will result in island exit; else causes dropped samples
required fixed32 alloc_failures = 8;
// Largest event allocation since the last DIAG log packet (in bytes)
required fixed32 max_size = 9;
}
repeated heap_stats stats = 3;
}
// Framework log packet
// This message defines the fields to log all framework messages. This
// includes memory, island, instance mapping messages.
message sns_diag_fw_log
{
// Log ID for the log packet
required fixed32 log_id = 1;
// Timestamp when log packet.was generated
required fixed64 timestamp = 2;
// The log packet payload
oneof fw_log_payload
{
// Sensor Instance Map message
sns_diag_instance_map_log instance_map_payload = 100;
// Sensor Island Mode
sns_diag_island_transition_log island_mode_payload = 101;
// Sensors Island Exit vote
// NOT SUPPORTED YET.
sns_diag_island_exit_vote_log island_exit_vote_payload = 102;
// Sensors Memory Utilization
sns_diag_mem_utilization_log memory_utilization_payload = 103;
// Event Service status log
sns_diag_event_service_log event_service_payload = 104;
}
}
@@ -0,0 +1,51 @@
// @file sns_diag_sensor.proto
//
// Defines standard message types to communicate with the
// diag service
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_type.proto";
enum sns_diag_sensor_msgid {
option (nanopb_enumopt).long_names = false;
SNS_DIAG_SENSOR_MSGID_SNS_DIAG_LOG_TRIGGER_REQ = 520;
}
// Log packets that can be triggered by the diag sensor
enum sns_diag_triggered_log_type {
option (nanopb_enumopt).long_names = false;
// Triggers generation of sns_diag_island_transition_log
// Only one log is generated per request
SNS_DIAG_TRIGGERED_LOG_TYPE_ISLAND_LOG = 1;
// Triggers generation of sns_diag_mem_utilization_log
// A single request will generate a log for each separate memory
// pool in the system
SNS_DIAG_TRIGGERED_LOG_TYPE_MEMORY_USAGE_LOG = 2;
}
// Trigger generation of log packets. Depending upon
// the type of log packet that is being triggered,
// multiple log packets can be triggered for each
// request.
//
// If the log packet that is triggered has been disabled
// no log will be generated.
message sns_diag_log_trigger_req {
// User defined cookie
// Used by test scripts to identify logs triggered
// by messages sent to the SSC
optional fixed64 cookie = 1;
// The type of log packets that the diag sensor must
// generate.
required sns_diag_triggered_log_type log_type = 2;
}
@@ -0,0 +1,124 @@
// @file sns_direct_channel.proto
//
// Defines the Sensors Direct Channel interface that can be used by clients to get sensor data via direct channel
//
// Copyright (c) 2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_type.proto";
import "sns_std.proto";
// To activate a stream on a channel
// " get Channel first by sending sns_direct_channel_create_msg -> then send sns_direct_channel_set_ts_offset -> send sns_direct_channel_set_client_req for sns_direct_channel_stream_id"
// To activate another stream on existing channel
// "Send sns_direct_channel_set_client_req on existing Channel for new sns_direct_channel_stream_id"
// To update the existing request on the channel
// "Send updated sns_direct_channel_set_client_req on existing Channel with already added sns_direct_channel_stream_id"
// To remove existing request on the channel
// "Send sns_direct_channel_remove_client_req on existing Channel for any added sns_direct_channel_stream_id"
// To update time stamp offset on channel.
// "Send sns_direct_channel_set_ts_offset on existing Channel with ts_offset"
enum direct_channel_type {
option (nanopb_enumopt).long_names = false;
// Sensor data from multiple streams can be multiplexed in one channel
// Samples are compatible to sensors_event_t format defined by Android Spec
// ref: SensorsEventFormatOffset( a.k.a sensors_event_t) at hardware/interfaces/sensors/1.0/types.hal
DIRECT_CHANNEL_TYPE_STRUCTURED_MUX_CHANNEL = 0;
// Sensors Data format expected in Raw bytes only.
// Sensors data format is not mandated in the API.
// This channel type can be used by clients who know how to interpret the sensor data from respective sensor source.
DIRECT_CHANNEL_TYPE_GENERIC_CHANNEL = 1;
}
// stream id for different direct channel streams
message sns_direct_channel_stream_id {
// sensor responsible for data
required sns_std_suid suid = 1;
// if set to true, auto calibrated data is generated
// if set to false, factory calibrated data is generated
optional bool calibrated = 2 [default = true];
// if set to true, resampled data is generated at rate which is at most twice the requested rate
// if set to false, data is generated at native rate supported by driver, advertised with attributes - SNS_STD_SENSOR_ATTRID_RATES and SNS_STD_SENSOR_ATTRID_ADDITIONAL_LOW_LATENCY_RATES
optional bool resampled = 3 [ default = true];
}
// Direct channel Creation Request Message
message sns_direct_channel_create_msg {
// ION fd, size to get Virtual address that can be used by Q6
message shared_buffer_config {
required fixed32 fd = 1;
required fixed32 size = 2;
}
required shared_buffer_config buffer_config = 1;
// Each channel can be either DIRECT_CHANNEL_TYPE_STRUCTURED_MUX_CHANNEL or DIRECT_CHANNEL_TYPE_GENERIC_CHANNEL
// e.g Android Direct Report Channel for DIRECT_CHANNEL_TYPE_STRUCTURED_MUX_CHANNEL
required direct_channel_type channel_type = 2 ;
// Processor hosting the sensor data client
// Default processor is Application Processor
optional sns_std_client_processor client_proc = 3 [ default = SNS_STD_CLIENT_PROCESSOR_APSS];
}
// Client request on Direct Channel
message sns_direct_channel_set_client_req {
// msg id for sns_std_request, see sns_std.proto for more information.
required fixed32 msg_id = 1;
// unique id for each stream on the channel
required sns_direct_channel_stream_id stream_id = 2;
// generic sns_std_request
required sns_std_request request = 3;
// required attributes for DIRECT_CHANNEL_TYPE_STRUCTURED_MUX_CHANNEL
message structured_mux_channel_stream_attributes {
// Unique handle per sensor, client has to supply for mapping in sensor hub to "sensor_event_t::sensor" variable
required fixed32 sensor_handle = 1;
// Corresponds to android sensor type, client has to supply for mapping in sensor hub to "sensor_event_t::type" variable
required fixed32 sensor_type = 2;
}
optional structured_mux_channel_stream_attributes attributes = 4;
}
// Direct Channel remove client request message
message sns_direct_channel_remove_client_req {
required sns_direct_channel_stream_id stream_id = 1;
}
// Clients interested in Client Time Domain Time Stamp has to supply offset value
// direct channel in sensor hub adds this value to its own time domain time stamp to generate Client Time Domain Time Stamp
message sns_direct_channel_set_ts_offset {
required fixed64 ts_offset = 1;
}
// Direct Channel Configuration Message
message sns_direct_channel_config_msg {
oneof channel_config_msg_payload
{
sns_direct_channel_set_client_req set_client_req = 100;
sns_direct_channel_remove_client_req remove_client_req = 101;
sns_direct_channel_set_ts_offset set_ts_offset = 102;
}
}
+64
View File
@@ -0,0 +1,64 @@
// @file sns_dpc.proto
//
// Defines message types for the DPC(Device Position Classifier) Sensor.
//
// Copyright (c) 2017-2018, 2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// The DPC Sensor provides device position information
// DPC Sensor Attribute Requirements:
// SNS_STD_SENSOR_ATTRID_TYPE: "device_position_classifier"
// SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_TYPE_ON_CHANGE
// Stream Requests:
// - SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG is used to enable the sensor
// Message IDs for DPC Sensor
enum sns_dpc_msgid {
option (nanopb_enumopt).long_names = false;
//send to new client immediatly to inform current device position
SNS_DPC_MSGID_SNS_DPC_EVENT_CONFIG = 777;
//send when detect device position change
SNS_DPC_MSGID_SNS_DPC_EVENT = 1030;
}
// Stream events:
//
// The sns_dpc_event message is used to publish updated device position
// The sns_dpc_event_config message is sent immediately to new client to inform the current device position
enum sns_dpc_state
{
option (nanopb_enumopt).long_names = false;
// when algo cannot identify other states
SNS_DPC_UNKNOWN = 1;
// User keeps the device steady with display at an angle within +/-15 deg with respect to the horizontal plane
SNS_DPC_FLAT_STATIC = 2;
// Device is not in FLAT_STATIC state and proximity sensor detects NEAR
SNS_DPC_HIDDEN = 3;
// User picks up the device
SNS_DPC_IN_HAND = 4;
// User keeps the device steady with display at an angle greater than +/-15 deg with respect to the horizontal plane
SNS_DPC_FACING = 5;
}
// Events types from DPC Sensor
message sns_dpc_event
{
required sns_dpc_state dpc_state = 1;
}
message sns_dpc_event_config
{
//current dpc state
required sns_dpc_state dpc_state = 1;
}
+72
View File
@@ -0,0 +1,72 @@
// @file sns_ext_svc.proto
//
// Sensor provides access to external QMI services.
//
// This Sensor will create a connection to the external service upon
// receipt of the first request. Subsequent requests will be sent upon the
// same connection. The connection will be closed after the client closes
// the data stream.
//
// An error event will be sent upon any received error, including upon
// the error callback. It is then the responsibility of the client to close
// the data stream, and re-open a new one if desired.
//
// Copyright (c) 2017, 2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
enum sns_ext_svc_msgid
{
option (nanopb_enumopt).long_names = false;
// Send a request message
SNS_EXT_SVC_MSGID_SNS_EXT_SVC_REQ = 512;
// Asynchronously received response message
SNS_EXT_SVC_MSGID_SNS_EXT_SVC_RESP = 768;
// Asynchronously received indication message
SNS_EXT_SVC_MSGID_SNS_EXT_SVC_IND = 1024;
}
message sns_ext_svc_req
{
required uint32 svc_id = 1;
// QMI/IDL Message ID
required int32 msg_id = 2;
// Client-specified transaction ID, to be returned in sns_ext_svc_resp
optional int32 transaction_id = 3;
// Contains the QMI-decoded request message.
required bytes payload = 4;
}
message sns_ext_svc_resp
{
// QMI/IDL Message ID
required int32 msg_id = 1;
// Transport error, as defined in qmi_client.h; Defaults to QMI_NO_ERR
required int32 transp_err = 2;
// Client-specified transaction ID, as provided in sns_ext_svc_req
optional int32 transaction_id = 3;
// Contains the QMI-decoded response message
// May be empty if transport_err != QMI_NO_ERR
required bytes payload = 4;
}
message sns_ext_svc_ind
{
// QMI/IDL Message ID
required int32 msg_id = 1;
// Contains the QMI-decoded indication message.
required bytes payload = 2;
}
+60
View File
@@ -0,0 +1,60 @@
// @file sns_facing.proto
//
// Defines message types for the the facing sensor
//
// Copyright (c) 2017 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// Facing calculates face up, down and neutral states. Facing will initially start in an
// unknown state, and later transition to face up, down and neutral.
// Neutral state reported to client on demand
// Facing Sensor Attribute Requirements:
// SNS_STD_SENSOR_ATTRID_TYPE: "facing"
// SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_TYPE_ON_CHANGE
// Stream Requests:
// - SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG is used to enable the sensor
// Message IDs for Facing Sensor
enum sns_facing_msgid
{
option (nanopb_enumopt).long_names = false;
SNS_FACING_MSGID_SNS_FACING_EVENT = 1024;
}
// Device Facing state detected by Facing sensor
enum sns_facing_event_state
{
option (nanopb_enumopt).long_names = false;
SNS_FACING_EVENT_STATE_UNKNOWN = 0;
//Phone has just moved to a facing-up phone posture
//which is defined as screen up.
SNS_FACING_EVENT_STATE_UP = 1;
//Phone has just moved to a facing-down phone posture,
//which is defined as screen down.
SNS_FACING_EVENT_STATE_DOWN = 2;
//Phone has just left either the facing-up
//or the facing-down phone posture
SNS_FACING_EVENT_STATE_NEUTRAL = 3;
}
// Event Message
// Output data event generated by the facing sensor.
message sns_facing_event
{
// Facing sensor state info
required sns_facing_event_state state = 1[default = SNS_FACING_EVENT_STATE_UNKNOWN];
}
// Stream events:
//
// The sns_facing_event message is used to publish updated state
//
// Facing sensor does not publish configuration events.
+40
View File
@@ -0,0 +1,40 @@
// @file sns_fmv.proto
//
// Defines the API for Filtered Magnetic Vector.
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "sns_std_sensor.proto";
// A FMV sensor reports the filtered magnetic vector
//
// ## FMV sensor attributes:
// SNS_STD_SENSOR_ATTRID_TYPE is "fmv"
//
// ## Request Message: sns_std_sensor_config
// sns_std_sensor_config::sample_rate is used to specify the sampling rate (Hz)
// of the FMV sensor. Sensor will generate data events at this rate.
//
// ## Event Message: sns_std_sensor_event
// 1. Output of the FMV sensor will be populated in sns_std_sensor_event
// 2. Each stream event contains three output data fields in µT (micro Tesla)
// 3. Data in the stream is adjusted to Android coordinate system relative to a
// mobile device held with screen facing the user in it's natural orientation:
// X-axis: parallel to the screen pointing to the right
// Y-axis: parallel to the screen pointing to the top
// Z-axis: perpendicular to the screen pointing towards the user
// 4. Data in the stream event is ordered as:
// data[0] = X-axis
// data[1] = Y-axis
// data[2] = Z-axis
// 5. Each stream event publishes an accuracy field:
// SNS_STD_SENSOR_SAMPLE_STATUS_UNRELIABLE to mark invalid samples when hardware is
// yet to stabilize after the sensor is configured.
// SNS_STD_SENSOR_SAMPLE_STATUS_ACCURACY_HIGH to mark samples when they are valid.
//
// sns_std_sensor_event::status specifies the reliability of the sample value
// value is of type sns_std_sensor_sample_status. see sns_std_sensor.proto for
// details.
+121
View File
@@ -0,0 +1,121 @@
// @file sns_offset_formatter.proto
//
// Defines standard message types for the Offset/Formatter sensor
//
// Copyright (c) 2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_type.proto";
import "sns_std_sensor.proto";
enum sns_formatter_msgid {
option (nanopb_enumopt).long_names = false;
SNS_FORMATTER_MSGID_SNS_FORMATTER_REQUEST = 512;
SNS_FORMATTER_MSGID_SNS_FORMATTER_METRIC_DATA_REQUEST = 513;
SNS_FORMATTER_MSGID_SNS_FORMATTER_OUTPUT_EVENT = 1024;
SNS_FORMATTER_MSGID_SNS_FORMATTER_ACK_EVENT = 1025;
}
enum sns_formatter_request_values {
option (nanopb_enumopt).long_names = false;
SNS_FORMATTER_REQUEST_INVALID = 0;
// Creates a new instance of a metric with given id.
SNS_FORMATTER_REQUEST_CREATE = 1;
// Starts or resumes the update of the metric instances.
SNS_FORMATTER_REQUEST_START = 2;
// Pauses the update of the metric instances.
SNS_FORMATTER_REQUEST_STOP = 3;
// Resets metric instance state.
SNS_FORMATTER_REQUEST_RESET = 4;
// Destroys the metric instance. Release the resources for that instance.
SNS_FORMATTER_REQUEST_DESTROY = 5;
// Set the config data based on the group name.
SNS_FORMATTER_REQUEST_CONFIG_SET = 6;
// fetch the config data based on the group name.
SNS_FORMATTER_REQUEST_CONFIG_GET = 7;
// Updates the batch period at the client manager.
SNS_FORMATTER_REQUEST_BATCH = 8;
}
enum sns_formatter_status_values {
option (nanopb_enumopt).long_names = false;
SNS_FORMATTER_STATUS_FAILURE = 0;
SNS_FORMATTER_STATUS_INVALID_PARAM = 1;
SNS_FORMATTER_STATUS_SUCCESS = 2;
}
enum sns_formatter_client_id {
option (nanopb_enumopt).long_names = false;
SNS_FORMATTER_CLIENT_BG = 0;
SNS_FORMATTER_CLIENT_APPS = 1;
}
enum sns_formatter_event_type {
option (nanopb_enumopt).long_names = false;
SNS_FORMATTER_OUTPUT_DATA_EVENT = 0;
SNS_FORMATTER_OUTPUT_BUFFER_EVENT = 1;
SNS_FORMATTER_CONFIG_DATA_EVENT = 2;
}
// "UNUSED" is filled by clients for strings which are
// not applicable for a given sns_formatter-request_values id.
message sns_formatter_config_payload {
optional sns_std_suid metric_sensor_suid = 1;
required sns_std_suid formatter_suid = 2;
required float sample_rate = 3;
required string format_input_str = 4;
required string metric_name = 5;
required string group_name = 7;
required string sensor_config_data = 8;
}
message sns_formatter_output_event_payload
{
required bytes data = 1;
required sns_std_sensor_sample_status status = 2;
required sns_formatter_event_type event_type = 3;
}
// Formatter config message
// Used by clients to configure the formatter for various metrics
message sns_formatter_request
{
required sns_formatter_request_values msg_id = 1;
required fixed32 metric_id = 2;
required sns_formatter_client_id client_id = 3;
optional sns_formatter_config_payload payload = 4;
optional sns_formatter_output_event_payload event_payload = 5;
}
message sns_formatter_metric_data_request
{
required fixed32 metric_id = 1;
required bytes metric_data = 2;
}
// Formatter output event
// This event contains the formatted string output corresponding to the
// metric requested by the client.
message sns_formatter_output_event
{
required fixed32 metric_id = 1;
required string formatted_output = 2;
required sns_formatter_output_event_payload event_payload = 3;
}
// Formatter acknowledge event
// This event contains the status for the request sent from the client.
// Status indicates if the requested format string was valid or not.
message sns_formatter_ack_event
{
required fixed32 metric_id = 1;
required sns_formatter_status_values status = 2;
}
+23
View File
@@ -0,0 +1,23 @@
// @file sns_fw.proto
//
// Defines Framework internal values.
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
// Internal Framework message IDs
// Note: These message IDs must not conflict with those in sns_std_msgid
enum sns_fw_msgid {
option (nanopb_enumopt).long_names = false;
// Special message only sent by the Framework; not processed by Sensors
// Empty Message
SNS_FW_MSGID_SNS_DESTROY_REQ = 120;
// Special message only sent by the Framework; not processed by Sensors
// Empty Message
SNS_FW_MSGID_SNS_DESTROY_COMPLETE_EVENT = 250;
}
+48
View File
@@ -0,0 +1,48 @@
// @file sns_game_rv.proto
//
// Defines the API for Game Rotation Vector sensors
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "sns_std_sensor.proto";
// A GameRV sensor reports the orientation of the device relative to an
// unspecified coordinates frame. It is obtained by integration of
// accelerometer and gyroscope readings. Therefore the Y axis doesn't point
// north but instead to an arbitrary reference.
//
// ## GameRV sensor attributes:
// 1. SNS_STD_SENSOR_ATTRID_TYPE is "game_rv"
//
// ## Request Message: sns_std_sensor_config
// sns_std_sensor_config::sample_rate is used to specify the sampling rate (Hz)
// of the GameRV sensor. Sensor will generate data events at this rate.
//
// ## Event Message: sns_std_sensor_event
// Output of the GameRV sensor will be populated in sns_std_sensor_event
//
// The orientation is represented by the rotation necessary to align
// the coordinate frame with the device's coordinates. That is,
// applying the rotation to the world frame (X,Y,Z) would align them with
// the device coordinates (x,y,z).
//
// The rotation can be seen as rotating the device by an angle theta around an
// axis rot_axis to go from the reference device orientation to the current
// device orientation. The rotation is encoded as the four unitless x, y, z, w
// components of a unit quaternion:
// sns_std_sensor_event::data[0] = rot_axis.x*sin(theta/2)
// sns_std_sensor_event::data[1] = rot_axis.y*sin(theta/2)
// sns_std_sensor_event::data[2] = rot_axis.z*sin(theta/2)
// sns_std_sensor_event::data[3] = cos(theta/2)
//
// Where:
// - the x, y and z fields of rot_axis are the East-North-Up coordinates
// of a unit length vector representing the rotation axis
// - theta is the rotation angle
//
// sns_std_sensor_event::status specifies the reliability of the sample value
// value is of type sns_std_sensor_sample_status. see sns_std_sensor.proto for
// details.
@@ -0,0 +1,50 @@
// @file sns_geomag_rv.proto
//
// Defines the API for Geomagnetic Rotation Vector sensors.
// This Sensor is similar to Rotation Vector, but uses a magnetometer instead
// of a gyroscope.
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "sns_std_sensor.proto";
// A GeoMagRV sensor reports the orientation of the device relative to the
// East-North-Up coordinates frame. It is obtained by integration of
// accelerometer and magnetometer readings.
//
// ## GeoMagRV sensor attributes:
// SNS_STD_SENSOR_ATTRID_TYPE is "geomag_rv"
//
// ## Request Message: sns_std_sensor_config
// sns_std_sensor_config::sample_rate is used to specify the sampling rate (Hz)
// of the GeoMagRV sensor. Sensor will generate data events at this rate.
//
// ## Event Message: sns_std_sensor_event
// Output of the GeoMagRV sensor will be populated in sns_std_sensor_event
//
// The East-North-Up coordinate system is defined as a direct orthonormal
// basis where:
// - X points east and is tangential to the ground.
// - Y points north and is tangential to the ground.
// - Z points towards the sky and is perpendicular to the ground.
//
// The rotation can be seen as rotating the device by an angle theta around an
// axis rot_axis to go from the reference device orientation to the current
// device orientation. The rotation is encoded as the four unitless x, y, z, w
// components of a unit quaternion:
// sns_std_sensor_event::data[0] = rot_axis.x*sin(theta/2)
// sns_std_sensor_event::data[1] = rot_axis.y*sin(theta/2)
// sns_std_sensor_event::data[2] = rot_axis.z*sin(theta/2)
// sns_std_sensor_event::data[3] = cos(theta/2)
//
// Where:
// - the x, y and z fields of rot_axis are the East-North-Up coordinates
// of a unit length vector representing the rotation axis
// - theta is the rotation angle
//
// sns_std_sensor_event::status specifies the reliability of the sample value
// value is of type sns_std_sensor_sample_status. see sns_std_sensor.proto for
// details.
+30
View File
@@ -0,0 +1,30 @@
// @file sns_gravity.proto
//
// Defines standard message types for the Gravity Sensor
//
// Copyright (c) 2016-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
// Configuration Message
// Used to either request for a certain configuration of the gravity sensor or
// alter an already existing configuration of the gravity sensor
// Uses sns_std_sensor_config defined in sns_std_sensor.proto
// The message field definitions are as follows:
// 1) float sample_rate
// containing the required sample rate of the gravity sensor in hertz
// Data Message
// Data event generated by the gravity.
// Uses sns_std_sensor_event message defined in sns_std_sensor.proto
// The data field of the sns_std_sensor_event message
// contains a float array of length 6 with the following definition
// 1) float data[0] to data[2]
// Representing the gravity values along x,y,z axes in m/s2.
// 2) float data[3] to data[5]
// Representing the linear acceleration values along x,y,z axes in m/s2.
// Determined as the delta between the accel and the gravity values
// along that axis.
+74
View File
@@ -0,0 +1,74 @@
// @file sns_gyro.proto
//
// Defines the API for Gyroscope Sensors.
// All Gyroscope Sensor drivers are required to comply with this API.
// Any new functionality for Gyroscope Sensor can be defined in a
// device specific API file.
//
// Copyright (c) 2016-2018, 2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
import "sns_physical_sensor_test.proto";
import "sns_cal.proto";
// Attribute requirements:
// The Gyroscope Sensor publishes:
// 1. SNS_STD_SENSOR_ATTRID_TYPE attribute value as "gyro".
// 2. SNS_STD_SENSOR_ATTRID_RESOLUTIONS attribute value in (radians/sec)/LSB.
// 3. SNS_STD_SENSOR_ATTRID_RANGES attribute values in radians/sec unit.
// 4. See sns_std_sensor.proto for other attributes.
// Handling stream requests:
// 1. The Gyroscope Sensor handles the sns_std_sensor_config
// message request for all stream enable/update requests.
// 2. The Gyroscope Sensor uses batching_period item in
// sns_std_request as the requested batching rate to determine
// hardware FIFO watermark.
// Handling stream events:
// 1. The Gyroscope Sensor publishes device rotation data stream events
// using the sns_std_sensor_event message.
// 2. Each stream event contains three output data fields where data is
// in radians/sec units and is factory calibrated.
// 3. Data in the stream is adjusted to Android coordinate system relative to a
// mobile device held with screen facing the user in it's natural orientation:
// X-axis: parallel to the screen pointing to the right
// Y-axis: parallel to the screen pointing to the top
// Z-axis: perpendicular to the screen pointing towards the user
// This conforms to the mobile device axes orientation as specified by the
// Android Sensor API.
// 4. Data in the stream event is ordered as:
// data[0] = X-axis
// data[1] = Y-axis
// data[2] = Z-axis
// 5. Each stream event publishes an accuracy field:
// SNS_STD_SENSOR_SAMPLE_STATUS_UNRELIABLE to mark invalid samples when hardware is
// yet to stabilize after the sensor is configured.
// SNS_STD_SENSOR_SAMPLE_STATUS_ACCURACY_HIGH to mark samples when they are valid.
// 6. The Gyroscope Sensor publishes a configuration event using the
// sns_std_sensor_physical_config_event message.
// It publishes this event each time there is change in hardware config of the sensor
// and contains current physical sensor config of the sensor.
// 7. The Gyroscope Sensor publishes a factory calibration event using the
// sns_cal_event message. It uses bias and comp_matrix fields in this event.
// It publishes this event each time there is change in it's factory calibration
// data or when a client sends a new streaming request.
// Handling self-test requests:
// 1. The Gyroscope Sensor implements SNS_PHYSICAL_SENSOR_TEST_TYPE_COM test
// type using the physical sensor test API.
// 2. The Gyroscope Sensor implements SNS_PHYSICAL_SENSOR_TEST_TYPE_FACTORY test
// type to determine factory calibration parameters using the physical
// sensor test API.
// 3. The Gyroscope Sensor could implement other test types.
// Handling test events:
// 1. The Gyroscope Sensor uses sns_physical_sensor_test_event message to publish
// a test completion event.
// 2. The test_passed field in sns_physical_sensor_test_event is used to output the
// pass/fail result of self-test execution.
// 3. The test_data field in sns_physical_sensor_test_event could be used to output any
// driver-specific error data.
+32
View File
@@ -0,0 +1,32 @@
// @file sns_gyro_cal.proto
//
// Defines message types for the Gyro Calibration Sensor.
//
// Copyright (c) 2017-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_cal.proto";
// The Gyro Calibration Sensor determines the calibration parameters
// for gyro sensor
// Gyro Calibration Sensor Attributes:
// - SNS_STD_SENSOR_ATTRID_TYPE: "gyro_cal"
// - SNS_STD_SENSOR_ATTRID_STREAM_TYPE: SNS_STD_SENSOR_STREAM_TYPE_ON_CHANGE
// Stream Requests:
// - SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG message ID is used to
// enable the sensor
// - SNS_CAL_MSGID_SNS_CAL_RESET message ID is used to reset the algorithm
// and any previously determined calibration parameters.
// Stream Events:
// - SNS_CAL_MSGID_SNS_CAL_EVENT message ID is used to report calibration
// parameters to the client of the sensor. The sns_cal_event message as
// defined in sns_cal.proto is used to report this data event where the
// units for the bias field in the message are in rad / s
@@ -0,0 +1,50 @@
// @file sns_gyro_rot_matrix.proto
//
// Defines standard message types for the Gyro Rotation Matrix
//
// Copyright (c) 2016-2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
enum sns_gyro_rot_matrix_msgid
{
option (nanopb_enumopt).long_names = false;
SNS_GYRO_ROT_MATRIX_MSGID_SNS_STD_SENSOR_EVENT = 1024;
}
// Data Message
// Data event generated by the gyro rotation matrix.
// Uses sns_std_sensor_event message defined in sns_std_sensor.proto
// The data field of the sns_std_sensor_event message
// contains a float array of length 10 with the following definition
// 1) float data[0] to data[8]
// 3 by 3 Gyro Rotation Matrix output
// Representing the rotation from previously sampled gyro values
// to the current one.
// The matrix definition is as follows:
// curr_gyro_XYZ[3X1] = gyro_rot_matrix[3X3] * prev_gyro_XYZ[3X1]
// data[0] = gyro_rot_matrix[0,0]
// data[1] = gyro_rot_matrix[0,1]
// data[2] = gyro_rot_matrix[0,2]
// data[3] = gyro_rot_matrix[1,0]
// data[4] = gyro_rot_matrix[1,1]
// data[5] = gyro_rot_matrix[1,2]
// data[6] = gyro_rot_matrix[2,0]
// data[7] = gyro_rot_matrix[2,1]
// data[8] = gyro_rot_matrix[2,2]
// 2) float data[9]
// Gyro Norm of the currently sampled gyro data
// determined as the sum of squares of gyro on each of the axes
// i.e. curr_gyro_X^2 + curr_gyro_Y^2 + curr_gyro_Z^2
// Configuration Message
// Used to either request for a certain configuration of the Gyro Rotation Matrix Sensor or
// alter an already existing configuration of the Simulation Sensor
// Uses sns_std_sensor_config defined in sns_std_sensor.proto
// The message field definitions are as follows:
// 1) float sample_rate
// containing the required sample rate of the Gyro Rotation Matrix sensor in hertz
+82
View File
@@ -0,0 +1,82 @@
// @file sns_hall.proto
//
// Defines the API for Hall Sensors.
// All Hall Sensor drivers are required to comply with this API.
// Any new functionality for Hall Sensor can be defined in a
// device specific API file.
//
// Copyright (c) 2016-2018, 2020 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
syntax = "proto2";
import "nanopb.proto";
import "sns_std_sensor.proto";
import "sns_physical_sensor_test.proto";
import "sns_cal.proto";
// Attribute requirements:
// The Hall Sensor publishes:
// 1. SNS_STD_SENSOR_ATTRID_TYPE attribute value as "hall".
// 2. SNS_STD_SENSOR_ATTRID_RESOLUTIONS attribute is not applicable since this is an event
// sensor.
// 3. SNS_STD_SENSOR_ATTRID_RANGES attribute values as 0 and 1.
// 4. See sns_std_sensor.proto for other attributes.
// Handling stream requests:
// 1. The Hall Sensor handles the SNS_STD_SENSOR_MSGID_SNS_STD_ON_CHANGE_CONFIG
// message ID for all stream enable/update requests.
// 2. The Hall Sensor operates in on-change mode and report
// samples only for magnet NEAR/FAR transitions.
// Message IDs for hall Sensor
enum sns_hall_msgid {
option (nanopb_enumopt).long_names = false;
// Uses message: sns_hall_event
// Purpose: An output data event from the hall sensor to it's client.
SNS_HALL_MSGID_SNS_HALL_EVENT = 770;
}
enum sns_hall_event_type {
option (nanopb_enumopt).long_names = false;
SNS_HALL_EVENT_TYPE_FAR = 0;
SNS_HALL_EVENT_TYPE_NEAR = 1;
}
// Events types from hall Sensor
message sns_hall_event
{
// Hall NEAR/FAR output event
required sns_hall_event_type hall_event_type = 1 [default = SNS_HALL_EVENT_TYPE_FAR];
// Hall sensor sample status
required sns_std_sensor_sample_status status = 2 [default = SNS_STD_SENSOR_SAMPLE_STATUS_UNRELIABLE];
}
// Handling stream events:
// 1. The Hall Sensor publishes magnetic field proximity data stream
// events using the sns_hall_event message.
// 2. Each stream event publishes an accuracy field:
// SNS_STD_SENSOR_SAMPLE_STATUS_UNRELIABLE to mark invalid samples when hardware is
// yet to stabilize after the sensor is configured.
// SNS_STD_SENSOR_SAMPLE_STATUS_ACCURACY_HIGH to mark samples when they are valid.
// 3. The Hall Sensor publishes a configuration event using the
// sns_std_sensor_physical_config_event message.
// It publishes this event each time there is change in hardware config of the sensor
// and contains current physical sensor config of the sensor.
// Handling self-test requests:
// 1. The Hall Sensor implements SNS_PHYSICAL_SENSOR_TEST_TYPE_COM test
// type using the physical sensor test API.
// 2. The Hall Sensor could implement other test types.
// Handling test events:
// 1. The Hall Sensor uses sns_physical_sensor_test_event message to publish
// a test completion event.
// 2. The test_passed field in sns_physical_sensor_test_event is used to output the
// pass/fail result of self-test execution.
// 3. The test_data field in sns_physical_sensor_test_event could be used to output any
// driver-specific error data.

Some files were not shown because too many files have changed in this diff Show More