From 5d3afc6849116108d38adabcc10817be9dbbc488 Mon Sep 17 00:00:00 2001 From: Yunhee Seo Date: Tue, 9 Apr 2024 18:08:24 +0900 Subject: [PATCH] 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: I829b1d489d5b0cd68af532c091a8272b3484e72d Signed-off-by: Yunhee Seo --- hw/haptic/gpio.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/hw/haptic/gpio.c b/hw/haptic/gpio.c index 11c53d6..66f39e0 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, }; -- 2.34.1