On Fri, Mar 04, 2022 at 09:34:14PM +0200, Andy Shevchenko wrote: > In the fbtft_init_display() the init sequence is printed for > the debug purposes. Unfortunately the current code doesn't take > into account that values in the buffer are of the s16 type. > > Consider that and replace the printing code with fbtft_par_dbg_hex() > call. > > Fixes: b888897014a9 ("staging/fbtft: Remove all strcpy() uses") > Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > --- > drivers/staging/fbtft/fbtft-core.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/drivers/staging/fbtft/fbtft-core.c b/drivers/staging/fbtft/fbtft-core.c > index 4a35347b3020..b28a059ad3b4 100644 > --- a/drivers/staging/fbtft/fbtft-core.c > +++ b/drivers/staging/fbtft/fbtft-core.c > @@ -1035,10 +1035,9 @@ int fbtft_init_display(struct fbtft_par *par) > for (j = 0; par->init_sequence[i + 1 + j] >= 0; j++) > ; > > - fbtft_par_dbg(DEBUG_INIT_DISPLAY, par, > - "init: write(0x%02X) %*ph\n", > - par->init_sequence[i], j, > - &par->init_sequence[i + 1]); > + fbtft_par_dbg_hex(DEBUG_INIT_DISPLAY, par, par->info->device, > + s16, &par->init_sequence[i + 1], j, > + "init: write(0x%02X)", par->init_sequence[i]); > > /* Write */ > j = 0; > -- > 2.34.1 > > Any reason you didn't test build this? drivers/staging/fbtft/fbtft-core.c: In function ‘fbtft_init_display’: drivers/staging/fbtft/fbtft-core.c:1038:48: error: passing argument 3 of ‘fbtft_dbg_hex’ discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers] 1038 | s16, &par->init_sequence[i + 1], j, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/staging/fbtft/fbtft.h:441:50: note: in definition of macro ‘fbtft_par_dbg_hex’ 441 | fbtft_dbg_hex(dev, sizeof(type), buf,\ | ^~~ drivers/staging/fbtft/fbtft-core.c:52:26: note: expected ‘void *’ but argument is of type ‘const s16 *’ {aka ‘const short int *’} 52 | void *buf, size_t len, const char *fmt, ...) | ~~~~~~^~~ LD [M] drivers/staging/gdm724x/gdmulte.o cc1: all warnings being treated as errors