Re: [PATCH v1] HID: i2c-hid: use print_hex_dump_debug to print report descriptor

From: Jiri Kosina
Date: Mon Aug 14 2023 - 05:28:07 EST


On Mon, 3 Jul 2023, Riwen Lu wrote:

> From: Riwen Lu <luriwen@xxxxxxxxxx>
>
> The format '%*ph' print up to 64 bytes long as a hex string with ' '
> sepatator. Usually the size of report descriptor is larger than 64
> bytes, so consider using print_hex_dump_debug to print out all of it for
> better debugging.
>
> Signed-off-by: Riwen Lu <luriwen@xxxxxxxxxx>
> ---
> drivers/hid/i2c-hid/i2c-hid-core.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/hid/i2c-hid/i2c-hid-core.c b/drivers/hid/i2c-hid/i2c-hid-core.c
> index efbba0465eef..8e97fc01c852 100644
> --- a/drivers/hid/i2c-hid/i2c-hid-core.c
> +++ b/drivers/hid/i2c-hid/i2c-hid-core.c
> @@ -772,7 +772,9 @@ static int i2c_hid_parse(struct hid_device *hid)
> }
> }
>
> - i2c_hid_dbg(ihid, "Report Descriptor: %*ph\n", rsize, rdesc);
> + i2c_hid_dbg(ihid, "Report Descriptor\n");
> + print_hex_dump_debug(" ", DUMP_PREFIX_OFFSET, 16, 1,
> + rdesc, rsize, false);

But that would dump it unconditionally, while i2c_hid_dbg() is
conditional.

--
Jiri Kosina
SUSE Labs