From 41b1626bd5e96b6d7d11e88947d6faea84dc8fb0 Mon Sep 17 00:00:00 2001 From: Herman Chen Date: Wed, 22 Oct 2025 17:49:49 +0800 Subject: [PATCH] chore[kmpp_obj]: Add ioctl return value to KmppIoc Signed-off-by: Herman Chen Change-Id: I5c4beaabe8cd0b8cca90fb2ece1e4cd49b96fdbb --- kmpp/base/inc/kmpp_ioc.h | 1 + kmpp/base/kmpp_obj.c | 3 +++ 2 files changed, 4 insertions(+) diff --git a/kmpp/base/inc/kmpp_ioc.h b/kmpp/base/inc/kmpp_ioc.h index 841bc285..b99e60d1 100644 --- a/kmpp/base/inc/kmpp_ioc.h +++ b/kmpp/base/inc/kmpp_ioc.h @@ -15,6 +15,7 @@ typedef void* KmppIoc; ENTRY(prefix, u32, rk_u32, cmd, FLAG_NONE, cmd) \ ENTRY(prefix, u32, rk_u32, flags, FLAG_NONE, flags) \ ENTRY(prefix, u32, rk_u32, id, FLAG_NONE, id) \ + ENTRY(prefix, s32, rk_s32, ret, FLAG_NONE, ret) \ STRCT(prefix, shm, KmppShmPtr, ctx, FLAG_NONE, ctx) \ STRCT(prefix, shm, KmppShmPtr, in, FLAG_NONE, in) \ STRCT(prefix, shm, KmppShmPtr, out, FLAG_NONE, out) diff --git a/kmpp/base/kmpp_obj.c b/kmpp/base/kmpp_obj.c index 52ee7844..a97a015e 100644 --- a/kmpp/base/kmpp_obj.c +++ b/kmpp/base/kmpp_obj.c @@ -1282,6 +1282,9 @@ rk_s32 kmpp_obj_ioctl(KmppObj ctx, rk_s32 cmd, KmppObj in, KmppObj out, const ch ret = ioctl(p->ioc.fd, 0, ioc_arg); + /* if defined ret in ioc object use ret in ioc object */ + kmpp_ioc_get_ret(ioc, &ret); + kmpp_obj_put(ioc, caller); return ret;