]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
spmi: mediatek: add device id check
authorSen Chu <sen.chu@mediatek.com>
Wed, 6 Dec 2023 23:17:31 +0000 (15:17 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 15 Dec 2023 16:27:04 +0000 (17:27 +0100)
Add device id check for spmi write API.

Signed-off-by: Sen Chu <sen.chu@mediatek.com>
Link: https://lore.kernel.org/r/20230518040729.8789-1-sen.chu@mediatek.com
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Link: https://lore.kernel.org/r/20231206231733.4031901-9-sboyd@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/spmi/spmi-mtk-pmif.c

index cc660da6a03702288996ef389f7b25e92217eb2d..5079442f8ea1664e467aac50441be11fffffe6bc 100644 (file)
@@ -384,6 +384,12 @@ static int pmif_spmi_write_cmd(struct spmi_controller *ctrl, u8 opc, u8 sid,
        u32 data, wdata, cmd;
        unsigned long flags;
 
+       /* Check for argument validation. */
+       if (unlikely(sid & ~0xf)) {
+               dev_err(&ctrl->dev, "exceed the max slv id\n");
+               return -EINVAL;
+       }
+
        if (len > 4) {
                dev_err(&ctrl->dev, "pmif supports 1..4 bytes per trans, but:%zu requested", len);