[PATCH] cmd/misc: Stop using a function pointer

Currently, enabling CMD_MISC gives: cmd/misc.c:67:25: warning: assignment to 'int (*)(struct udevice *, int, void *, int)' from incompatible pointer type 'int (*)(struct udevice *, int, const void *, int)' [-Wincompatible-pointer-types]
Because 'misc_read' takes a void * and 'misc_write' takes a const void *, both of which make sense for their operation. Given there's one place we make use of the function pointer, just call read or write directly for the operation we're called with.
Cc: Bin Meng bmeng.cn@gmail.com Signed-off-by: Tom Rini trini@konsulko.com --- cmd/misc.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/cmd/misc.c b/cmd/misc.c index bcd8d960ee06..ec32b41ed1e9 100644 --- a/cmd/misc.c +++ b/cmd/misc.c @@ -44,7 +44,6 @@ static int do_misc_list(struct cmd_tbl *cmdtp, int flag, static int do_misc_op(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[], enum misc_op op) { - int (*misc_op)(struct udevice *, int, void *, int); struct udevice *dev; int offset; void *buf; @@ -62,11 +61,10 @@ static int do_misc_op(struct cmd_tbl *cmdtp, int flag, size = hextoul(argv[3], NULL);
if (op == MISC_OP_READ) - misc_op = misc_read; + ret = misc_read(dev, offset, buf, size); else - misc_op = misc_write; + ret = misc_write(dev, offset, buf, size);
- ret = misc_op(dev, offset, buf, size); if (ret < 0) { if (ret == -ENOSYS) { printf("The device does not support %s\n",

On Thu, Jun 23, 2022 at 4:10 AM Tom Rini trini@konsulko.com wrote:
Currently, enabling CMD_MISC gives: cmd/misc.c:67:25: warning: assignment to 'int (*)(struct udevice *, int, void *, int)' from incompatible pointer type 'int (*)(struct udevice *, int, const void *, int)' [-Wincompatible-pointer-types]
Because 'misc_read' takes a void * and 'misc_write' takes a const void *, both of which make sense for their operation. Given there's one place we make use of the function pointer, just call read or write directly for the operation we're called with.
Cc: Bin Meng bmeng.cn@gmail.com Signed-off-by: Tom Rini trini@konsulko.com
cmd/misc.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
Reviewed-by: Bin Meng bmeng.cn@gmail.com

On 6/22/22 4:10 PM, Tom Rini wrote:
Currently, enabling CMD_MISC gives: cmd/misc.c:67:25: warning: assignment to 'int (*)(struct udevice *, int, void *, int)' from incompatible pointer type 'int (*)(struct udevice *, int, const void *, int)' [-Wincompatible-pointer-types]
Because 'misc_read' takes a void * and 'misc_write' takes a const void *, both of which make sense for their operation. Given there's one place we make use of the function pointer, just call read or write directly for the operation we're called with.
Cc: Bin Meng bmeng.cn@gmail.com Signed-off-by: Tom Rini trini@konsulko.com
cmd/misc.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/cmd/misc.c b/cmd/misc.c index bcd8d960ee06..ec32b41ed1e9 100644 --- a/cmd/misc.c +++ b/cmd/misc.c @@ -44,7 +44,6 @@ static int do_misc_list(struct cmd_tbl *cmdtp, int flag, static int do_misc_op(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[], enum misc_op op) {
- int (*misc_op)(struct udevice *, int, void *, int); struct udevice *dev; int offset; void *buf;
@@ -62,11 +61,10 @@ static int do_misc_op(struct cmd_tbl *cmdtp, int flag, size = hextoul(argv[3], NULL);
if (op == MISC_OP_READ)
misc_op = misc_read;
elseret = misc_read(dev, offset, buf, size);
misc_op = misc_write;
ret = misc_write(dev, offset, buf, size);
- ret = misc_op(dev, offset, buf, size); if (ret < 0) { if (ret == -ENOSYS) { printf("The device does not support %s\n",
Reviewed-by: Sean Anderson seanga2@gmail.com

On Wed, Jun 22, 2022 at 04:10:18PM -0400, Tom Rini wrote:
Currently, enabling CMD_MISC gives: cmd/misc.c:67:25: warning: assignment to 'int (*)(struct udevice *, int, void *, int)' from incompatible pointer type 'int (*)(struct udevice *, int, const void *, int)' [-Wincompatible-pointer-types]
Because 'misc_read' takes a void * and 'misc_write' takes a const void *, both of which make sense for their operation. Given there's one place we make use of the function pointer, just call read or write directly for the operation we're called with.
Reviewed-by: Bin Meng bmeng.cn@gmail.com Reviewed-by: Sean Anderson seanga2@gmail.com Signed-off-by: Tom Rini trini@konsulko.com
Applied to u-boot/next, thanks!
participants (3)
-
Bin Meng
-
Sean Anderson
-
Tom Rini