See https://postmarketos.org/edge/2025/11/11/kernels-llvm/ for the background behind this change and how we're handling these MRs. [ci:skip-kconfigcheck]: large change across many packages, we leave kconfig fixes to kernel maintainers Signed-off-by: Jens Reidel <adrian@postmarketos.org> Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7346>
128 lines
4.7 KiB
Diff
128 lines
4.7 KiB
Diff
From 7fa37ba25a1dfc084e24ea9acc14bf1fad8af14c Mon Sep 17 00:00:00 2001
|
|
From: Arnd Bergmann <arnd@arndb.de>
|
|
Date: Thu, 7 Aug 2025 22:54:15 +0200
|
|
Subject: [PATCH] media: s5p-mfc: remove an unused/uninitialized variable
|
|
|
|
The s5p_mfc_cmd_args structure in the v6 driver is never used, not
|
|
initialized to anything other than zero, but as of clang-21 this
|
|
causes a warning:
|
|
|
|
drivers/media/platform/samsung/s5p-mfc/s5p_mfc_cmd_v6.c:45:7: error: variable 'h2r_args' is uninitialized when passed as a const pointer argument here [-Werror,-Wuninitialized-const-pointer]
|
|
45 | &h2r_args);
|
|
| ^~~~~~~~
|
|
|
|
Just remove this for simplicity. Since the function is also called
|
|
through a callback, this does require adding a trivial wrapper with
|
|
the correct prototype.
|
|
|
|
Fixes: f96f3cfa0bb8 ("[media] s5p-mfc: Update MFC v4l2 driver to support MFC6.x")
|
|
Cc: stable@vger.kernel.org
|
|
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
|
|
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
|
|
---
|
|
.../platform/samsung/s5p-mfc/s5p_mfc_cmd_v6.c | 35 +++++++------------
|
|
1 file changed, 13 insertions(+), 22 deletions(-)
|
|
|
|
diff --git a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_cmd_v6.c b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_cmd_v6.c
|
|
index 47bc3014b5d8b8..f7c682fca64595 100644
|
|
--- a/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_cmd_v6.c
|
|
+++ b/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_cmd_v6.c
|
|
@@ -14,8 +14,7 @@
|
|
#include "s5p_mfc_opr.h"
|
|
#include "s5p_mfc_cmd_v6.h"
|
|
|
|
-static int s5p_mfc_cmd_host2risc_v6(struct s5p_mfc_dev *dev, int cmd,
|
|
- const struct s5p_mfc_cmd_args *args)
|
|
+static int s5p_mfc_cmd_host2risc_v6(struct s5p_mfc_dev *dev, int cmd)
|
|
{
|
|
mfc_debug(2, "Issue the command: %d\n", cmd);
|
|
|
|
@@ -31,7 +30,6 @@ static int s5p_mfc_cmd_host2risc_v6(struct s5p_mfc_dev *dev, int cmd,
|
|
|
|
static int s5p_mfc_sys_init_cmd_v6(struct s5p_mfc_dev *dev)
|
|
{
|
|
- struct s5p_mfc_cmd_args h2r_args;
|
|
const struct s5p_mfc_buf_size_v6 *buf_size = dev->variant->buf_size->priv;
|
|
int ret;
|
|
|
|
@@ -41,33 +39,23 @@ static int s5p_mfc_sys_init_cmd_v6(struct s5p_mfc_dev *dev)
|
|
|
|
mfc_write(dev, dev->ctx_buf.dma, S5P_FIMV_CONTEXT_MEM_ADDR_V6);
|
|
mfc_write(dev, buf_size->dev_ctx, S5P_FIMV_CONTEXT_MEM_SIZE_V6);
|
|
- return s5p_mfc_cmd_host2risc_v6(dev, S5P_FIMV_H2R_CMD_SYS_INIT_V6,
|
|
- &h2r_args);
|
|
+ return s5p_mfc_cmd_host2risc_v6(dev, S5P_FIMV_H2R_CMD_SYS_INIT_V6);
|
|
}
|
|
|
|
static int s5p_mfc_sleep_cmd_v6(struct s5p_mfc_dev *dev)
|
|
{
|
|
- struct s5p_mfc_cmd_args h2r_args;
|
|
-
|
|
- memset(&h2r_args, 0, sizeof(struct s5p_mfc_cmd_args));
|
|
- return s5p_mfc_cmd_host2risc_v6(dev, S5P_FIMV_H2R_CMD_SLEEP_V6,
|
|
- &h2r_args);
|
|
+ return s5p_mfc_cmd_host2risc_v6(dev, S5P_FIMV_H2R_CMD_SLEEP_V6);
|
|
}
|
|
|
|
static int s5p_mfc_wakeup_cmd_v6(struct s5p_mfc_dev *dev)
|
|
{
|
|
- struct s5p_mfc_cmd_args h2r_args;
|
|
-
|
|
- memset(&h2r_args, 0, sizeof(struct s5p_mfc_cmd_args));
|
|
- return s5p_mfc_cmd_host2risc_v6(dev, S5P_FIMV_H2R_CMD_WAKEUP_V6,
|
|
- &h2r_args);
|
|
+ return s5p_mfc_cmd_host2risc_v6(dev, S5P_FIMV_H2R_CMD_WAKEUP_V6);
|
|
}
|
|
|
|
/* Open a new instance and get its number */
|
|
static int s5p_mfc_open_inst_cmd_v6(struct s5p_mfc_ctx *ctx)
|
|
{
|
|
struct s5p_mfc_dev *dev = ctx->dev;
|
|
- struct s5p_mfc_cmd_args h2r_args;
|
|
int codec_type;
|
|
|
|
mfc_debug(2, "Requested codec mode: %d\n", ctx->codec_mode);
|
|
@@ -129,23 +117,20 @@ static int s5p_mfc_open_inst_cmd_v6(struct s5p_mfc_ctx *ctx)
|
|
mfc_write(dev, ctx->ctx.size, S5P_FIMV_CONTEXT_MEM_SIZE_V6);
|
|
mfc_write(dev, 0, S5P_FIMV_D_CRC_CTRL_V6); /* no crc */
|
|
|
|
- return s5p_mfc_cmd_host2risc_v6(dev, S5P_FIMV_H2R_CMD_OPEN_INSTANCE_V6,
|
|
- &h2r_args);
|
|
+ return s5p_mfc_cmd_host2risc_v6(dev, S5P_FIMV_H2R_CMD_OPEN_INSTANCE_V6);
|
|
}
|
|
|
|
/* Close instance */
|
|
static int s5p_mfc_close_inst_cmd_v6(struct s5p_mfc_ctx *ctx)
|
|
{
|
|
struct s5p_mfc_dev *dev = ctx->dev;
|
|
- struct s5p_mfc_cmd_args h2r_args;
|
|
int ret = 0;
|
|
|
|
dev->curr_ctx = ctx->num;
|
|
if (ctx->state != MFCINST_FREE) {
|
|
mfc_write(dev, ctx->inst_no, S5P_FIMV_INSTANCE_ID_V6);
|
|
ret = s5p_mfc_cmd_host2risc_v6(dev,
|
|
- S5P_FIMV_H2R_CMD_CLOSE_INSTANCE_V6,
|
|
- &h2r_args);
|
|
+ S5P_FIMV_H2R_CMD_CLOSE_INSTANCE_V6);
|
|
} else {
|
|
ret = -EINVAL;
|
|
}
|
|
@@ -153,9 +138,15 @@ static int s5p_mfc_close_inst_cmd_v6(struct s5p_mfc_ctx *ctx)
|
|
return ret;
|
|
}
|
|
|
|
+static int s5p_mfc_cmd_host2risc_v6_args(struct s5p_mfc_dev *dev, int cmd,
|
|
+ const struct s5p_mfc_cmd_args *ignored)
|
|
+{
|
|
+ return s5p_mfc_cmd_host2risc_v6(dev, cmd);
|
|
+}
|
|
+
|
|
/* Initialize cmd function pointers for MFC v6 */
|
|
static const struct s5p_mfc_hw_cmds s5p_mfc_cmds_v6 = {
|
|
- .cmd_host2risc = s5p_mfc_cmd_host2risc_v6,
|
|
+ .cmd_host2risc = s5p_mfc_cmd_host2risc_v6_args,
|
|
.sys_init_cmd = s5p_mfc_sys_init_cmd_v6,
|
|
.sleep_cmd = s5p_mfc_sleep_cmd_v6,
|
|
.wakeup_cmd = s5p_mfc_wakeup_cmd_v6,
|