In order to have fine-grained control, use cmdq_pkt_eoc() and
cmdq_pkt_jump_rel() to replace cmdq_pkt_finalize().
Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
---
drivers/soc/mediatek/mtk-cmdq-helper.c | 22 ----------------------
include/linux/soc/mediatek/mtk-cmdq.h | 13 -------------
2 files changed, 35 deletions(-)
diff --git a/drivers/soc/mediatek/mtk-cmdq-helper.c b/drivers/soc/mediatek/mtk-cmdq-helper.c
index a8fccedba83f..2a47dda4dd4a 100644
--- a/drivers/soc/mediatek/mtk-cmdq-helper.c
+++ b/drivers/soc/mediatek/mtk-cmdq-helper.c
@@ -538,27 +538,5 @@ int cmdq_pkt_eoc(struct cmdq_pkt *pkt)
}
EXPORT_SYMBOL(cmdq_pkt_eoc);
-int cmdq_pkt_finalize(struct cmdq_pkt *pkt)
-{
- struct cmdq_instruction inst = { {0} };
- int err;
-
- /* insert EOC and generate IRQ for each command iteration */
- inst.op = CMDQ_CODE_EOC;
- inst.value = CMDQ_EOC_IRQ_EN;
- err = cmdq_pkt_append_command(pkt, inst);
- if (err < 0)
- return err;
-
- /* JUMP to end */
- inst.op = CMDQ_CODE_JUMP;
- inst.value = CMDQ_JUMP_PASS >>
- cmdq_get_shift_pa(((struct cmdq_client *)pkt->cl)->chan);
- err = cmdq_pkt_append_command(pkt, inst);
-
- return err;
-}
-EXPORT_SYMBOL(cmdq_pkt_finalize);
-
MODULE_DESCRIPTION("MediaTek Command Queue (CMDQ) driver");
MODULE_LICENSE("GPL v2");
diff --git a/include/linux/soc/mediatek/mtk-cmdq.h b/include/linux/soc/mediatek/mtk-cmdq.h
index 5bee6f7fc400..0c3906e8ad19 100644
--- a/include/linux/soc/mediatek/mtk-cmdq.h
+++ b/include/linux/soc/mediatek/mtk-cmdq.h
@@ -391,14 +391,6 @@ int cmdq_pkt_jump_rel(struct cmdq_pkt *pkt, s32 offset, u8 shift_pa);
*/
int cmdq_pkt_eoc(struct cmdq_pkt *pkt);
-/**
- * cmdq_pkt_finalize() - Append EOC and jump command to pkt.
- * @pkt: the CMDQ packet
- *
- * Return: 0 for success; else the error code is returned
- */
-int cmdq_pkt_finalize(struct cmdq_pkt *pkt);
-
#else /* IS_ENABLED(CONFIG_MTK_CMDQ) */
static inline int cmdq_dev_get_client_reg(struct device *dev,
@@ -519,11 +511,6 @@ static inline int cmdq_pkt_eoc(struct cmdq_pkt *pkt)
return -EINVAL;
}
-static inline int cmdq_pkt_finalize(struct cmdq_pkt *pkt)
-{
- return -EINVAL;
-}
-
#endif /* IS_ENABLED(CONFIG_MTK_CMDQ) */
#endif /* __MTK_CMDQ_H__ */
--
2.34.1
Il 01/09/24 16:32, Chun-Kuang Hu ha scritto: > In order to have fine-grained control, use cmdq_pkt_eoc() and > cmdq_pkt_jump_rel() to replace cmdq_pkt_finalize(). > > Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org> I'll pick this one after the media patches will be mainlined to avoid issues. In the meanwhile, mainly as a self-reminder: Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
On 01/09/2024 16:32, Chun-Kuang Hu wrote: > In order to have fine-grained control, use cmdq_pkt_eoc() and > cmdq_pkt_jump_rel() to replace cmdq_pkt_finalize(). > > Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org> Acked-by: Matthias Brugger <matthias.bgg@gmail.com> > --- > drivers/soc/mediatek/mtk-cmdq-helper.c | 22 ---------------------- > include/linux/soc/mediatek/mtk-cmdq.h | 13 ------------- > 2 files changed, 35 deletions(-) > > diff --git a/drivers/soc/mediatek/mtk-cmdq-helper.c b/drivers/soc/mediatek/mtk-cmdq-helper.c > index a8fccedba83f..2a47dda4dd4a 100644 > --- a/drivers/soc/mediatek/mtk-cmdq-helper.c > +++ b/drivers/soc/mediatek/mtk-cmdq-helper.c > @@ -538,27 +538,5 @@ int cmdq_pkt_eoc(struct cmdq_pkt *pkt) > } > EXPORT_SYMBOL(cmdq_pkt_eoc); > > -int cmdq_pkt_finalize(struct cmdq_pkt *pkt) > -{ > - struct cmdq_instruction inst = { {0} }; > - int err; > - > - /* insert EOC and generate IRQ for each command iteration */ > - inst.op = CMDQ_CODE_EOC; > - inst.value = CMDQ_EOC_IRQ_EN; > - err = cmdq_pkt_append_command(pkt, inst); > - if (err < 0) > - return err; > - > - /* JUMP to end */ > - inst.op = CMDQ_CODE_JUMP; > - inst.value = CMDQ_JUMP_PASS >> > - cmdq_get_shift_pa(((struct cmdq_client *)pkt->cl)->chan); > - err = cmdq_pkt_append_command(pkt, inst); > - > - return err; > -} > -EXPORT_SYMBOL(cmdq_pkt_finalize); > - > MODULE_DESCRIPTION("MediaTek Command Queue (CMDQ) driver"); > MODULE_LICENSE("GPL v2"); > diff --git a/include/linux/soc/mediatek/mtk-cmdq.h b/include/linux/soc/mediatek/mtk-cmdq.h > index 5bee6f7fc400..0c3906e8ad19 100644 > --- a/include/linux/soc/mediatek/mtk-cmdq.h > +++ b/include/linux/soc/mediatek/mtk-cmdq.h > @@ -391,14 +391,6 @@ int cmdq_pkt_jump_rel(struct cmdq_pkt *pkt, s32 offset, u8 shift_pa); > */ > int cmdq_pkt_eoc(struct cmdq_pkt *pkt); > > -/** > - * cmdq_pkt_finalize() - Append EOC and jump command to pkt. > - * @pkt: the CMDQ packet > - * > - * Return: 0 for success; else the error code is returned > - */ > -int cmdq_pkt_finalize(struct cmdq_pkt *pkt); > - > #else /* IS_ENABLED(CONFIG_MTK_CMDQ) */ > > static inline int cmdq_dev_get_client_reg(struct device *dev, > @@ -519,11 +511,6 @@ static inline int cmdq_pkt_eoc(struct cmdq_pkt *pkt) > return -EINVAL; > } > > -static inline int cmdq_pkt_finalize(struct cmdq_pkt *pkt) > -{ > - return -EINVAL; > -} > - > #endif /* IS_ENABLED(CONFIG_MTK_CMDQ) */ > > #endif /* __MTK_CMDQ_H__ */
© 2016 - 2024 Red Hat, Inc.