Offering: HULK hulk inclusion category: feature bugzilla: https://gitee.com/openeuler/kernel/issues/I7V1MG -------------------------------- This patch introduces a new API, `sdei_api_event_status`, to query the status of a specific SDEI event. The function invokes the SDEI firmware call `SDEI_EVENT_STATUS` with the given event number and returns the result. Signed-off-by: Bowen You <youbowen2@huawei.com> --- drivers/firmware/arm_sdei.c | 6 ++++++ include/linux/arm_sdei.h | 1 + 2 files changed, 7 insertions(+) diff --git a/drivers/firmware/arm_sdei.c b/drivers/firmware/arm_sdei.c index fe638e40aebb..785611c52817 100644 --- a/drivers/firmware/arm_sdei.c +++ b/drivers/firmware/arm_sdei.c @@ -214,6 +214,12 @@ static int sdei_api_event_get_info(u32 event, u32 info, u64 *result) 0, 0, result); } +int sdei_api_event_status(u32 event, u64 *result) +{ + return invoke_sdei_fn(SDEI_1_0_FN_SDEI_EVENT_STATUS, event, 0, 0, + 0, 0, result); +} + static struct sdei_event *sdei_event_create(u32 event_num, sdei_event_callback *cb, void *cb_arg) diff --git a/include/linux/arm_sdei.h b/include/linux/arm_sdei.h index 28e247dd5773..2666d0be7038 100644 --- a/include/linux/arm_sdei.h +++ b/include/linux/arm_sdei.h @@ -39,6 +39,7 @@ int sdei_event_disable(u32 event_num); int sdei_api_event_interrupt_bind(int hwirq); int sdei_api_event_disable(u32 event_num); int sdei_api_event_enable(u32 event_num); +int sdei_api_event_status(u32 event_num, u64 *result); int sdei_api_clear_eoi(int hwirq); int sdei_api_set_secure_timer_period(int sec); -- 2.34.1