auto import from //branches/cupcake/...@130745
diff --git a/include/hardware/sensors.h b/include/hardware/sensors.h
index a7ab7ad..094b3ee 100644
--- a/include/hardware/sensors.h
+++ b/include/hardware/sensors.h
@@ -37,7 +37,10 @@
#define SENSORS_HARDWARE_DATA "data"
/**
- * Handles must be higher than SENSORS_HANDLE_BASE
+ * Handles must be higher than SENSORS_HANDLE_BASE and must be unique.
+ * A Handle identifies a given sensors. The handle is used to activate
+ * and/or deactivate sensors.
+ * In this version of the API there can only be 256 handles.
*/
#define SENSORS_HANDLE_BASE 0
#define SENSORS_HANDLE_BITS 8
@@ -232,22 +235,37 @@
struct hw_module_t common;
/**
- * @return bit map of available sensors defined by
- * the constants SENSORS_XXXX.
+ * Enumerate all available sensors. The list is returned in "list".
+ * @return number of sensors in the list
*/
int (*get_sensors_list)(struct sensors_module_t* module,
- struct sensor_t const**);
+ struct sensor_t const** list);
};
struct sensor_t {
+ /* name of this sensors */
const char* name;
+ /* vendor of the hardware part */
const char* vendor;
+ /* version of the hardware part + driver. The value of this field is
+ * left to the implementation and doesn't have to be monotonicaly
+ * increasing.
+ */
int version;
+ /* handle that identifies this sensors. This handle is used to activate
+ * and deactivate this sensor. The value of the handle must be 8 bits
+ * in this version of the API.
+ */
int handle;
+ /* this sensor's type. */
int type;
+ /* maximaum range of this sensor's value in SI units */
float maxRange;
+ /* smallest difference between two values reported by this sensor */
float resolution;
+ /* rough estimate of this sensor's power consumption in mA */
float power;
+ /* reserved fields, must be zero */
void* reserved[9];
};
@@ -269,9 +287,9 @@
*/
int (*open_data_source)(struct sensors_control_device_t *dev);
- /** Activate/deactivate one or more of the sensors.
+ /** Activate/deactivate one sensor.
*
- * @param sensors is the handle of the sensors to change.
+ * @param handle is the handle of the sensor to change.
* @param enabled set to 1 to enable, or 0 to disable the sensor.
*
* @return 0 on success, negative errno code otherwise