Re: [PATCH v11 09/12] soc: mediatek: cmdq: define the instruction struct
From: houlong wei <houlong.wei@mediatek.com>
Date: 2019-08-10 16:38:16
Also in:
linux-devicetree, linux-mediatek, lkml
On Sun, 2019-08-11 at 00:12 +0800, houlong wei wrote:
Hi Bibby, I have inline comment in function cmdq_pkt_write_mask(). On Mon, 2019-07-29 at 15:01 +0800, Bibby Hsieh wrote:quoted
Define an instruction structure for gce driver to append command. This structure can make the client's code more readability. Signed-off-by: Bibby Hsieh <redacted> Reviewed-by: CK Hu <redacted> --- drivers/soc/mediatek/mtk-cmdq-helper.c | 103 +++++++++++++++-------- include/linux/mailbox/mtk-cmdq-mailbox.h | 2 + 2 files changed, 72 insertions(+), 33 deletions(-)diff --git a/drivers/soc/mediatek/mtk-cmdq-helper.c b/drivers/soc/mediatek/mtk-cmdq-helper.c index 7aa0517ff2f3..0886c4967ca4 100644 --- a/drivers/soc/mediatek/mtk-cmdq-helper.c +++ b/drivers/soc/mediatek/mtk-cmdq-helper.c@@ -9,12 +9,24 @@ #include <linux/mailbox_controller.h> #include <linux/soc/mediatek/mtk-cmdq.h>
[...]
quoted
int cmdq_pkt_write_mask(struct cmdq_pkt *pkt, u8 subsys, u16 offset, u32 value, u32 mask) { + struct cmdq_instruction *inst; u32 offset_mask = offset; - int err = 0; if (mask != 0xffffffff) { - err = cmdq_pkt_append_command(pkt, CMDQ_CODE_MASK, 0, ~mask); + inst = cmdq_pkt_append_command(pkt); + if (!inst) + return -ENOMEM; + + inst->op = CMDQ_CODE_MASK; + inst->mask = ~mask;
quoted
offset_mask |= CMDQ_WRITE_ENABLE_MASK; } - err |= cmdq_pkt_write(pkt, value, subsys, offset_mask); - return err; + return cmdq_pkt_write(pkt, subsys, offset_mask, value);
We need add a type conversion here, (u8)offset_mask, for your new function type. Er... it's better to remove local variable 'offset_mask' and replace it with 'offset'.
quoted
}
[...] _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel