amdgpu: securedisplay: simplify i2c hexdump output

Message ID 20210324133705.2664873-1-arnd@kernel.org
State New
Headers show
Series
  • amdgpu: securedisplay: simplify i2c hexdump output
Related show

Commit Message

Arnd Bergmann March 24, 2021, 1:36 p.m.
From: Arnd Bergmann <arnd@arndb.de>


A previous fix I did left a rather complicated loop in
amdgpu_securedisplay_debugfs_write() for what could be expressed in a
simple sprintf, as Rasmus pointed out.

This drops the leading 0x for each byte, but is otherwise
much nicer.

Suggested-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

---
 drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

-- 
2.29.2

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Comments

Alex Deucher March 25, 2021, 5:01 p.m. | #1
Applied.  Thanks!

Alex

On Wed, Mar 24, 2021 at 9:37 AM Arnd Bergmann <arnd@kernel.org> wrote:
>

> From: Arnd Bergmann <arnd@arndb.de>

>

> A previous fix I did left a rather complicated loop in

> amdgpu_securedisplay_debugfs_write() for what could be expressed in a

> simple sprintf, as Rasmus pointed out.

>

> This drops the leading 0x for each byte, but is otherwise

> much nicer.

>

> Suggested-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>

> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

> ---

>  drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c | 11 +++--------

>  1 file changed, 3 insertions(+), 8 deletions(-)

>

> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c

> index 69d7f6bff5d4..fc3ddd7aa6f0 100644

> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c

> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c

> @@ -92,9 +92,7 @@ static ssize_t amdgpu_securedisplay_debugfs_write(struct file *f, const char __u

>         struct drm_device *dev = adev_to_drm(adev);

>         uint32_t phy_id;

>         uint32_t op;

> -       int i;

>         char str[64];

> -       char i2c_output[256];

>         int ret;

>

>         if (*pos || size > sizeof(str) - 1)

> @@ -136,12 +134,9 @@ static ssize_t amdgpu_securedisplay_debugfs_write(struct file *f, const char __u

>                 ret = psp_securedisplay_invoke(psp, TA_SECUREDISPLAY_COMMAND__SEND_ROI_CRC);

>                 if (!ret) {

>                         if (securedisplay_cmd->status == TA_SECUREDISPLAY_STATUS__SUCCESS) {

> -                               int pos = 0;

> -                               memset(i2c_output,  0, sizeof(i2c_output));

> -                               for (i = 0; i < TA_SECUREDISPLAY_I2C_BUFFER_SIZE; i++)

> -                                       pos += sprintf(i2c_output + pos, " 0x%X",

> -                                               securedisplay_cmd->securedisplay_out_message.send_roi_crc.i2c_buf[i]);

> -                               dev_info(adev->dev, "SECUREDISPLAY: I2C buffer out put is :%s\n", i2c_output);

> +                               dev_info(adev->dev, "SECUREDISPLAY: I2C buffer out put is: %*ph\n",

> +                                        TA_SECUREDISPLAY_I2C_BUFFER_SIZE,

> +                                        securedisplay_cmd->securedisplay_out_message.send_roi_crc.i2c_buf);

>                         } else {

>                                 psp_securedisplay_parse_resp_status(psp, securedisplay_cmd->status);

>                         }

> --

> 2.29.2

>

> _______________________________________________

> amd-gfx mailing list

> amd-gfx@lists.freedesktop.org

> https://lists.freedesktop.org/mailman/listinfo/amd-gfx

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Patch

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c
index 69d7f6bff5d4..fc3ddd7aa6f0 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.c
@@ -92,9 +92,7 @@  static ssize_t amdgpu_securedisplay_debugfs_write(struct file *f, const char __u
 	struct drm_device *dev = adev_to_drm(adev);
 	uint32_t phy_id;
 	uint32_t op;
-	int i;
 	char str[64];
-	char i2c_output[256];
 	int ret;
 
 	if (*pos || size > sizeof(str) - 1)
@@ -136,12 +134,9 @@  static ssize_t amdgpu_securedisplay_debugfs_write(struct file *f, const char __u
 		ret = psp_securedisplay_invoke(psp, TA_SECUREDISPLAY_COMMAND__SEND_ROI_CRC);
 		if (!ret) {
 			if (securedisplay_cmd->status == TA_SECUREDISPLAY_STATUS__SUCCESS) {
-				int pos = 0;
-				memset(i2c_output,  0, sizeof(i2c_output));
-				for (i = 0; i < TA_SECUREDISPLAY_I2C_BUFFER_SIZE; i++)
-					pos += sprintf(i2c_output + pos, " 0x%X",
-						securedisplay_cmd->securedisplay_out_message.send_roi_crc.i2c_buf[i]);
-				dev_info(adev->dev, "SECUREDISPLAY: I2C buffer out put is :%s\n", i2c_output);
+				dev_info(adev->dev, "SECUREDISPLAY: I2C buffer out put is: %*ph\n",
+					 TA_SECUREDISPLAY_I2C_BUFFER_SIZE,
+					 securedisplay_cmd->securedisplay_out_message.send_roi_crc.i2c_buf);
 			} else {
 				psp_securedisplay_parse_resp_status(psp, securedisplay_cmd->status);
 			}