cl in struct cmdq_pkt is used to store struct cmdq_client, but every client driver has the struct cmdq_client information, so it's not necessary to store struct cmdq_client in struct cmdq_pkt. Because mailbox maintainer do not like to mix mailbox patch with other patches in a series, so mailbox patch [1] would be sent independently. Changes in v4: 1. Rebase onto mediatek-drm-next-6.12 2. Fix build error in mpd3 driver Changes in v3: 1. Rebase onto Linux 6.11-rc1 and fix conflicts. Changes in v2: 1. Fix typo of CMDQ_JUMP_RELATIVE 2. Refine cmdq_pkt_create() and cmdq_pkt_destroy() 3. Rename cmdq_pkt_jump() to cmdq_pkt_jump_abs() 4. Add cmdq_pkt_jump_rel() helper function 5. drm/mediatek: Use cmdq_pkt_create() and cmdq_pkt_destroy() 6. mtk-mdp3: Get fine-grain control of cmdq_pkt_finalize() 7. mtk-mdp3: Use cmdq_pkt_create() and cmdq_pkt_destroy() [1] https://git.kernel.org/pub/scm/linux/kernel/git/chunkuang.hu/linux.git/commit/?h=mediatek-cmdq8&id=a1b2f7a7488285975c1f439086f1c4cc51a13bb9 Chun-Kuang Hu (3): media: platform: mtk-mdp3: Get fine-grain control of cmdq_pkt_finalize() media: platform: mtk-mdp3: Use cmdq_pkt_create() and cmdq_pkt_destroy() soc: mediatek: cmdq: Remove cmdq_pkt_finalize() helper function .../platform/mediatek/mdp3/mtk-mdp3-cmdq.c | 49 +++---------------- .../platform/mediatek/mdp3/mtk-mdp3-cmdq.h | 1 + .../platform/mediatek/mdp3/mtk-mdp3-core.c | 2 + .../platform/mediatek/mdp3/mtk-mdp3-core.h | 1 + drivers/soc/mediatek/mtk-cmdq-helper.c | 22 --------- include/linux/soc/mediatek/mtk-cmdq.h | 13 ----- 6 files changed, 11 insertions(+), 77 deletions(-) -- 2.34.1