summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYunhee Seo <yuni.seo@samsung.com>2024-04-09 21:42:44 +0900
committerYunhee Seo <yuni.seo@samsung.com>2024-04-09 21:42:44 +0900
commit5429719a19f66501a98542a0b03f3c79255a6a4a (patch)
tree956e3767e4f29ac9b62ae0564a959d8c0c38b58b
parent624edc5ea0b1bfa24a4c84a6022122d4054d8246 (diff)
downloaddevice-c4-5429719a19f66501a98542a0b03f3c79255a6a4a.tar.gz
device-c4-5429719a19f66501a98542a0b03f3c79255a6a4a.tar.bz2
device-c4-5429719a19f66501a98542a0b03f3c79255a6a4a.zip
haptic: Apply HAL ABI versioning
To support OS upgrade feature, hal-backend and hal-api module needs HAL ABI versioning. So, major/minor version is added to hal_backend structure. While applying HAL ABI versioning, hal_backend_[module]_funcs is allocated from hal-api-[module] side. Thus, allocation is moved to hal-api-device-haptic side. Change-Id: If132c3151d89c68df12c65b09657555474684a5e Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
-rw-r--r--hw/haptic/gpio.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/hw/haptic/gpio.c b/hw/haptic/gpio.c
index 30c8edf..7497bc9 100644
--- a/hw/haptic/gpio.c
+++ b/hw/haptic/gpio.c
@@ -228,7 +228,7 @@ static int gpio_haptic_vibrate_monotone(int handle, int duration, int frequency,
}
/* Zero(0) is the infinitely vibration value */
- if (duration == HAPTIC_MODULE_DURATION_UNLIMITED)
+ if (duration == HAL_DEVICE_HAPTIC_MODULE_DURATION_UNLIMITED)
duration = 0;
if (stop_timer)
@@ -317,9 +317,14 @@ static int haptic_init(void **data)
{
hal_backend_device_haptic_funcs *device_haptic_funcs;
- device_haptic_funcs = calloc(1, sizeof(hal_backend_device_haptic_funcs));
- if (!device_haptic_funcs)
- return -ENOMEM;
+ if (!data) {
+ _E("Invalid parameter");
+ return -EINVAL;
+ }
+
+ device_haptic_funcs = *(hal_backend_device_haptic_funcs **) data;
+ if (!device_haptic_funcs)
+ return -EINVAL;
device_haptic_funcs->get_device_count = gpio_haptic_get_device_count;
device_haptic_funcs->open_device = gpio_haptic_open_device;
@@ -328,8 +333,6 @@ static int haptic_init(void **data)
device_haptic_funcs->stop_device = gpio_haptic_stop_device;
device_haptic_funcs->is_valid = is_valid;
- *data = (void *)device_haptic_funcs;
-
return 0;
}
@@ -349,4 +352,6 @@ hal_backend EXPORT hal_backend_device_haptic_data = {
.abi_version = HAL_ABI_VERSION_TIZEN_7_0,
.init = haptic_init,
.exit = haptic_exit,
+ .major_version = 1,
+ .minor_version = 0,
};