更新st_iio

This commit is contained in:
liiir1985 2024-06-24 22:39:28 +08:00
parent 29f7bd02f0
commit a97eeff98d
31 changed files with 527 additions and 168 deletions

View File

@ -1,2 +1,2 @@
rk3588
opi-rk3588.mk
slpad-rk3588.mk

View File

@ -1 +1 @@
rp_boards/opi-rk3588.mk
rp_boards/slpad-rk3588.mk

View File

@ -35,6 +35,7 @@ VERSION_P := $(shell test $(MAJOR_VERSION) -eq 9 && echo true)
VERSION_Q := $(shell test $(MAJOR_VERSION) -eq 10 && echo true)
VERSION_R := $(shell test $(MAJOR_VERSION) -eq 11 && echo true)
VERSION_S := $(shell test $(MAJOR_VERSION) -eq 12 && echo true)
VERSION_T := $(shell test $(MAJOR_VERSION) -eq 13 && echo true)
ifeq ($(VERSION_KK),true)
ST_HAL_ANDROID_VERSION := 0
@ -72,6 +73,10 @@ ifeq ($(VERSION_S),true)
ST_HAL_ANDROID_VERSION := 7
DEFCONFIG := android_S_defconfig
endif # VERSION_S
ifeq ($(VERSION_T),true)
ST_HAL_ANDROID_VERSION := 7
DEFCONFIG := android_T_defconfig
endif # VERSION_T
ANDROID_VERSION_CONFIG_HAL=$(CURRENT_DIRECTORY)/android_data_config
KCONFIG_CONFIG_HAL=$(CURRENT_DIRECTORY)/hal_config
@ -149,6 +154,8 @@ ifeq ($(MAKECMDGOALS),)
MAKECMDGOALS := all_modules
endif
ifeq ($(filter sensors-defconfig sensors-menuconfig sensors-cleanconf,$(MAKECMDGOALS)),)
ifeq ("$(wildcard $(KCONFIG_CONFIG_HAL))","")
$(warning ${\n}${\n}${\space}${\n})
$(warning ${\n}Defconfig file not found. Using default one: `$(DEFCONFIG)`)
$(warning ${\n}If you want to change HAL configuration please follow the steps below:${\n})
@ -158,7 +165,9 @@ $(warning ${\n}PLATFORM_VERSION=$(PLATFORM_VERSION) make sensors-menuconfig${\n}
$(warning ${\n}${\n}${\space}${\n})
$(shell cp $(CURRENT_DIRECTORY)/src/$(DEFCONFIG) $(KCONFIG_CONFIG_HAL))
$(shell $(CURRENT_DIRECTORY)/tools/mkconfig $(CURRENT_DIRECTORY)/ > $(CURRENT_DIRECTORY)/configuration.h)
endif # KCONFIG_CONFIG_HAL
include $(call all-makefiles-under, $(CURRENT_DIRECTORY))
endif # filter
endif # !TARGET_SIMULATOR

View File

@ -1,56 +1,56 @@
#common iio char devices
#common iio char bus/iio
/dev/iio:device* 0666 system system
#common sensors files
/sys/devices/iio:device* buffer/enable 0666 system system
/sys/devices/iio:device* buffer/length 0666 system system
/sys/devices/iio:device* sampling_frequency 0666 system system
/sys/devices/iio:device* scan_elements/in_timestamp_en 0666 system system
/sys/devices/iio:device* hwfifo_flush 0666 system system
/sys/devices/iio:device* hwfifo_enabled 0666 system system
/sys/devices/iio:device* hwfifo_watermark 0666 system system
/sys/devices/iio:device* injection_mode 0666 system system
/sys/bus/iio/devices/iio:device* buffer/enable 0666 system system
/sys/bus/iio/devices/iio:device* buffer/length 0666 system system
/sys/bus/iio/devices/iio:device* sampling_frequency 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_timestamp_en 0666 system system
/sys/bus/iio/devices/iio:device* hwfifo_flush 0666 system system
/sys/bus/iio/devices/iio:device* hwfifo_enabled 0666 system system
/sys/bus/iio/devices/iio:device* hwfifo_watermark 0666 system system
/sys/bus/iio/devices/iio:device* injection_mode 0666 system system
#accelerometer sensor
/sys/devices/iio:device* scan_elements/in_accel_x_en 0666 system system
/sys/devices/iio:device* scan_elements/in_accel_y_en 0666 system system
/sys/devices/iio:device* scan_elements/in_accel_z_en 0666 system system
/sys/devices/iio:device* in_accel_x_scale 0666 system system
/sys/devices/iio:device* in_accel_y_scale 0666 system system
/sys/devices/iio:device* in_accel_z_scale 0666 system system
/sys/devices/iio:device* in_accel_injection_raw 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_accel_x_en 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_accel_y_en 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_accel_z_en 0666 system system
/sys/bus/iio/devices/iio:device* in_accel_x_scale 0666 system system
/sys/bus/iio/devices/iio:device* in_accel_y_scale 0666 system system
/sys/bus/iio/devices/iio:device* in_accel_z_scale 0666 system system
/sys/bus/iio/devices/iio:device* in_accel_injection_raw 0666 system system
#magnetometer sensor
/sys/devices/iio:device* scan_elements/in_magn_x_en 0666 system system
/sys/devices/iio:device* scan_elements/in_magn_y_en 0666 system system
/sys/devices/iio:device* scan_elements/in_magn_z_en 0666 system system
/sys/devices/iio:device* in_magn_x_scale 0666 system system
/sys/devices/iio:device* in_magn_y_scale 0666 system system
/sys/devices/iio:device* in_magn_z_scale 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_magn_x_en 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_magn_y_en 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_magn_z_en 0666 system system
/sys/bus/iio/devices/iio:device* in_magn_x_scale 0666 system system
/sys/bus/iio/devices/iio:device* in_magn_y_scale 0666 system system
/sys/bus/iio/devices/iio:device* in_magn_z_scale 0666 system system
#gyroscope sensor
/sys/devices/iio:device* scan_elements/in_anglvel_x_en 0666 system system
/sys/devices/iio:device* scan_elements/in_anglvel_y_en 0666 system system
/sys/devices/iio:device* scan_elements/in_anglvel_z_en 0666 system system
/sys/devices/iio:device* in_anglvel_x_scale 0666 system system
/sys/devices/iio:device* in_anglvel_y_scale 0666 system system
/sys/devices/iio:device* in_anglvel_z_scale 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_anglvel_x_en 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_anglvel_y_en 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_anglvel_z_en 0666 system system
/sys/bus/iio/devices/iio:device* in_anglvel_x_scale 0666 system system
/sys/bus/iio/devices/iio:device* in_anglvel_y_scale 0666 system system
/sys/bus/iio/devices/iio:device* in_anglvel_z_scale 0666 system system
#pressure sensor
/sys/devices/iio:device* scan_elements/in_pressure_en 0666 system system
/sys/devices/iio:device* scan_elements/in_temp_en 0666 system system
/sys/devices/iio:device* in_pressure_scale 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_pressure_en 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_temp_en 0666 system system
/sys/bus/iio/devices/iio:device* in_pressure_scale 0666 system system
#step counter sensor
/sys/devices/iio:device* max_delivery_rate 0666 system system
/sys/devices/iio:device* reset_counter 0666 system system
/sys/devices/iio:device* scan_elements/in_step_counter_en 0666 system system
/sys/bus/iio/devices/iio:device* max_delivery_rate 0666 system system
/sys/bus/iio/devices/iio:device* reset_counter 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_step_counter_en 0666 system system
#significant motion sensor
/sys/devices/iio:device* scan_elements/in_sign_motion_en 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_sign_motion_en 0666 system system
#step detector sensor
/sys/devices/iio:device* scan_elements/in_step_detector_en 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_step_detector_en 0666 system system
#tilt sensor
/sys/devices/iio:device* scan_elements/in_tilt_en 0666 system system
/sys/bus/iio/devices/iio:device* scan_elements/in_tilt_en 0666 system system

View File

@ -45,6 +45,21 @@ config ST_HAL_LSM6DSL_ENABLED
- Tilt;
- Significant Motion;
config ST_HAL_LSM6DS3TRC_ENABLED
bool "LSM6DS3TR-C sensor"
default y
help
Enable support for LSM6DS3TR-C combo sensor.
Sensors supported:
- Accelerometer;
- Magnetometer (optional: must be connected on i2c mater);
- Gyroscope;
- Step Counter;
- Step Detector;
- Tilt;
- Significant Motion;
config ST_HAL_LSM6DS3H_ENABLED
bool "LSM6DS3H sensor"
default y
@ -504,4 +519,73 @@ config ST_HAL_LSM6DSO32_ENABLED
- Pressure (optional: must be connected on i2c mater);
- Gyroscope;
config ST_HAL_LSM6DSOX_ENABLED
bool "LSM6DSOX sensor"
default y
help
Enable support for LSM6DSOX combo sensor.
Sensors supported:
- Accelerometer;
- Magnetometer (optional: must be connected on i2c mater);
- Pressure (optional: must be connected on i2c mater);
- Gyroscope;
config ST_HAL_LSM6DSRX_ENABLED
bool "LSM6DSRX sensor"
default y
help
Enable support for LSM6DSRX combo sensor.
Sensors supported:
- Accelerometer;
- Magnetometer (optional: must be connected on i2c mater);
- Pressure (optional: must be connected on i2c mater);
- Gyroscope;
config ST_HAL_LSM6DSO32X_ENABLED
bool "LSM6DSO32X sensor"
default y
help
Enable support for LSM6DSO32X combo sensor.
Sensors supported:
- Accelerometer;
- Magnetometer (optional: must be connected on i2c mater);
- Pressure (optional: must be connected on i2c mater);
- Gyroscope;
config ST_HAL_AIS2IH_ENABLED
bool "AIS2IH sensor"
default n
help
Enable support for AIS2IH sensor.
Sensors supported:
- Accelerometer;
config ST_HAL_ISM330DHCX_ENABLED
bool "ISM330DHCX sensor"
default y
help
Enable support for ISM330DHCX combo sensor.
Sensors supported:
- Accelerometer;
- Magnetometer (optional: must be connected on i2c mater);
- Pressure (optional: must be connected on i2c mater);
- Gyroscope;
config ST_HAL_ASM330LHHX_ENABLED
bool "ASM330LHHX sensor"
default y
help
Enable support for ASM330LHHX combo sensor.
Sensors supported:
- Accelerometer;
- Magnetometer (optional: must be connected on i2c mater);
- Pressure (optional: must be connected on i2c mater);
- Gyroscope;
endmenu # IIO drivers configuration

View File

@ -42,6 +42,8 @@ VERSION_O := $(shell test $(MAJOR_VERSION) -eq 8 && echo true)
VERSION_P := $(shell test $(MAJOR_VERSION) -eq 9 && echo true)
VERSION_Q := $(shell test $(MAJOR_VERSION) -eq 10 && echo true)
VERSION_R := $(shell test $(MAJOR_VERSION) -eq 11 && echo true)
VERSION_S := $(shell test $(MAJOR_VERSION) -eq 12 && echo true)
VERSION_T := $(shell test $(MAJOR_VERSION) -eq 13 && echo true)
ifeq ($(VERSION_KK),true)
ST_HAL_ANDROID_VERSION=0
@ -83,6 +85,16 @@ ST_HAL_ANDROID_VERSION=7
DEFCONFIG := android_R_defconfig
endif # VERSION_R
ifeq ($(VERSION_S),true)
ST_HAL_ANDROID_VERSION=7
DEFCONFIG := android_S_defconfig
endif # VERSION_S
ifeq ($(VERSION_T),true)
ST_HAL_ANDROID_VERSION=7
DEFCONFIG := android_T_defconfig
endif # VERSION_T
ifeq ($(DEFCONFIG),)
$(error ${\n}${\n}${\space}${\n}AOSP Version Unknown${\n})
endif # DEFCONFIG

View File

@ -1,3 +1,14 @@
Important Notice
==================
DISCONTINUED (October 2022): the maintenance for this repository has been discontinued.
Please refer to:
https://github.com/STMicroelectronics/st-mems-android-linux-sensors-hal
for the up-to-date HAL repository.
Index
=====
* Introduction
@ -17,7 +28,8 @@ Currently supported sensors are:
### Inertial Module Unit (IMU):
> LSM330, LSM330DLC, LSM6DS3, LSM6DS3H, LSM6DSM, LSM6DSL, LSM6DS0, LSM9DS0, LSM9DS1, LSM330D, LSM330DL, ISM330DLC, LSM6DSO, ASM330LHH, LSM6DSR, LSM6DSO32
> LSM330, LSM330DLC, LSM6DS3, LSM6DS3H, LSM6DSM, LSM6DSL, LSM6DS0, LSM9DS0, LSM9DS1, LSM330D, LSM330DL, ISM330DLC, LSM6DSO, ASM330LHH, LSM6DSR, LSM6DSO32,
> LSM6DSOX, LSM6DSRX, LSM6DSO32X, ISM330DHCX, ASM330LHHX
### eCompass:
@ -25,7 +37,7 @@ Currently supported sensors are:
### Accelerometer:
> LIS2DS12, LIS2HH12, LIS3DH, LIS3DHH, LIS2DW12, LIS331DLH, LIS2DG, LIS2DH, LIS2DH12, IIS2DH, IIS3DHHC
> LIS2DS12, LIS2HH12, LIS3DH, LIS3DHH, LIS2DW12, LIS331DLH, LIS2DG, LIS2DH, LIS2DH12, IIS2DH, IIS3DHHC, AIS2IH
### Gyroscope:

View File

@ -31,7 +31,6 @@ STMICROELECTRONICS LIBRARIES VERSION REQUIREMENTS:
- iNemoEngine_gbias_Estimation: v1.x
- iNemoEnginePRO: v1.x
- iNemoEngine_GeoMag_Fusion: v1.x
- STAccCalibration: v1.x
INSTALLING SOURCE CODE

View File

@ -0,0 +1,9 @@
export PLATFORM_VERSION=13
export DEFCONFIG=
export ST_HAL_ANDROID_VERSION=
export ST_HAL_HAS_FDFD_LIB=n
export ST_HAL_HAS_GBIAS_LIB=n
export ST_HAL_HAS_GEOMAG_LIB=n
export ST_HAL_HAS_9X_6X_LIB=n
export ST_HAL_HAS_MAGN_CALIB_LIB=n
export ST_HAL_HAS_ACCEL_CALIB_LIB=n

View File

@ -0,0 +1,7 @@
/* configuration.h -- Autogenerated file! Do not edit. */
#ifndef __ST_SENSOR_HAL_CONFIG_H
#define __ST_SENSOR_HAL_CONFIG_H
#endif /* __ST_SENSOR_HAL_CONFIG_H */

View File

@ -268,17 +268,6 @@ ifdef CONFIG_ST_HAL_ADDITIONAL_INFO_ENABLED
LOCAL_SRC_FILES += SensorAdditionalInfo.cpp
endif # CONFIG_ST_HAL_ADDITIONAL_INFO_ENABLED
ifdef CONFIG_ST_HAL_PROXIMITY_ENABLED
LOCAL_SRC_FILES += Proximity.cpp
endif # CONFIG_ST_HAL_PROXIMITY_ENABLED
ifdef CONFIG_ST_HAL_CCT_ENABLED
LOCAL_SRC_FILES += CorrelatedColorTemp.cpp
endif # CONFIG_ST_HAL_CCT_ENABLED
ifdef CONFIG_ST_HAL_SW_LIGHT_ENABLED
LOCAL_SRC_FILES += SWLight.cpp
endif # CONFIG_ST_HAL_SW_LIGHT_ENABLED
LOCAL_MODULE_TAGS := optional

View File

@ -27,7 +27,6 @@
typedef struct SensorBaseData {
float raw[4];
float orig[4];
float offset[4];
float processed[5];
int64_t timestamp;

View File

@ -77,7 +77,7 @@ static float process_2byte_received(int input,
res = (float)((uint16_t)val);
}
return res;
return ((res + info->offset) * info->scale);
}
/**
@ -106,7 +106,7 @@ static float process_3byte_received(int input,
res = (float)((uint32_t)val);
}
return res;
return ((res + info->offset) * info->scale);
}
/**
@ -128,20 +128,15 @@ static int ProcessScanData(uint8_t *data,
switch (channels[k].bytes) {
case 1:
sensor_out_data->orig[k] = *(uint8_t *)(data + channels[k].location);
sensor_out_data->raw[k] = *(uint8_t *)(data + channels[k].location);
break;
case 2:
sensor_out_data->orig[k] = process_2byte_received(*(uint16_t *)
sensor_out_data->raw[k] = process_2byte_received(*(uint16_t *)
(data + channels[k].location), &channels[k]);
sensor_out_data->raw[k] = (sensor_out_data->orig[k] + channels[k].offset) *
channels[k].scale;
break;
case 3:
sensor_out_data->orig[k] = process_3byte_received(*(uint32_t *)
sensor_out_data->raw[k] = process_3byte_received(*(uint32_t *)
(data + channels[k].location), &channels[k]);
sensor_out_data->raw[k] = (sensor_out_data->orig[k] + channels[k].offset) *
channels[k].scale;
break;
case 4:
uint32_t val;
@ -155,11 +150,9 @@ static int ProcessScanData(uint8_t *data,
val >>= channels[k].shift;
val &= channels[k].mask;
if (channels[k].sign) {
sensor_out_data->orig[k] = (float)(int32_t)val;
sensor_out_data->raw[k] = ((float)(int32_t)val +
channels[k].offset) * channels[k].scale;
} else {
sensor_out_data->orig[k] = (float)val;
sensor_out_data->raw[k] = ((float)val +
channels[k].offset) * channels[k].scale;
}
@ -174,13 +167,11 @@ static int ProcessScanData(uint8_t *data,
if ((channels[k].scale == 1.0f) && (channels[k].offset == 0.0f)) {
sensor_out_data->timestamp = val;
} else {
sensor_out_data->orig[k] = (float)val;
sensor_out_data->raw[k] = (((float)val +
channels[k].offset) * channels[k].scale);
}
} else {
uint64_t val = *(uint64_t *)(data + channels[k].location);
sensor_out_data->orig[k] = val;
sensor_out_data->raw[k] = val;
}
@ -562,19 +553,6 @@ int HWSensorBase::ApplyFactoryCalibrationData(char *filename,
#endif /* CONFIG_ST_HAL_FACTORY_CALIBRATION */
}
void HWSensorBase::UpdateFactoryCalibrationData(void)
{
int i, err;
struct device_iio_info_channel *channel;
for (i = 0; i < common_data.num_channels; ++i) {
channel = &(common_data.channels[i]);
err = device_iio_utils::scan_channel_elements(
common_data.device_iio_sysfs_path,
channel);
}
}
void HWSensorBase::ProcessEvent(struct device_iio_events *event_data)
{
uint8_t event_type, event_dir;
@ -586,11 +564,9 @@ void HWSensorBase::ProcessEvent(struct device_iio_events *event_data)
(event_dir == DEVICE_IIO_EV_DIR_FIFO_DATA))
ProcessFlushData(sensor_t_data.handle,
event_data->event_timestamp);
else if ((event_type == DEVICE_IIO_EV_TYPE_CALIB) &&
(event_dir == DEVICE_IIO_EV_DIR_NONE))
UpdateFactoryCalibrationData();
}
int HWSensorBase::FlushData(int handle, bool lock_en_mutex)
{
int err;

View File

@ -100,7 +100,6 @@ public:
virtual void RemoveSensorDependency(SensorBase *p);
int ApplyFactoryCalibrationData(char *filename, time_t *last_modification);
void UpdateFactoryCalibrationData(void);
virtual void ProcessEvent(struct device_iio_events *event_data);
virtual int FlushData(int handle, bool lock_en_mute);

View File

@ -48,9 +48,6 @@
#include "WristTiltGesture.h"
#include "Gesture.h"
#include "DeviceOrientation.h"
#include "Proximity.h"
#include "CorrelatedColorTemp.h"
#include "SWLight.h"
#include "utils.h"
#ifdef CONFIG_ST_HAL_DYNAMIC_SENSOR
@ -175,6 +172,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DS33_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_21, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "LSM6DS33 Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS33_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3TRC_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_55, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "LSM6DS3TRC Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3TRC_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3H_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_22, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "LSM6DS3H Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3H_ENABLED */
@ -186,7 +186,7 @@ static const struct ST_sensors_supported {
#endif /* CONFIG_ST_HAL_LIS2HH12_ENABLED */
#ifdef CONFIG_ST_HAL_LIS2DW12_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_27, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "LIS2DW12 Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LIS2HH12_ENABLED */
#endif /* CONFIG_ST_HAL_LIS2DW12_ENABLED */
#ifdef CONFIG_ST_HAL_LSM9DS1_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_29, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "LSM9DS1 Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM9DS1_ENABLED */
@ -220,6 +220,24 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "LSM6DSO32 Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSOX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_49, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "LSM6DSOX Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSOX_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSRX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_50, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "LSM6DSRX Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSRX_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSO32X_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_51, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "LSM6DSO32X Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32X_ENABLED */
#ifdef CONFIG_ST_HAL_AIS2IH_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_52, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "AIS2IH Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_AIS2IH_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "ISM330DHCX Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#ifdef CONFIG_ST_HAL_ASM330LHHX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_54, ACCEL_NAME_SUFFIX_IIO), SENSOR_TYPE_ACCELEROMETER, DEVICE_IIO_ACC, "ASM330LHHX Accelerometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ASM330LHHX_ENABLED */
#endif /* CONFIG_ST_HAL_ACCEL_ENABLED */
/**************** Magnetometer sensors ****************/
@ -251,6 +269,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSM_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_20, MAGN_NAME_SUFFIX_IIO), SENSOR_TYPE_GEOMAGNETIC_FIELD, DEVICE_IIO_MAGN, "LSM6DSM Magnetometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSM_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3TRC_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_55, MAGN_NAME_SUFFIX_IIO), SENSOR_TYPE_GEOMAGNETIC_FIELD, DEVICE_IIO_MAGN, "LSM6DS3TRC Magnetometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3TRC_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3H_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_22, MAGN_NAME_SUFFIX_IIO), SENSOR_TYPE_GEOMAGNETIC_FIELD, DEVICE_IIO_MAGN, "LSM6DS3H Magnetometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3H_ENABLED */
@ -284,6 +305,21 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, MAGN_NAME_SUFFIX_IIO), SENSOR_TYPE_GEOMAGNETIC_FIELD, DEVICE_IIO_MAGN, "LSM6DSO32 Magnetometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSOX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_49, MAGN_NAME_SUFFIX_IIO), SENSOR_TYPE_GEOMAGNETIC_FIELD, DEVICE_IIO_MAGN, "LSM6DSOX Magnetometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSOX_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSRX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_50, MAGN_NAME_SUFFIX_IIO), SENSOR_TYPE_GEOMAGNETIC_FIELD, DEVICE_IIO_MAGN, "LSM6DSRX Magnetometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSRX_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSO32X_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_51, MAGN_NAME_SUFFIX_IIO), SENSOR_TYPE_GEOMAGNETIC_FIELD, DEVICE_IIO_MAGN, "LSM6DSO32X Magnetometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32X_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, MAGN_NAME_SUFFIX_IIO), SENSOR_TYPE_GEOMAGNETIC_FIELD, DEVICE_IIO_MAGN, "ISM330DHCX Magnetometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#ifdef CONFIG_ST_HAL_ASM330LHHX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_54, MAGN_NAME_SUFFIX_IIO), SENSOR_TYPE_GEOMAGNETIC_FIELD, DEVICE_IIO_MAGN, "ASM330LHHX Magnetometer Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ASM330LHHX_ENABLED */
#endif /* CONFIG_ST_HAL_MAGN_ENABLED */
/**************** Gyroscope sensors ****************/
@ -318,6 +354,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DS33_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_21, GYRO_NAME_SUFFIX_IIO), SENSOR_TYPE_GYROSCOPE, DEVICE_IIO_GYRO, "LSM6DS33 Gyroscope Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS33_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3TRC_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_55, GYRO_NAME_SUFFIX_IIO), SENSOR_TYPE_GYROSCOPE, DEVICE_IIO_GYRO, "LSM6DS3TRC Gyroscope Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3TRC_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3H_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_22, GYRO_NAME_SUFFIX_IIO), SENSOR_TYPE_GYROSCOPE, DEVICE_IIO_GYRO, "LSM6DS3H Gyroscope Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3H_ENABLED */
@ -345,6 +384,21 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, GYRO_NAME_SUFFIX_IIO), SENSOR_TYPE_GYROSCOPE, DEVICE_IIO_GYRO, "LSM6DSO32 Gyroscope Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSOX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_49, GYRO_NAME_SUFFIX_IIO), SENSOR_TYPE_GYROSCOPE, DEVICE_IIO_GYRO, "LSM6DSOX Gyroscope Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSOX_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSRX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_50, GYRO_NAME_SUFFIX_IIO), SENSOR_TYPE_GYROSCOPE, DEVICE_IIO_GYRO, "LSM6DSRX Gyroscope Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSRX_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSO32X_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_51, GYRO_NAME_SUFFIX_IIO), SENSOR_TYPE_GYROSCOPE, DEVICE_IIO_GYRO, "LSM6DSO32X Gyroscope Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32X_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, GYRO_NAME_SUFFIX_IIO), SENSOR_TYPE_GYROSCOPE, DEVICE_IIO_GYRO, "ISM330DHCX Gyroscope Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#ifdef CONFIG_ST_HAL_ASM330LHHX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_54, GYRO_NAME_SUFFIX_IIO), SENSOR_TYPE_GYROSCOPE, DEVICE_IIO_GYRO, "ASM330LHHX Gyroscope Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ASM330LHHX_ENABLED */
#endif /* CONFIG_ST_HAL_GYRO_ENABLED */
/**************** Step Detector sensors ****************/
@ -367,6 +421,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DS33_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_21, STEP_DETECTOR_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_DETECTOR, DEVICE_IIO_STEP_DETECTOR, "LSM6DS33 Step Detector Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS33_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3TRC_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_55, STEP_DETECTOR_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_DETECTOR, DEVICE_IIO_STEP_DETECTOR, "LSM6DS3TRC Step Detector Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3TRC_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3H_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_22, STEP_DETECTOR_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_DETECTOR, DEVICE_IIO_STEP_DETECTOR, "LSM6DS3H Step Detector Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3H_ENABLED */
@ -385,6 +442,12 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, STEP_DETECTOR_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_DETECTOR, DEVICE_IIO_STEP_DETECTOR, "LSM6DSO32 Step Detector Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSO32X_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_51, STEP_DETECTOR_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_DETECTOR, DEVICE_IIO_STEP_DETECTOR, "LSM6DSO32X Step Detector Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32X_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, STEP_DETECTOR_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_DETECTOR, DEVICE_IIO_STEP_DETECTOR, "ISM330DHCX Step Detector Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_STEP_DETECTOR_ENABLED */
/**************** Step Counter sensors ****************/
@ -407,6 +470,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DS33_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_21, STEP_COUNTER_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_COUNTER, DEVICE_IIO_STEP_COUNTER, "LSM6DS33 Step Counter Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS33_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3TRC_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_55, STEP_COUNTER_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_COUNTER, DEVICE_IIO_STEP_COUNTER, "LSM6DS3TRC Step Counter Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3TRC_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3H_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_22, STEP_COUNTER_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_COUNTER, DEVICE_IIO_STEP_COUNTER, "LSM6DS3H Step Counter Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3H_ENABLED */
@ -425,6 +491,12 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, STEP_COUNTER_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_COUNTER, DEVICE_IIO_STEP_COUNTER, "LSM6DSO32 Step Counter Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSO32X_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_51, STEP_COUNTER_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_COUNTER, DEVICE_IIO_STEP_COUNTER, "LSM6DSO32X Step Counter Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32X_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, STEP_COUNTER_NAME_SUFFIX_IIO), SENSOR_TYPE_STEP_COUNTER, DEVICE_IIO_STEP_COUNTER, "ISM330DHCX Step Counter Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_STEP_COUNTER_ENABLED */
/**************** Significant Motion sensors ****************/
@ -447,6 +519,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DS33_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_21, SIGN_MOTION_NAME_SUFFIX_IIO), SENSOR_TYPE_SIGNIFICANT_MOTION, DEVICE_IIO_SIGN_MOTION, "LSM6DS33 Significant Motion Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS33_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3TRC_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_55, SIGN_MOTION_NAME_SUFFIX_IIO), SENSOR_TYPE_SIGNIFICANT_MOTION, DEVICE_IIO_SIGN_MOTION, "LSM6DS3TRC Significant Motion Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3TRC_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3H_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_22, SIGN_MOTION_NAME_SUFFIX_IIO), SENSOR_TYPE_SIGNIFICANT_MOTION, DEVICE_IIO_SIGN_MOTION, "LSM6DS3H Significant Motion Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3H_ENABLED */
@ -465,6 +540,12 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, SIGN_MOTION_NAME_SUFFIX_IIO), SENSOR_TYPE_SIGNIFICANT_MOTION, DEVICE_IIO_SIGN_MOTION, "LSM6DSO32 Significant Motion Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSO32X_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_51, SIGN_MOTION_NAME_SUFFIX_IIO), SENSOR_TYPE_SIGNIFICANT_MOTION, DEVICE_IIO_SIGN_MOTION, "LSM6DSO32X Significant Motion Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32X_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, SIGN_MOTION_NAME_SUFFIX_IIO), SENSOR_TYPE_SIGNIFICANT_MOTION, DEVICE_IIO_SIGN_MOTION, "ISM330DHCX Significant Motion Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_SIGN_MOTION_ENABLED */
/**************** Tilt sensors ****************/
@ -487,6 +568,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DS33_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_21, TILT_NAME_SUFFIX_IIO), SENSOR_TYPE_TILT_DETECTOR, DEVICE_IIO_TILT, "LSM6DS33 Tilt Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS33_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3TRC_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_55, TILT_NAME_SUFFIX_IIO), SENSOR_TYPE_TILT_DETECTOR, DEVICE_IIO_TILT, "LSM6DS3TRC Tilt Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3TRC_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3H_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_22, TILT_NAME_SUFFIX_IIO), SENSOR_TYPE_TILT_DETECTOR, DEVICE_IIO_TILT, "LSM6DS3H Tilt Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3H_ENABLED */
@ -508,10 +592,19 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, TILT_NAME_SUFFIX_IIO), SENSOR_TYPE_TILT_DETECTOR, DEVICE_IIO_TILT, "LSM6DSO32 Tilt Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSO32X_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_51, TILT_NAME_SUFFIX_IIO), SENSOR_TYPE_TILT_DETECTOR, DEVICE_IIO_TILT, "LSM6DSO32X Tilt Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32X_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, TILT_NAME_SUFFIX_IIO), SENSOR_TYPE_TILT_DETECTOR, DEVICE_IIO_TILT, "ISM330DHCX Tilt Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_TILT_ENABLED */
/**************** Wrist Tilt Gesture ****************/
#ifdef CONFIG_ST_HAL_WRIST_TILT_GESTURE_ENABLED
#ifdef CONFIG_ST_HAL_LSM6DS3TRC_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_55, WRIST_GESTURE_NAME_SUFFIX_IIO), SENSOR_TYPE_WRIST_TILT_GESTURE, DEVICE_IIO_WRIST_TILT_GESTURE, "LSM6DS3TRC Wrist Tilt Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3TRC_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3H_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_22, WRIST_GESTURE_NAME_SUFFIX_IIO), SENSOR_TYPE_WRIST_TILT_GESTURE, DEVICE_IIO_WRIST_TILT_GESTURE, "LSM6DS3H Wrist Tilt Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DS3H_ENABLED */
@ -524,6 +617,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, WRIST_GESTURE_NAME_SUFFIX_IIO), SENSOR_TYPE_WRIST_TILT_GESTURE, DEVICE_IIO_GESTURE, "LSM6DSO32 Wrist Tilt Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, WRIST_GESTURE_NAME_SUFFIX_IIO), SENSOR_TYPE_WRIST_TILT_GESTURE, DEVICE_IIO_GESTURE, "ISM330DHCX Wrist Tilt Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_WRIST_TILT_GESTURE_ENABLED */
/**************** Glance Gesture ****************/
@ -537,6 +633,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, GLANCE_GESTURE_NAME_SUFFIX_IIO), SENSOR_TYPE_GLANCE_GESTURE, DEVICE_IIO_GESTURE, "LSM6DSO32 Glance Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, GLANCE_GESTURE_NAME_SUFFIX_IIO), SENSOR_TYPE_GLANCE_GESTURE, DEVICE_IIO_GESTURE, "ISM330DHCX Glance Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_GLANCE_GESTURE_ENABLED */
/**************** WakeUp Gesture ****************/
@ -545,14 +644,20 @@ static const struct ST_sensors_supported {
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_30, ST_HAL_WAKEUP_SUFFIX_IIO), SENSOR_TYPE_WAKE_GESTURE, DEVICE_IIO_GESTURE, "LSM6DSO WakeUp Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO_ENABLED */
#ifdef CONFIG_ST_HAL_LIS2DW12_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_27, ST_HAL_WAKEUP_SUFFIX_IIO), SENSOR_TYPE_WAKE_GESTURE, DEVICE_IIO_GESTURE, "LIS2MDL WakeUp Gesture", 0.0f)
#endif
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_27, ST_HAL_WAKEUP_SUFFIX_IIO), SENSOR_TYPE_WAKE_GESTURE, DEVICE_IIO_GESTURE, "LIS2DW12 WakeUp Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LIS2DW12_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSR_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_46, ST_HAL_WAKEUP_SUFFIX_IIO), SENSOR_TYPE_WAKE_GESTURE, DEVICE_IIO_GESTURE, "LSM6DSR WakeUp Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSR_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, ST_HAL_WAKEUP_SUFFIX_IIO), SENSOR_TYPE_WAKE_GESTURE, DEVICE_IIO_GESTURE, "LSM6DSO32 WakeUp Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_AIS2IH_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_52, ST_HAL_WAKEUP_SUFFIX_IIO), SENSOR_TYPE_WAKE_GESTURE, DEVICE_IIO_GESTURE, "AIS2IH WakeUp Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_AIS2IH_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, ST_HAL_WAKEUP_SUFFIX_IIO), SENSOR_TYPE_WAKE_GESTURE, DEVICE_IIO_GESTURE, "ISM330DHCX WakeUp Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_WAKEUP_GESTURE_ENABLED */
/**************** PickUp Gesture ****************/
@ -566,6 +671,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, ST_HAL_PICKUP_SUFFIX_IIO), SENSOR_TYPE_PICK_UP_GESTURE, DEVICE_IIO_GESTURE, "LSM6DSO32 PickUp Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, ST_HAL_PICKUP_SUFFIX_IIO), SENSOR_TYPE_PICK_UP_GESTURE, DEVICE_IIO_GESTURE, "ISM330DHCX PickUp Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_PICKUP_GESTURE_ENABLED */
#if (CONFIG_ST_HAL_ANDROID_VERSION >= ST_HAL_NOUGAT_VERSION)
@ -580,6 +688,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, ST_HAL_MOTION_SUFFIX_IIO), SENSOR_TYPE_MOTION_DETECT, DEVICE_IIO_GESTURE, "LSM6DSO32 Motion Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, ST_HAL_MOTION_SUFFIX_IIO), SENSOR_TYPE_MOTION_DETECT, DEVICE_IIO_GESTURE, "ISM330DHCX Motion Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_MOTION_GESTURE_ENABLED */
/**************** No-Motion Gesture ****************/
@ -593,6 +704,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, ST_HAL_NO_MOTION_SUFFIX_IIO), SENSOR_TYPE_STATIONARY_DETECT, DEVICE_IIO_GESTURE, "LSM6DSO32 No-Motion Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, ST_HAL_NO_MOTION_SUFFIX_IIO), SENSOR_TYPE_STATIONARY_DETECT, DEVICE_IIO_GESTURE, "ISM330DHCX No-Motion Gesture", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_NO_MOTION_GESTURE_ENABLED */
/**************** Orientation ****************/
@ -606,6 +720,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, ST_HAL_DEVICE_ORIENTATION_SUFFIX_IIO), SENSOR_TYPE_DEVICE_ORIENTATION, DEVICE_IIO_GESTURE, "LSM6DSO32 Device Orientation Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, ST_HAL_DEVICE_ORIENTATION_SUFFIX_IIO), SENSOR_TYPE_DEVICE_ORIENTATION, DEVICE_IIO_GESTURE, "ISM330DHCX Device Orientation Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#endif /* CONFIG_ST_HAL_DEVICE_ORIENTATION_ENABLED */
#endif /* CONFIG_ST_HAL_ANDROID_VERSION */
@ -620,6 +737,9 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LPS25H_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(ST_SENSORS_LIST_19, SENSOR_TYPE_PRESSURE, DEVICE_IIO_PRESSURE, "LPS25H Pressure Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LPS25H_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3TRC_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_55, PRESSURE_NAME_SUFFIX_IIO), SENSOR_TYPE_PRESSURE, DEVICE_IIO_PRESSURE, "LSM6DS3TRC Pressure Sensor", 40E-3f)
#endif /* CONFIG_ST_HAL_LSM6DS3TRC_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DS3H_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_22, PRESSURE_NAME_SUFFIX_IIO), SENSOR_TYPE_PRESSURE, DEVICE_IIO_PRESSURE, "LSM6DS3H Pressure Sensor", 40E-3f)
#endif /* CONFIG_ST_HAL_LSM6DS3H_ENABLED */
@ -650,6 +770,21 @@ static const struct ST_sensors_supported {
#ifdef CONFIG_ST_HAL_LSM6DSO32_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_48, PRESSURE_NAME_SUFFIX_IIO), SENSOR_TYPE_PRESSURE, DEVICE_IIO_PRESSURE, "LSM6DSO32 Pressure Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSOX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_49, PRESSURE_NAME_SUFFIX_IIO), SENSOR_TYPE_PRESSURE, DEVICE_IIO_PRESSURE, "LSM6DSOX Pressure Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSOX_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSRX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_50, PRESSURE_NAME_SUFFIX_IIO), SENSOR_TYPE_PRESSURE, DEVICE_IIO_PRESSURE, "LSM6DSRX Pressure Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSRX_ENABLED */
#ifdef CONFIG_ST_HAL_LSM6DSO32X_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_51, PRESSURE_NAME_SUFFIX_IIO), SENSOR_TYPE_PRESSURE, DEVICE_IIO_PRESSURE, "LSM6DSO32X Pressure Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LSM6DSO32X_ENABLED */
#ifdef CONFIG_ST_HAL_ISM330DHCX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_53, PRESSURE_NAME_SUFFIX_IIO), SENSOR_TYPE_PRESSURE, DEVICE_IIO_PRESSURE, "ISM330DHCX Pressure Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ISM330DHCX_ENABLED */
#ifdef CONFIG_ST_HAL_ASM330LHHX_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_54, PRESSURE_NAME_SUFFIX_IIO), SENSOR_TYPE_PRESSURE, DEVICE_IIO_PRESSURE, "ASM330LHHX Pressure Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_ASM330LHHX_ENABLED */
#endif /* CONFIG_ST_HAL_PRESSURE_ENABLED */
/**************** RHumidity sensors ****************/
@ -686,21 +821,6 @@ static const struct ST_sensors_supported {
ST_HAL_NEW_SENSOR_SUPPORTED(CONCATENATE_STRING(ST_SENSORS_LIST_47, TEMP_NAME_SUFFIX_IIO), SENSOR_TYPE_AMBIENT_TEMPERATURE, DEVICE_IIO_TEMP,"LPS27HHW Temperature Sensor", 0.0f)
#endif /* CONFIG_ST_HAL_LPS27HHW_ENABLED */
#endif /* CONFIG_ST_HAL_TEMP_ENABLED */
#ifdef CONFIG_ST_HAL_PROXIMITY_ENABLED
#ifdef CONFIG_ST_HAL_VL6180_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(ST_SENSORS_LIST_49, SENSOR_TYPE_PROXIMITY, DEVICE_IIO_PROXIMITY, "VL6180 Proximity Sensor", 9.0f)
#endif /* CONFIG_ST_HAL_VL6180_ENABLED */
#ifdef CONFIG_ST_HAL_VL53L0X_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(ST_SENSORS_LIST_51, SENSOR_TYPE_PROXIMITY, DEVICE_IIO_PROXIMITY, "VL53L0X Proximity Sensor", 9.0f)
#endif /* CONFIG_ST_HAL_VL53L0X_ENABLED */
#endif /* CONFIG_ST_HAL_PROXIMITY_ENABLED */
#ifdef CONFIG_ST_HAL_CCT_ENABLED
#ifdef CONFIG_ST_HAL_UCS12CM0_ENABLED
ST_HAL_NEW_SENSOR_SUPPORTED(ST_SENSORS_LIST_50, SENSOR_TYPE_CCT, DEVICE_IIO_CCT, "UCS12CM0 color-based Light Sensor", 9.0f)
#endif /* CONFIG_ST_HAL_UCS12CM0_ENABLED */
#endif /* CONFIG_ST_HAL_CCT_ENABLED */
};
/*
@ -749,9 +869,6 @@ static const struct ST_virtual_sensors_list {
#if defined(CONFIG_ST_HAL_ACCEL_UNCALIB_AP_ENABLED) || defined(CONFIG_ST_HAL_ACCEL_UNCALIB_AP_EMULATED)
{ .android_sensor_type = SENSOR_TYPE_ACCELEROMETER_UNCALIBRATED },
#endif /* CONFIG_ST_HAL_ACCEL_UNCALIB_AP_ENABLED */
#if defined(CONFIG_ST_HAL_SW_LIGHT_ENABLED)
{ .android_sensor_type = SENSOR_TYPE_LIGHT },
#endif /* CONFIG_ST_HAL_SW_LIGHT_ENABLED */
};
#ifdef CONFIG_ST_HAL_FACTORY_CALIBRATION
@ -850,11 +967,6 @@ static SensorBase* st_hal_create_virtual_class_sensor(int sensor_type, int handl
sb = new SWAccelerometerUncalibrated("Accelerometer Uncalibrated Sensor", handle);
break;
#endif /* CONFIG_ST_HAL_ACCEL_UNCALIB_AP_ENABLED */
#if defined(CONFIG_ST_HAL_SW_LIGHT_ENABLED)
case SENSOR_TYPE_LIGHT:
sb = new SWLight("Light Sensor", handle);
break;
#endif /* CONFIG_ST_HAL_SW_LIGHT_ENABLED */
default:
(void)handle;
return NULL;
@ -1043,22 +1155,6 @@ static SensorBase* st_hal_create_class_sensor(STSensorHAL_iio_devices_data *data
data->wake_up_sensor);
break;
#endif /* CONFIG_ST_HAL_TEMP_ENABLED */
#ifdef CONFIG_ST_HAL_PROXIMITY_ENABLED
case SENSOR_TYPE_PROXIMITY:
sb = new Proximity(&class_data, data->android_name, &data->sfa,
handle, data->hw_fifo_len,
data->power_consumption,
data->wake_up_sensor);
break;
#endif /* CONFIG_ST_HAL_PROXIMITY_ENABLED */
#ifdef CONFIG_ST_HAL_CCT_ENABLED
case SENSOR_TYPE_CCT:
sb = new CorrelatedColorTemp(&class_data, data->android_name, &data->sfa,
handle, data->hw_fifo_len,
data->power_consumption,
data->wake_up_sensor);
break;
#endif /* CONFIG_ST_HAL_CCT_ENABLED */
default:
return NULL;
}
@ -1226,6 +1322,11 @@ static int st_hal_load_iio_devices_data(STSensorHAL_iio_devices_data *data)
goto st_hal_load_free_iio_channels;
}
err = device_iio_utils::set_clock_type(data[index].iio_sysfs_path, (char *) "boottime");
if (err < 0) {
ALOGE("\"%s\": failed to set boottime clock type. (errno: %d)", iio_devices[i].name, err);
}
if (ST_sensors_supported[n].android_sensor_type != SENSOR_TYPE_STEP_DETECTOR &&
ST_sensors_supported[n].android_sensor_type != SENSOR_TYPE_STEP_COUNTER &&
ST_sensors_supported[n].android_sensor_type != SENSOR_TYPE_SIGNIFICANT_MOTION &&
@ -1240,10 +1341,7 @@ static int st_hal_load_iio_devices_data(STSensorHAL_iio_devices_data *data)
ST_sensors_supported[n].android_sensor_type != SENSOR_TYPE_DEVICE_ORIENTATION &&
#endif /* CONFIG_ST_HAL_ANDROID_VERSION */
ST_sensors_supported[n].android_sensor_type != SENSOR_TYPE_GLANCE_GESTURE &&
ST_sensors_supported[n].android_sensor_type != SENSOR_TYPE_PROXIMITY &&
ST_sensors_supported[n].android_sensor_type != SENSOR_TYPE_CCT &&
ST_sensors_supported[n].android_sensor_type != SENSOR_TYPE_LIGHT) {
ST_sensors_supported[n].android_sensor_type != SENSOR_TYPE_GLANCE_GESTURE) {
err = device_iio_utils::get_sampling_frequency_available(data[index].iio_sysfs_path, &data[index].sfa);
if (err < 0) {
ALOGE("\"%s\": unable to get sampling frequency availability. (errno: %d)", iio_devices[i].name, err);

View File

@ -88,9 +88,13 @@
#define ST_SENSORS_LIST_46 "lsm6dsr"
#define ST_SENSORS_LIST_47 "lps27hhw"
#define ST_SENSORS_LIST_48 "lsm6dso32"
#define ST_SENSORS_LIST_49 "vl6180"
#define ST_SENSORS_LIST_50 "ucs12cm0"
#define ST_SENSORS_LIST_51 "vl53l0x"
#define ST_SENSORS_LIST_49 "lsm6dsox"
#define ST_SENSORS_LIST_50 "lsm6dsrx"
#define ST_SENSORS_LIST_51 "lsm6dso32x"
#define ST_SENSORS_LIST_52 "ais2ih"
#define ST_SENSORS_LIST_53 "ism330dhcx"
#define ST_SENSORS_LIST_54 "asm330lhhx"
#define ST_SENSORS_LIST_55 "lsm6ds3tr-c"
/*
* IIO driver sensors suffix for sensors

View File

@ -93,6 +93,12 @@ CONFIG_ST_HAL_ISM330DLC_ENABLED=y
CONFIG_ST_HAL_ASM330LHH_ENABLED=y
CONFIG_ST_HAL_LSM6DSR_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32_ENABLED=y
CONFIG_ST_HAL_LSM6DSOX_ENABLED=y
CONFIG_ST_HAL_LSM6DSRX_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32X_ENABLED=y
CONFIG_ST_HAL_AIS2IH_ENABLED=y
CONFIG_ST_HAL_ISM330DHCX_ENABLED=y
CONFIG_ST_HAL_ASM330LHHX_ENABLED=y
#
# Factory calibration configuration

View File

@ -94,6 +94,12 @@ CONFIG_ST_HAL_ISM330DLC_ENABLED=y
CONFIG_ST_HAL_ASM330LHH_ENABLED=y
CONFIG_ST_HAL_LSM6DSR_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32_ENABLED=y
CONFIG_ST_HAL_LSM6DSOX_ENABLED=y
CONFIG_ST_HAL_LSM6DSRX_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32X_ENABLED=y
CONFIG_ST_HAL_AIS2IH_ENABLED=y
CONFIG_ST_HAL_ISM330DHCX_ENABLED=y
CONFIG_ST_HAL_ASM330LHHX_ENABLED=y
#
# Factory calibration configuration

View File

@ -94,6 +94,12 @@ CONFIG_ST_HAL_ISM330DLC_ENABLED=y
CONFIG_ST_HAL_ASM330LHH_ENABLED=y
CONFIG_ST_HAL_LSM6DSR_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32_ENABLED=y
CONFIG_ST_HAL_LSM6DSOX_ENABLED=y
CONFIG_ST_HAL_LSM6DSRX_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32X_ENABLED=y
CONFIG_ST_HAL_AIS2IH_ENABLED=y
CONFIG_ST_HAL_ISM330DHCX_ENABLED=y
CONFIG_ST_HAL_ASM330LHHX_ENABLED=y
#
# Factory calibration configuration

View File

@ -94,6 +94,12 @@ CONFIG_ST_HAL_ISM330DLC_ENABLED=y
CONFIG_ST_HAL_ASM330LHH_ENABLED=y
CONFIG_ST_HAL_LSM6DSR_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32_ENABLED=y
CONFIG_ST_HAL_LSM6DSOX_ENABLED=y
CONFIG_ST_HAL_LSM6DSRX_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32X_ENABLED=y
CONFIG_ST_HAL_AIS2IH_ENABLED=y
CONFIG_ST_HAL_ISM330DHCX_ENABLED=y
CONFIG_ST_HAL_ASM330LHHX_ENABLED=y
#
# Factory calibration configuration

View File

@ -94,6 +94,12 @@ CONFIG_ST_HAL_ISM330DLC_ENABLED=y
CONFIG_ST_HAL_ASM330LHH_ENABLED=y
CONFIG_ST_HAL_LSM6DSR_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32_ENABLED=y
CONFIG_ST_HAL_LSM6DSOX_ENABLED=y
CONFIG_ST_HAL_LSM6DSRX_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32X_ENABLED=y
CONFIG_ST_HAL_AIS2IH_ENABLED=y
CONFIG_ST_HAL_ISM330DHCX_ENABLED=y
CONFIG_ST_HAL_ASM330LHHX_ENABLED=y
CONFIG_ST_HAL_DYNAMIC_SENSOR=y
CONFIG_ST_HAL_DIRECT_REPORT_SENSOR=y

View File

@ -96,6 +96,12 @@ CONFIG_ST_HAL_ISM330DLC_ENABLED=y
CONFIG_ST_HAL_ASM330LHH_ENABLED=y
CONFIG_ST_HAL_LSM6DSR_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32_ENABLED=y
CONFIG_ST_HAL_LSM6DSOX_ENABLED=y
CONFIG_ST_HAL_LSM6DSRX_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32X_ENABLED=y
CONFIG_ST_HAL_AIS2IH_ENABLED=y
CONFIG_ST_HAL_ISM330DHCX_ENABLED=y
CONFIG_ST_HAL_ASM330LHHX_ENABLED=y
CONFIG_ST_HAL_DYNAMIC_SENSOR=y
CONFIG_ST_HAL_DIRECT_REPORT_SENSOR=y

View File

@ -97,6 +97,12 @@ CONFIG_ST_HAL_ISM330DLC_ENABLED=y
CONFIG_ST_HAL_ASM330LHH_ENABLED=y
CONFIG_ST_HAL_LSM6DSR_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32_ENABLED=y
CONFIG_ST_HAL_LSM6DSOX_ENABLED=y
CONFIG_ST_HAL_LSM6DSRX_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32X_ENABLED=y
CONFIG_ST_HAL_AIS2IH_ENABLED=y
CONFIG_ST_HAL_ISM330DHCX_ENABLED=y
CONFIG_ST_HAL_ASM330LHHX_ENABLED=y
CONFIG_ST_HAL_DYNAMIC_SENSOR=y
CONFIG_ST_HAL_DIRECT_REPORT_SENSOR=y

View File

@ -97,6 +97,12 @@ CONFIG_ST_HAL_ISM330DLC_ENABLED=y
CONFIG_ST_HAL_ASM330LHH_ENABLED=y
CONFIG_ST_HAL_LSM6DSR_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32_ENABLED=y
CONFIG_ST_HAL_LSM6DSOX_ENABLED=y
CONFIG_ST_HAL_LSM6DSRX_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32X_ENABLED=y
CONFIG_ST_HAL_AIS2IH_ENABLED=y
CONFIG_ST_HAL_ISM330DHCX_ENABLED=y
CONFIG_ST_HAL_ASM330LHHX_ENABLED=y
CONFIG_ST_HAL_DYNAMIC_SENSOR=y
CONFIG_ST_HAL_DIRECT_REPORT_SENSOR=y

View File

@ -33,9 +33,6 @@ CONFIG_ST_HAL_LINEAR_DISABLED=y
CONFIG_ST_HAL_ROT_VECTOR_DISABLED=y
CONFIG_ST_HAL_GAME_ROT_VECTOR_DISABLED=y
CONFIG_ST_HAL_GEOMAG_ROT_VECTOR_DISABLED=y
CONFIG_ST_HAL_PROXIMITY_ENABLED=y
CONFIG_ST_HAL_CCT_ENABLED=y
CONFIG_ST_HAL_SW_LIGHT_ENABLED=y
#
# Common configuration
@ -55,6 +52,7 @@ CONFIG_ST_HAL_GYRO_RANGE=35
CONFIG_ST_HAL_TEST_SENSORS_ENABLED=y
CONFIG_ST_HAL_LSM6DSM_ENABLED=y
CONFIG_ST_HAL_LSM6DSL_ENABLED=y
CONFIG_ST_HAL_LSM6DS3TRC_ENABLED=y
CONFIG_ST_HAL_LSM6DS3H_ENABLED=y
CONFIG_ST_HAL_LSM6DS33_ENABLED=y
CONFIG_ST_HAL_LSM6DS3_ENABLED=y
@ -100,9 +98,12 @@ CONFIG_ST_HAL_ISM330DLC_ENABLED=y
CONFIG_ST_HAL_ASM330LHH_ENABLED=y
CONFIG_ST_HAL_LSM6DSR_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32_ENABLED=y
CONFIG_ST_HAL_VL6180_ENABLED=y
CONFIG_ST_HAL_UCS12CM0_ENABLED=y
CONFIG_ST_HAL_VL53L0X_ENABLED=y
CONFIG_ST_HAL_LSM6DSOX_ENABLED=y
CONFIG_ST_HAL_LSM6DSRX_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32X_ENABLED=y
CONFIG_ST_HAL_AIS2IH_ENABLED=y
CONFIG_ST_HAL_ISM330DHCX_ENABLED=y
CONFIG_ST_HAL_ASM330LHHX_ENABLED=y
CONFIG_ST_HAL_DYNAMIC_SENSOR=y
CONFIG_ST_HAL_DIRECT_REPORT_SENSOR=y

View File

@ -0,0 +1,114 @@
#
# Automatically generated file; DO NOT EDIT.
# SensorHAL IIO Configuration
#
CONFIG_ST_HAL_ANDROID_VERSION=7
# CONFIG_ST_HAL_HAS_6AX_FUSION is not set
# CONFIG_ST_HAL_HAS_9AX_FUSION is not set
# CONFIG_ST_HAL_HAS_GEOMAG_FUSION is not set
# CONFIG_ST_HAL_HAS_MAGN_CALIB is not set
# CONFIG_ST_HAL_HAS_ACCEL_CALIB is not set
CONFIG_ST_HAL_GYRO_UNCALIB_AP_EMULATED=y
CONFIG_ST_HAL_ACCEL_UNCALIB_AP_EMULATED=y
#
# Enable/disable sensors
#
CONFIG_ST_HAL_ACCEL_ENABLED=y
CONFIG_ST_HAL_MAGN_ENABLED=y
CONFIG_ST_HAL_GYRO_ENABLED=y
CONFIG_ST_HAL_MAGN_UNCALIB_DISABLED=y
CONFIG_ST_HAL_GYRO_UNCALIB_EMULATED=y
CONFIG_ST_HAL_ACCEL_UNCALIB_EMULATED=y
CONFIG_ST_HAL_SIGN_MOTION_ENABLED=y
CONFIG_ST_HAL_TAP_ENABLED=y
CONFIG_ST_HAL_TAP_TAP_ENABLED=y
CONFIG_ST_HAL_STEP_DETECTOR_ENABLED=y
CONFIG_ST_HAL_STEP_COUNTER_ENABLED=y
CONFIG_ST_HAL_TILT_ENABLED=y
CONFIG_ST_HAL_PRESSURE_ENABLED=y
CONFIG_ST_HAL_ORIENTATION_DISABLED=y
CONFIG_ST_HAL_GRAVITY_DISABLED=y
CONFIG_ST_HAL_LINEAR_DISABLED=y
CONFIG_ST_HAL_ROT_VECTOR_DISABLED=y
CONFIG_ST_HAL_GAME_ROT_VECTOR_DISABLED=y
CONFIG_ST_HAL_GEOMAG_ROT_VECTOR_DISABLED=y
#
# Common configuration
#
CONFIG_ST_HAL_MAX_SAMPLING_FREQUENCY=2000
CONFIG_ST_HAL_DEBUG_LEVEL=2
CONFIG_ST_HAL_ACCEL_ROT_MATRIX="0,1,0,1,0,0,0,0,-1"
CONFIG_ST_HAL_ACCEL_RANGE=79
CONFIG_ST_HAL_MAGN_ROT_MATRIX="0,1,0,1,0,0,0,0,-1"
CONFIG_ST_HAL_MAGN_RANGE=1000
CONFIG_ST_HAL_GYRO_ROT_MATRIX="0,1,0,1,0,0,0,0,-1"
CONFIG_ST_HAL_GYRO_RANGE=35
#
# IIO supported sensors
#
CONFIG_ST_HAL_TEST_SENSORS_ENABLED=y
CONFIG_ST_HAL_LSM6DSM_ENABLED=y
CONFIG_ST_HAL_LSM6DSL_ENABLED=y
CONFIG_ST_HAL_LSM6DS3TRC_ENABLED=y
CONFIG_ST_HAL_LSM6DS3H_ENABLED=y
CONFIG_ST_HAL_LSM6DS33_ENABLED=y
CONFIG_ST_HAL_LSM6DS3_ENABLED=y
CONFIG_ST_HAL_LIS3MDL_ENABLED=y
CONFIG_ST_HAL_LSM303DLHC_ENABLED=y
CONFIG_ST_HAL_LIS3DH_ENABLED=y
CONFIG_ST_HAL_LIS3DHH_ENABLED=y
CONFIG_ST_HAL_IIS3DHHC_ENABLED=y
CONFIG_ST_HAL_LSM330D_ENABLED=y
CONFIG_ST_HAL_LSM330DL_ENABLED=y
CONFIG_ST_HAL_LSM330DLC_ENABLED=y
CONFIG_ST_HAL_LIS331DLH_ENABLED=y
CONFIG_ST_HAL_LSM303DL_ENABLED=y
CONFIG_ST_HAL_LSM303DLH_ENABLED=y
CONFIG_ST_HAL_LSM303DLM_ENABLED=y
CONFIG_ST_HAL_LSM330_ENABLED=y
CONFIG_ST_HAL_LSM303AGR_ENABLED=y
CONFIG_ST_HAL_LSM303AH_ENABLED=y
CONFIG_ST_HAL_ISM303DAC_ENABLED=y
CONFIG_ST_HAL_LIS2MDL_ENABLED=y
CONFIG_ST_HAL_IIS2MDC_ENABLED=y
CONFIG_ST_HAL_LIS2DS12_ENABLED=y
CONFIG_ST_HAL_LIS2DW12_ENABLED=y
CONFIG_ST_HAL_LIS2DG_ENABLED=y
CONFIG_ST_HAL_LIS2DH_ENABLED=y
CONFIG_ST_HAL_IIS2DH_ENABLED=y
CONFIG_ST_HAL_L3G4200D_ENABLED=y
CONFIG_ST_HAL_L3GD20_ENABLED=y
CONFIG_ST_HAL_LPS331AP_ENABLED=y
CONFIG_ST_HAL_LPS25H_ENABLED=y
CONFIG_ST_HAL_LPS22HB_ENABLED=y
CONFIG_ST_HAL_LPS22HD_ENABLED=y
CONFIG_ST_HAL_LPS22HH_ENABLED=y
CONFIG_ST_HAL_LPS27HHW_ENABLED=y
CONFIG_ST_HAL_LPS33HW_ENABLED=y
CONFIG_ST_HAL_LPS35HW_ENABLED=y
CONFIG_ST_HAL_LIS2HH12_ENABLED=y
CONFIG_ST_HAL_HTS221_ENABLED=y
CONFIG_ST_HAL_LSM9DS1_ENABLED=y
CONFIG_ST_HAL_LSM6DS0_ENABLED=y
CONFIG_ST_HAL_LSM6DSO_ENABLED=y
CONFIG_ST_HAL_ISM330DLC_ENABLED=y
CONFIG_ST_HAL_ASM330LHH_ENABLED=y
CONFIG_ST_HAL_LSM6DSR_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32_ENABLED=y
CONFIG_ST_HAL_LSM6DSOX_ENABLED=y
CONFIG_ST_HAL_LSM6DSRX_ENABLED=y
CONFIG_ST_HAL_LSM6DSO32X_ENABLED=y
CONFIG_ST_HAL_AIS2IH_ENABLED=y
CONFIG_ST_HAL_ISM330DHCX_ENABLED=y
CONFIG_ST_HAL_ASM330LHHX_ENABLED=y
CONFIG_ST_HAL_DYNAMIC_SENSOR=y
CONFIG_ST_HAL_DIRECT_REPORT_SENSOR=y
#
# Factory calibration configuration
#
# CONFIG_ST_HAL_FACTORY_CALIBRATION is not set

View File

@ -35,6 +35,7 @@ static const char *device_iio_buffer_length = "buffer/length";
static const char *device_iio_device_name = "iio:device";
static const char *device_iio_injection_mode_enable = "injection_mode";
static const char *device_iio_injection_sensors_filename = "injection_sensors";
static const char *device_iio_current_timestamp_clock = "current_timestamp_clock";
static const char *device_iio_scan_elements_en = "_en";
static const char *device_iio_selftest_available_filename = "selftest_available";
static const char *device_iio_selftest_filename = "selftest";
@ -438,11 +439,15 @@ int device_iio_utils::scan_channel(const char *device_dir,
sprintf(dfilename, "%s/%s_scale", device_dir,
current->name);
ret = sysfs_read_float(dfilename, &current->scale);
if (!ret)
goto error_cleanup_array;
sprintf(dfilename, "%s/%s_offset", device_dir,
current->name);
ret = sysfs_read_float(dfilename,
&current->offset);
if (!ret)
goto error_cleanup_array;
ret = get_type(current, device_dir,
current->name, "in");
@ -482,23 +487,6 @@ error_cleanup_array:
return ret;
}
int device_iio_utils::scan_channel_elements(const char *device_dir,
struct device_iio_info_channel *channel)
{
int ret;
char dfilename[DEVICE_IIO_MAX_FILENAME_LEN + 1];
memset(dfilename, 0, DEVICE_IIO_MAX_FILENAME_LEN + 1);
sprintf(dfilename, "%s/%s_scale", device_dir, channel->name);
ret = sysfs_read_float(dfilename, &channel->scale);
sprintf(dfilename, "%s/%s_offset", device_dir, channel->name);
ret = sysfs_read_float(dfilename, &channel->offset);
return 0;
}
int device_iio_utils::enable_events(const char *device_dir, bool enable)
{
char event_el_dir[DEVICE_IIO_MAX_FILENAME_LEN + 1];
@ -858,7 +846,7 @@ int device_iio_utils::get_type(struct device_iio_info_channel *channel,
if (channel->bits_used == 64)
channel->mask = ~0;
else
channel->mask = (1 << channel->bits_used) - 1;
channel->mask = (unsigned long long int)(1 << channel->bits_used) - 1;
fclose(sysfsfp);
}
@ -1105,3 +1093,19 @@ int device_iio_utils::execute_selftest(const char *device_dir, char *mode)
return -EINVAL;
}
int device_iio_utils::set_clock_type(const char *device_dir, char *type)
{
char tmp_filename[DEVICE_IIO_MAX_FILENAME_LEN];
int ret = 0;
/* write "boottime" -> <iio:devicex>/current_timestamp_clock */
ret = snprintf(tmp_filename,
DEVICE_IIO_MAX_FILENAME_LEN,
"%s/%s",
device_dir,
device_iio_current_timestamp_clock);
if (ret < 0) {
return -ENOMEM;
}
return sysfs_write_str((char *)tmp_filename, (char *)type);
}

View File

@ -60,17 +60,14 @@ typedef enum {
DEVICE_IIO_TAP_TAP = 34,
DEVICE_IIO_WRIST_TILT_GESTURE = 35,
DEVICE_IIO_GESTURE = 36,
DEVICE_IIO_CCT = 37,
} device_iio_chan_type_t;
/*
* Event defines, need to be copied from your linux
* kernel distro
*/
#define DEVICE_IIO_EV_DIR_FIFO_DATA 0x04
#define DEVICE_IIO_EV_DIR_NONE 0x05
#define DEVICE_IIO_EV_DIR_FIFO_DATA 0x05
#define DEVICE_IIO_EV_TYPE_FIFO_FLUSH 0x06
#define DEVICE_IIO_EV_TYPE_CALIB 0x07
#define DISABLE_CHANNEL 0
#define ENABLE_CHANNEL 1
@ -156,8 +153,6 @@ class device_iio_utils {
static int scan_channel(const char *device_dir,
struct device_iio_info_channel **ci_array,
int *counter);
static int scan_channel_elements(const char *device_dir,
struct device_iio_info_channel *channel);
static int support_injection_mode(const char *device_dir);
static int set_injection_mode(const char *device_dir, bool enable);
static int inject_data(const char *device_dir, unsigned char *data,
@ -165,7 +160,7 @@ class device_iio_utils {
static int get_selftest_available(const char *device_dir,
char list[][20]);
static int execute_selftest(const char *device_dir, char *mode);
static int set_clock_type(const char *device_dir, char *type);
};
#endif /* __DEVICE_IIO_UTILS */

0
hardware/rockchip/sensor/st_iio/tools/kconfig-mconf Executable file → Normal file
View File

0
hardware/rockchip/sensor/st_iio/tools/mkconfig Executable file → Normal file
View File