From: Youngjae Cho Date: Wed, 6 Oct 2021 04:35:00 +0000 (+0900) Subject: board: support switch partition X-Git-Tag: submit/tizen/20211103.072537^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0ffa9448561abcfd7b498a038a60ea749bb1bdf9;p=platform%2Fhal%2Fapi%2Fdevice.git board: support switch partition Change-Id: I0941b12c1f529587bc6e0593eae67fa99e447ea9 Signed-off-by: Youngjae Cho --- diff --git a/include/backend/hal-board-interface.h b/include/backend/hal-board-interface.h index a70bb32..f9a068c 100644 --- a/include/backend/hal-board-interface.h +++ b/include/backend/hal-board-interface.h @@ -26,6 +26,7 @@ typedef struct _hal_backend_board_funcs { /* Serial number of this device */ int (*get_device_serial_number)(char *buffer, int len); int (*get_device_revision)(int *revision); + int (*switch_partition)(int argc, char *argv[]); } hal_backend_board_funcs; #ifdef __cplusplus diff --git a/include/hal-board.h b/include/hal-board.h index e7ed03a..d4afeeb 100644 --- a/include/hal-board.h +++ b/include/hal-board.h @@ -28,6 +28,7 @@ int hal_device_board_get_backend(void); int hal_device_board_put_backend(void); int hal_device_board_get_device_serial_number(char *buffer, int len); int hal_device_board_get_device_revision(int *revision); +int hal_device_board_switch_partition(int argc, char *argv[]); #ifdef __cplusplus } diff --git a/src/board.c b/src/board.c index 197a071..cac90bc 100644 --- a/src/board.c +++ b/src/board.c @@ -90,3 +90,18 @@ int hal_device_board_get_device_revision(int *revision) return hal_board_funcs->get_device_revision(revision); } +int hal_device_board_switch_partition(int argc, char *argv[]) +{ + int ret; + + if (!hal_board_funcs && !hal_initialized) { + if ((ret = hal_device_board_get_backend()) < 0) + return ret; + } + + if (!hal_board_funcs || + !hal_board_funcs->switch_partition) + return -ENODEV; + + return hal_board_funcs->switch_partition(argc, argv); +}