From: Bibby Hsieh Date: Thu, 21 Nov 2019 01:54:06 +0000 (+0800) Subject: soc: mediatek: cmdq: remove OR opertaion from err return X-Git-Tag: v5.6-rc1~18^2~1^2^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=01d1b408ecb0fe277358ba006e569d87ef2a3a45;p=thirdparty%2Fkernel%2Flinux.git soc: mediatek: cmdq: remove OR opertaion from err return Debugging gets harder if we OR two error return values. Return each error on it's own instead Signed-off-by: Bibby Hsieh Reviewed-by: CK Hu [mb: rephrase commit message] Signed-off-by: Matthias Brugger --- diff --git a/drivers/soc/mediatek/mtk-cmdq-helper.c b/drivers/soc/mediatek/mtk-cmdq-helper.c index 3c82de5f9417b..c8fb697876496 100644 --- a/drivers/soc/mediatek/mtk-cmdq-helper.c +++ b/drivers/soc/mediatek/mtk-cmdq-helper.c @@ -149,13 +149,16 @@ int cmdq_pkt_write_mask(struct cmdq_pkt *pkt, u8 subsys, u16 offset, u32 value, u32 mask) { u32 offset_mask = offset; - int err = 0; + int err; if (mask != 0xffffffff) { err = cmdq_pkt_append_command(pkt, CMDQ_CODE_MASK, 0, ~mask); + if (err < 0) + return err; + offset_mask |= CMDQ_WRITE_ENABLE_MASK; } - err |= cmdq_pkt_write(pkt, subsys, offset_mask, value); + err = cmdq_pkt_write(pkt, subsys, offset_mask, value); return err; } @@ -197,9 +200,11 @@ static int cmdq_pkt_finalize(struct cmdq_pkt *pkt) /* insert EOC and generate IRQ for each command iteration */ err = cmdq_pkt_append_command(pkt, CMDQ_CODE_EOC, 0, CMDQ_EOC_IRQ_EN); + if (err < 0) + return err; /* JUMP to end */ - err |= cmdq_pkt_append_command(pkt, CMDQ_CODE_JUMP, 0, CMDQ_JUMP_PASS); + err = cmdq_pkt_append_command(pkt, CMDQ_CODE_JUMP, 0, CMDQ_JUMP_PASS); return err; }