Modification Point:
1. Use enc configure object macro.
2. Use kmpp_obj_update to sync user cfg setup.
3. Distinguish between user mode and kernel mode for enc obj.
4. EncImpl only check codec related SET_CFG result.
5. Refactor SET_CFG flow.
6. Adapter jpeg q_mode feature.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Signed-off-by: xiaoxu.chen <xiaoxu.chen@rock-chips.com>
Change-Id: I2856acdf863189fdaa29121ad8bc007fe90b5ab5
1. The output object is the KmppObj directly get from obj ioctl operation.
2. Allow NULL sptr to return NULL object without error log.
3. Fix typo in kmpp_obj_helper.h
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I6d29ab4b304902710dba0d7a58f4728b22c90f62
1. Support pure kernel objdef without IMPL_TYPE.
2. Fix ioctl ARG0 macro for no specified ioctl index.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I33c9629f5df638edb22906a57c489a9516645111
The type index is for global objdef index same in kernel and userspace.
The objdefset index is the index for those defs shared to kernel.
The objdef ioctl needs to use the second index.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I5e1d76094a2f95984e7798042964b2278b37a51b
1. Add kernel ioctl cmd trie query.
It causes kernel log:
kmpp_ioc: kmpp_ioc_ioctl: invalid ioc count 0
Just ignore the log or update to new kmpp-develop version.
The log will gone after kmpp-develop commit
feat[kmpp_obj]: Add ioctl trie
2. Add objdef cmd query function.
3. Update kmpp_ioctl to support parameter "ctx".
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Ia3c31a7e92681fe671456f19612a199857b362a5
1. Use KmppShm to replace KmppShmPtr as input.
2. Add kmpp_shm_to_entry to get valid access address.
3. Add more test case.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Id554e4e60f8e11e08578c91a9c30c7b173f10ab9
1. Remove init / deinit function in kmpp_obj_func.h
2. Add extern "C" in kmpp_obj_func.h
3. Set register / unregister function in kmpp_obj_helper.h to be static
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Ic7210c8114f4a3fc9fc94f69f350c586d6bdd3d2
UOBJ: deliver userspace buffer for rk3588 and rk3576
SOBJ: deliver shared memory buffer for rv1126b
Sync to kmpp-develop patch with the same log:
If596371639eaedb01d6900c737d1f7fec49bf8d4
Change-Id: I8927f6341b5d3f94bf52af32c02b75cd24ad0681
Signed-off-by: timkingh.huang <timkingh.huang@rock-chips.com>
Use "flags" instead of "flag" for KmppIoc entry
Change-Id: I87b0557a09cfad87d825836de1c6be72478957e5
Signed-off-by: Yanjun Liao <yanjun.liao@rock-chips.com>
Sync with kmpp-develop commit:
feat[kmpp]: Add jpeg roi function for RV1126B
Change-Id: Ifeb5ce7b75af6fc3fc0e66fbe727dfd30a325a0e
Signed-off-by: xiaoxu.chen <xiaoxu.chen@rock-chips.com>
Depend on the commit:
270375: feat[kmpp_venc_objs]: Add chan_fd to init cfg | https://10.10.10.29/c/rk/mpp/+/270375
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I5d174695f023cf306e7f4df59243d21f255c2bc3
Sync with kmpp-develop commit:
feat[kmpp]: Use enc cfg obj
Add MppEncCfgImpl to compatible with MppEncCfgSet and kmpp_obj path.
Signed-off-by: xiaoxu.chen <xiaoxu.chen@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: Id4e262d1053c03cd93d620828405f060f0f8517c
1. Add buf_grp, buf_grp_cfg, buffer, buf_cfg objdef.
2. The buf_grp_cfg is binded to buf_grp and the buf_cfg is binded to
buffer. The binding cfg obj is stored in private data.
Change-Id: I9243c03f7b9519536fdc2f24b62761dc04baac85
Signed-off-by: Yanjun Liao <yanjun.liao@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
1. Add KMPP_OBJ_PRIV_SIZE for extra priv data to userspace KmppObjImpl.
2. When add private data realloc mempool for KmppObjImpl.
Change-Id: Ifc6d210cc77497cc9cbd5d86ad1ddcf2ba0fc4af
Signed-off-by: Yanjun Liao <yanjun.liao@rock-chips.com>
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
1. Use mem pool to alloc KmppObjImpl
2. Add kmpp_obj_put_impl to release KmppObjImpl header only.
3. Add grp_cfg and buf_cfg release operation.
4. Use MPP_SINGLETON to init kmpp_venc_cfg.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I865d4d990d7e89598b2f17d85460b809f7f602df