OSDN Git Service

Additional calibration validation
[android-x86/hardware-intel-libsensors.git] / entry.c
diff --git a/entry.c b/entry.c
index df449db..e84e18d 100644 (file)
--- a/entry.c
+++ b/entry.c
@@ -12,7 +12,8 @@
 
 static int init_count;
 
-static int activate(struct sensors_poll_device_t* dev, int handle, int enabled)
+static int activate (__attribute__((unused)) struct sensors_poll_device_t* dev,
+                    int handle, int enabled)
 {
        if (init_count == 0 || handle < 0 || handle >= sensor_count)
                return -EINVAL;
@@ -40,7 +41,8 @@ static int activate(struct sensors_poll_device_t* dev, int handle, int enabled)
 }
 
 
-static int set_delay(struct sensors_poll_device_t* dev, int handle, int64_t ns)
+static int set_delay (__attribute__((unused)) struct sensors_poll_device_t* dev,
+                     int handle, int64_t ns)
 {
        if (init_count == 0 || handle < 0 || handle >= sensor_count)
                return -EINVAL;
@@ -49,8 +51,8 @@ static int set_delay(struct sensors_poll_device_t* dev, int handle, int64_t ns)
 }
 
 
-static int poll(struct sensors_poll_device_t* dev, sensors_event_t* data,
-               int count)
+static int poll (__attribute__((unused)) struct sensors_poll_device_t* dev,
+                sensors_event_t* data, int count)
 {
        if (init_count == 0 || !data || count < 1)
                return -EINVAL;
@@ -59,7 +61,23 @@ static int poll(struct sensors_poll_device_t* dev, sensors_event_t* data,
 }
 
 
-static int close_module(hw_device_t *device)
+static int batch (__attribute__((unused)) struct sensors_poll_device_1* dev,
+                 int sensor_handle, __attribute__((unused)) int flags,
+                 int64_t sampling_period_ns,
+                 __attribute__((unused)) int64_t max_report_latency_ns)
+{
+       return set_delay ((struct sensors_poll_device_t*)dev,
+               sensor_handle, sampling_period_ns);
+}
+
+static int flush (__attribute__((unused)) struct sensors_poll_device_1* dev,
+                 int handle)
+{
+       return sensor_flush (handle);
+}
+
+
+static int close_module (__attribute__((unused)) hw_device_t *device)
 {
        if (init_count == 0)
                return -EINVAL;
@@ -79,19 +97,21 @@ static int close_module(hw_device_t *device)
 static int initialize_module(const struct hw_module_t *module, const char *id,
                                struct hw_device_t** device)
 {
-       static struct sensors_poll_device_t poll_device;
+       static struct sensors_poll_device_1 poll_device;
 
        if (strcmp(id, SENSORS_HARDWARE_POLL))
                 return -EINVAL;
 
        poll_device.common.tag          = HARDWARE_DEVICE_TAG;
-       poll_device.common.version      = SENSORS_DEVICE_API_VERSION_0_1;
+       poll_device.common.version      = SENSORS_DEVICE_API_VERSION_1_3;
        poll_device.common.module       = (struct hw_module_t*) module;
        poll_device.common.close        = close_module;
 
        poll_device.activate            = activate;
        poll_device.setDelay            = set_delay;
        poll_device.poll                = poll;
+       poll_device.batch               = batch;
+       poll_device.flush               = flush;
 
        *device = &poll_device.common;
 
@@ -117,7 +137,7 @@ struct sensors_module_t __attribute__ ((visibility ("default")))
                .common = {
                        .tag = HARDWARE_MODULE_TAG,
                        .version_major = 1,
-                       .version_minor = 0,
+                       .version_minor = 3,
                        .id = SENSORS_HARDWARE_MODULE_ID,
                        .name = "IIO sensors HAL",
                        .author = "Intel",