display: Apply HAL ABI versioning 09/309409/1
authorYunhee Seo <yuni.seo@samsung.com>
Tue, 9 Apr 2024 12:35:46 +0000 (21:35 +0900)
committerYunhee Seo <yuni.seo@samsung.com>
Tue, 9 Apr 2024 12:35:46 +0000 (21:35 +0900)
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-display side.

Change-Id: Ia8b2499864154b0e469d15863d688c49f565374d
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
hw/display/display.c

index acbb4216bfdb461ef0e25af14ac701eb8072749f..3b58615205c52964104f02d60b51e5421488adaf 100644 (file)
@@ -109,16 +109,19 @@ static int display_init(void **data)
 {
        hal_backend_device_display_funcs *device_display_funcs;
 
-       device_display_funcs = calloc(1, sizeof(hal_backend_device_display_funcs));
+       if (!data) {
+               _E("Invalid parameter");
+               return -EINVAL;
+       }
+
+       device_display_funcs = *(hal_backend_device_display_funcs **) data;
        if (!device_display_funcs)
-               return -ENOMEM;
+               return -EINVAL;
 
        device_display_funcs->get_max_brightness = display_get_max_brightness;
        device_display_funcs->get_brightness = display_get_brightness;
        device_display_funcs->set_brightness = display_set_brightness;
 
-       *data = (void *)device_display_funcs;
-
        return 0;
 }
 
@@ -137,4 +140,6 @@ hal_backend EXPORT hal_backend_device_display_data = {
        .abi_version = HAL_ABI_VERSION_TIZEN_7_0,
        .init = display_init,
        .exit = display_exit,
+       .major_version = 1,
+       .minor_version = 0,
 };