case SENSOR_TYPE_MAGNETIC_FIELD:
return SENSOR_STRING_TYPE_MAGNETIC_FIELD;
+ case SENSOR_TYPE_MAGNETIC_FIELD_UNCALIBRATED:
+ return SENSOR_STRING_TYPE_MAGNETIC_FIELD_UNCALIBRATED;
+
case SENSOR_TYPE_ORIENTATION:
return SENSOR_STRING_TYPE_ORIENTATION;
flag_t sensor_get_flags (int s)
{
- flag_t flags = 0x0;
+ flag_t flags = 0;
switch (sensor[s].type) {
- case SENSOR_TYPE_ACCELEROMETER:
- case SENSOR_TYPE_MAGNETIC_FIELD:
- case SENSOR_TYPE_ORIENTATION:
- case SENSOR_TYPE_GYROSCOPE:
- case SENSOR_TYPE_GYROSCOPE_UNCALIBRATED:
- case SENSOR_TYPE_PRESSURE:
- flags |= SENSOR_FLAG_CONTINUOUS_MODE;
- break;
-
case SENSOR_TYPE_LIGHT:
case SENSOR_TYPE_AMBIENT_TEMPERATURE:
case SENSOR_TYPE_TEMPERATURE:
break;
default:
- ALOGI("Unknown sensor");
+ break;
}
return flags;
}
return (must ? 100 : 200); /* must 100 Hz, should 200 Hz, CDD compliant */
case SENSOR_TYPE_GYROSCOPE:
- case SENSOR_TYPE_GYROSCOPE_UNCALIBRATED:
return (must ? 200 : 200); /* must 200 Hz, should 200 Hz, CDD compliant */
case SENSOR_TYPE_MAGNETIC_FIELD:
sprintf(avail_sysfs_path, DEVICE_AVAIL_FREQ_PATH, dev_num);
if (sysfs_read_str(avail_sysfs_path, freqs_buf, sizeof(freqs_buf)) < 0) {
- /* If poll mode sensor */
- if (!sensor[s].num_channels) {
+ if (sensor[s].is_polling) {
/* The must rate */
min_supported_rate = get_cdd_freq(s, 1);
}
sprintf(avail_sysfs_path, DEVICE_AVAIL_FREQ_PATH, dev_num);
if (sysfs_read_str(avail_sysfs_path, freqs_buf, sizeof(freqs_buf)) < 0) {
- /* If poll mode sensor */
- if (!sensor[s].num_channels) {
+ if (sensor[s].is_polling) {
/* The should rate */
max_supported_rate = get_cdd_freq(s, 0);
}