* [PATCH] drm: Use vsnprintf extension %ph
@ 2017-05-30 23:35 ` Joe Perches
0 siblings, 0 replies; 10+ messages in thread
From: Joe Perches @ 2017-05-30 23:35 UTC (permalink / raw)
To: Daniel Vetter, Jani Nikula, Sean Paul, David Airlie
Cc: dri-devel, linux-kernel
Using the extension saves a bit of code.
Miscellanea:
o Neaten and simplify dump_dp_payload_table
o Removed trailing blank space from output
$ size drivers/gpu/drm/drm_dp_mst_topology.o.* drivers/gpu/drm/tinydrm/*.o*
text data bss dec hex filename
25848 0 16 25864 6508 drivers/gpu/drm/drm_dp_mst_topology.o.new
26091 0 16 26107 65fb drivers/gpu/drm/drm_dp_mst_topology.o.old
3362 2 0 3364 d24 drivers/gpu/drm/tinydrm/mipi-dbi.o.new
3376 2 0 3378 d32 drivers/gpu/drm/tinydrm/mipi-dbi.o.old
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/gpu/drm/drm_dp_mst_topology.c | 51 +++++++++++------------------------
drivers/gpu/drm/tinydrm/mipi-dbi.c | 7 ++---
2 files changed, 18 insertions(+), 40 deletions(-)
diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c
index 222eb1a8549b..bfd237c15e76 100644
--- a/drivers/gpu/drm/drm_dp_mst_topology.c
+++ b/drivers/gpu/drm/drm_dp_mst_topology.c
@@ -2836,16 +2836,15 @@ static void drm_dp_mst_dump_mstb(struct seq_file *m,
static bool dump_dp_payload_table(struct drm_dp_mst_topology_mgr *mgr,
char *buf)
{
- int ret;
int i;
- for (i = 0; i < 4; i++) {
- ret = drm_dp_dpcd_read(mgr->aux, DP_PAYLOAD_TABLE_UPDATE_STATUS + (i * 16), &buf[i * 16], 16);
- if (ret != 16)
- break;
+
+ for (i = 0; i < 64; i += 16) {
+ if (drm_dp_dpcd_read(mgr->aux,
+ DP_PAYLOAD_TABLE_UPDATE_STATUS + i,
+ &buf[i], 16) != 16)
+ return false;
}
- if (i == 4)
- return true;
- return false;
+ return true;
}
static void fetch_monitor_name(struct drm_dp_mst_topology_mgr *mgr,
@@ -2909,42 +2908,24 @@ void drm_dp_mst_dump_topology(struct seq_file *m,
mutex_lock(&mgr->lock);
if (mgr->mst_primary) {
u8 buf[64];
- bool bret;
int ret;
+
ret = drm_dp_dpcd_read(mgr->aux, DP_DPCD_REV, buf, DP_RECEIVER_CAP_SIZE);
- seq_printf(m, "dpcd: ");
- for (i = 0; i < DP_RECEIVER_CAP_SIZE; i++)
- seq_printf(m, "%02x ", buf[i]);
- seq_printf(m, "\n");
+ seq_printf(m, "dpcd: %*ph\n", DP_RECEIVER_CAP_SIZE, buf);
ret = drm_dp_dpcd_read(mgr->aux, DP_FAUX_CAP, buf, 2);
- seq_printf(m, "faux/mst: ");
- for (i = 0; i < 2; i++)
- seq_printf(m, "%02x ", buf[i]);
- seq_printf(m, "\n");
+ seq_printf(m, "faux/mst: %*ph\n", 2, buf);
ret = drm_dp_dpcd_read(mgr->aux, DP_MSTM_CTRL, buf, 1);
- seq_printf(m, "mst ctrl: ");
- for (i = 0; i < 1; i++)
- seq_printf(m, "%02x ", buf[i]);
- seq_printf(m, "\n");
+ seq_printf(m, "mst ctrl: %*ph\n", 1, buf);
/* dump the standard OUI branch header */
ret = drm_dp_dpcd_read(mgr->aux, DP_BRANCH_OUI, buf, DP_BRANCH_OUI_HEADER_SIZE);
- seq_printf(m, "branch oui: ");
- for (i = 0; i < 0x3; i++)
- seq_printf(m, "%02x", buf[i]);
- seq_printf(m, " devid: ");
+ seq_printf(m, "branch oui: %*phN devid: ", 3, buf);
for (i = 0x3; i < 0x8 && buf[i]; i++)
seq_printf(m, "%c", buf[i]);
-
- seq_printf(m, " revision: hw: %x.%x sw: %x.%x", buf[0x9] >> 4, buf[0x9] & 0xf, buf[0xa], buf[0xb]);
- seq_printf(m, "\n");
- bret = dump_dp_payload_table(mgr, buf);
- if (bret == true) {
- seq_printf(m, "payload table: ");
- for (i = 0; i < 63; i++)
- seq_printf(m, "%02x ", buf[i]);
- seq_printf(m, "\n");
- }
+ seq_printf(m, " revision: hw: %x.%x sw: %x.%x\n",
+ buf[0x9] >> 4, buf[0x9] & 0xf, buf[0xa], buf[0xb]);
+ if (dump_dp_payload_table(mgr, buf))
+ seq_printf(m, "payload table: %*ph\n", 63, buf);
}
diff --git a/drivers/gpu/drm/tinydrm/mipi-dbi.c b/drivers/gpu/drm/tinydrm/mipi-dbi.c
index f4eb412f3604..c83eeb7a34b0 100644
--- a/drivers/gpu/drm/tinydrm/mipi-dbi.c
+++ b/drivers/gpu/drm/tinydrm/mipi-dbi.c
@@ -914,7 +914,7 @@ static int mipi_dbi_debugfs_command_show(struct seq_file *m, void *unused)
{
struct mipi_dbi *mipi = m->private;
u8 cmd, val[4];
- size_t len, i;
+ size_t len;
int ret;
for (cmd = 0; cmd < 255; cmd++) {
@@ -943,10 +943,7 @@ static int mipi_dbi_debugfs_command_show(struct seq_file *m, void *unused)
seq_puts(m, "XX\n");
continue;
}
-
- for (i = 0; i < len; i++)
- seq_printf(m, "%02x", val[i]);
- seq_puts(m, "\n");
+ seq_printf(m, "%*phN\n", (int)len, val);
}
return 0;
--
2.10.0.rc2.1.g053435c
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH] drm: Use vsnprintf extension %ph
@ 2017-05-30 23:35 ` Joe Perches
0 siblings, 0 replies; 10+ messages in thread
From: Joe Perches @ 2017-05-30 23:35 UTC (permalink / raw)
To: Daniel Vetter, Jani Nikula, Sean Paul, David Airlie
Cc: linux-kernel, dri-devel
Using the extension saves a bit of code.
Miscellanea:
o Neaten and simplify dump_dp_payload_table
o Removed trailing blank space from output
$ size drivers/gpu/drm/drm_dp_mst_topology.o.* drivers/gpu/drm/tinydrm/*.o*
text data bss dec hex filename
25848 0 16 25864 6508 drivers/gpu/drm/drm_dp_mst_topology.o.new
26091 0 16 26107 65fb drivers/gpu/drm/drm_dp_mst_topology.o.old
3362 2 0 3364 d24 drivers/gpu/drm/tinydrm/mipi-dbi.o.new
3376 2 0 3378 d32 drivers/gpu/drm/tinydrm/mipi-dbi.o.old
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/gpu/drm/drm_dp_mst_topology.c | 51 +++++++++++------------------------
drivers/gpu/drm/tinydrm/mipi-dbi.c | 7 ++---
2 files changed, 18 insertions(+), 40 deletions(-)
diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c
index 222eb1a8549b..bfd237c15e76 100644
--- a/drivers/gpu/drm/drm_dp_mst_topology.c
+++ b/drivers/gpu/drm/drm_dp_mst_topology.c
@@ -2836,16 +2836,15 @@ static void drm_dp_mst_dump_mstb(struct seq_file *m,
static bool dump_dp_payload_table(struct drm_dp_mst_topology_mgr *mgr,
char *buf)
{
- int ret;
int i;
- for (i = 0; i < 4; i++) {
- ret = drm_dp_dpcd_read(mgr->aux, DP_PAYLOAD_TABLE_UPDATE_STATUS + (i * 16), &buf[i * 16], 16);
- if (ret != 16)
- break;
+
+ for (i = 0; i < 64; i += 16) {
+ if (drm_dp_dpcd_read(mgr->aux,
+ DP_PAYLOAD_TABLE_UPDATE_STATUS + i,
+ &buf[i], 16) != 16)
+ return false;
}
- if (i == 4)
- return true;
- return false;
+ return true;
}
static void fetch_monitor_name(struct drm_dp_mst_topology_mgr *mgr,
@@ -2909,42 +2908,24 @@ void drm_dp_mst_dump_topology(struct seq_file *m,
mutex_lock(&mgr->lock);
if (mgr->mst_primary) {
u8 buf[64];
- bool bret;
int ret;
+
ret = drm_dp_dpcd_read(mgr->aux, DP_DPCD_REV, buf, DP_RECEIVER_CAP_SIZE);
- seq_printf(m, "dpcd: ");
- for (i = 0; i < DP_RECEIVER_CAP_SIZE; i++)
- seq_printf(m, "%02x ", buf[i]);
- seq_printf(m, "\n");
+ seq_printf(m, "dpcd: %*ph\n", DP_RECEIVER_CAP_SIZE, buf);
ret = drm_dp_dpcd_read(mgr->aux, DP_FAUX_CAP, buf, 2);
- seq_printf(m, "faux/mst: ");
- for (i = 0; i < 2; i++)
- seq_printf(m, "%02x ", buf[i]);
- seq_printf(m, "\n");
+ seq_printf(m, "faux/mst: %*ph\n", 2, buf);
ret = drm_dp_dpcd_read(mgr->aux, DP_MSTM_CTRL, buf, 1);
- seq_printf(m, "mst ctrl: ");
- for (i = 0; i < 1; i++)
- seq_printf(m, "%02x ", buf[i]);
- seq_printf(m, "\n");
+ seq_printf(m, "mst ctrl: %*ph\n", 1, buf);
/* dump the standard OUI branch header */
ret = drm_dp_dpcd_read(mgr->aux, DP_BRANCH_OUI, buf, DP_BRANCH_OUI_HEADER_SIZE);
- seq_printf(m, "branch oui: ");
- for (i = 0; i < 0x3; i++)
- seq_printf(m, "%02x", buf[i]);
- seq_printf(m, " devid: ");
+ seq_printf(m, "branch oui: %*phN devid: ", 3, buf);
for (i = 0x3; i < 0x8 && buf[i]; i++)
seq_printf(m, "%c", buf[i]);
-
- seq_printf(m, " revision: hw: %x.%x sw: %x.%x", buf[0x9] >> 4, buf[0x9] & 0xf, buf[0xa], buf[0xb]);
- seq_printf(m, "\n");
- bret = dump_dp_payload_table(mgr, buf);
- if (bret == true) {
- seq_printf(m, "payload table: ");
- for (i = 0; i < 63; i++)
- seq_printf(m, "%02x ", buf[i]);
- seq_printf(m, "\n");
- }
+ seq_printf(m, " revision: hw: %x.%x sw: %x.%x\n",
+ buf[0x9] >> 4, buf[0x9] & 0xf, buf[0xa], buf[0xb]);
+ if (dump_dp_payload_table(mgr, buf))
+ seq_printf(m, "payload table: %*ph\n", 63, buf);
}
diff --git a/drivers/gpu/drm/tinydrm/mipi-dbi.c b/drivers/gpu/drm/tinydrm/mipi-dbi.c
index f4eb412f3604..c83eeb7a34b0 100644
--- a/drivers/gpu/drm/tinydrm/mipi-dbi.c
+++ b/drivers/gpu/drm/tinydrm/mipi-dbi.c
@@ -914,7 +914,7 @@ static int mipi_dbi_debugfs_command_show(struct seq_file *m, void *unused)
{
struct mipi_dbi *mipi = m->private;
u8 cmd, val[4];
- size_t len, i;
+ size_t len;
int ret;
for (cmd = 0; cmd < 255; cmd++) {
@@ -943,10 +943,7 @@ static int mipi_dbi_debugfs_command_show(struct seq_file *m, void *unused)
seq_puts(m, "XX\n");
continue;
}
-
- for (i = 0; i < len; i++)
- seq_printf(m, "%02x", val[i]);
- seq_puts(m, "\n");
+ seq_printf(m, "%*phN\n", (int)len, val);
}
return 0;
--
2.10.0.rc2.1.g053435c
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH] drm: Use vsnprintf extension %ph
2017-05-30 23:35 ` Joe Perches
@ 2017-05-31 8:31 ` Daniel Vetter
-1 siblings, 0 replies; 10+ messages in thread
From: Daniel Vetter @ 2017-05-31 8:31 UTC (permalink / raw)
To: Joe Perches
Cc: Daniel Vetter, Jani Nikula, Sean Paul, David Airlie,
linux-kernel, dri-devel
On Tue, May 30, 2017 at 04:35:37PM -0700, Joe Perches wrote:
> Using the extension saves a bit of code.
>
> Miscellanea:
>
> o Neaten and simplify dump_dp_payload_table
> o Removed trailing blank space from output
Not a huge fan of smashing random trivia into the same patch, but merged
anyway. %ph is rather neat, TIL.
Thanks, Daniel
>
> $ size drivers/gpu/drm/drm_dp_mst_topology.o.* drivers/gpu/drm/tinydrm/*.o*
> text data bss dec hex filename
> 25848 0 16 25864 6508 drivers/gpu/drm/drm_dp_mst_topology.o.new
> 26091 0 16 26107 65fb drivers/gpu/drm/drm_dp_mst_topology.o.old
> 3362 2 0 3364 d24 drivers/gpu/drm/tinydrm/mipi-dbi.o.new
> 3376 2 0 3378 d32 drivers/gpu/drm/tinydrm/mipi-dbi.o.old
>
> Signed-off-by: Joe Perches <joe@perches.com>
> ---
> drivers/gpu/drm/drm_dp_mst_topology.c | 51 +++++++++++------------------------
> drivers/gpu/drm/tinydrm/mipi-dbi.c | 7 ++---
> 2 files changed, 18 insertions(+), 40 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c
> index 222eb1a8549b..bfd237c15e76 100644
> --- a/drivers/gpu/drm/drm_dp_mst_topology.c
> +++ b/drivers/gpu/drm/drm_dp_mst_topology.c
> @@ -2836,16 +2836,15 @@ static void drm_dp_mst_dump_mstb(struct seq_file *m,
> static bool dump_dp_payload_table(struct drm_dp_mst_topology_mgr *mgr,
> char *buf)
> {
> - int ret;
> int i;
> - for (i = 0; i < 4; i++) {
> - ret = drm_dp_dpcd_read(mgr->aux, DP_PAYLOAD_TABLE_UPDATE_STATUS + (i * 16), &buf[i * 16], 16);
> - if (ret != 16)
> - break;
> +
> + for (i = 0; i < 64; i += 16) {
> + if (drm_dp_dpcd_read(mgr->aux,
> + DP_PAYLOAD_TABLE_UPDATE_STATUS + i,
> + &buf[i], 16) != 16)
> + return false;
> }
> - if (i == 4)
> - return true;
> - return false;
> + return true;
> }
>
> static void fetch_monitor_name(struct drm_dp_mst_topology_mgr *mgr,
> @@ -2909,42 +2908,24 @@ void drm_dp_mst_dump_topology(struct seq_file *m,
> mutex_lock(&mgr->lock);
> if (mgr->mst_primary) {
> u8 buf[64];
> - bool bret;
> int ret;
> +
> ret = drm_dp_dpcd_read(mgr->aux, DP_DPCD_REV, buf, DP_RECEIVER_CAP_SIZE);
> - seq_printf(m, "dpcd: ");
> - for (i = 0; i < DP_RECEIVER_CAP_SIZE; i++)
> - seq_printf(m, "%02x ", buf[i]);
> - seq_printf(m, "\n");
> + seq_printf(m, "dpcd: %*ph\n", DP_RECEIVER_CAP_SIZE, buf);
> ret = drm_dp_dpcd_read(mgr->aux, DP_FAUX_CAP, buf, 2);
> - seq_printf(m, "faux/mst: ");
> - for (i = 0; i < 2; i++)
> - seq_printf(m, "%02x ", buf[i]);
> - seq_printf(m, "\n");
> + seq_printf(m, "faux/mst: %*ph\n", 2, buf);
> ret = drm_dp_dpcd_read(mgr->aux, DP_MSTM_CTRL, buf, 1);
> - seq_printf(m, "mst ctrl: ");
> - for (i = 0; i < 1; i++)
> - seq_printf(m, "%02x ", buf[i]);
> - seq_printf(m, "\n");
> + seq_printf(m, "mst ctrl: %*ph\n", 1, buf);
>
> /* dump the standard OUI branch header */
> ret = drm_dp_dpcd_read(mgr->aux, DP_BRANCH_OUI, buf, DP_BRANCH_OUI_HEADER_SIZE);
> - seq_printf(m, "branch oui: ");
> - for (i = 0; i < 0x3; i++)
> - seq_printf(m, "%02x", buf[i]);
> - seq_printf(m, " devid: ");
> + seq_printf(m, "branch oui: %*phN devid: ", 3, buf);
> for (i = 0x3; i < 0x8 && buf[i]; i++)
> seq_printf(m, "%c", buf[i]);
> -
> - seq_printf(m, " revision: hw: %x.%x sw: %x.%x", buf[0x9] >> 4, buf[0x9] & 0xf, buf[0xa], buf[0xb]);
> - seq_printf(m, "\n");
> - bret = dump_dp_payload_table(mgr, buf);
> - if (bret == true) {
> - seq_printf(m, "payload table: ");
> - for (i = 0; i < 63; i++)
> - seq_printf(m, "%02x ", buf[i]);
> - seq_printf(m, "\n");
> - }
> + seq_printf(m, " revision: hw: %x.%x sw: %x.%x\n",
> + buf[0x9] >> 4, buf[0x9] & 0xf, buf[0xa], buf[0xb]);
> + if (dump_dp_payload_table(mgr, buf))
> + seq_printf(m, "payload table: %*ph\n", 63, buf);
>
> }
>
> diff --git a/drivers/gpu/drm/tinydrm/mipi-dbi.c b/drivers/gpu/drm/tinydrm/mipi-dbi.c
> index f4eb412f3604..c83eeb7a34b0 100644
> --- a/drivers/gpu/drm/tinydrm/mipi-dbi.c
> +++ b/drivers/gpu/drm/tinydrm/mipi-dbi.c
> @@ -914,7 +914,7 @@ static int mipi_dbi_debugfs_command_show(struct seq_file *m, void *unused)
> {
> struct mipi_dbi *mipi = m->private;
> u8 cmd, val[4];
> - size_t len, i;
> + size_t len;
> int ret;
>
> for (cmd = 0; cmd < 255; cmd++) {
> @@ -943,10 +943,7 @@ static int mipi_dbi_debugfs_command_show(struct seq_file *m, void *unused)
> seq_puts(m, "XX\n");
> continue;
> }
> -
> - for (i = 0; i < len; i++)
> - seq_printf(m, "%02x", val[i]);
> - seq_puts(m, "\n");
> + seq_printf(m, "%*phN\n", (int)len, val);
> }
>
> return 0;
> --
> 2.10.0.rc2.1.g053435c
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm: Use vsnprintf extension %ph
@ 2017-05-31 8:31 ` Daniel Vetter
0 siblings, 0 replies; 10+ messages in thread
From: Daniel Vetter @ 2017-05-31 8:31 UTC (permalink / raw)
To: Joe Perches; +Cc: linux-kernel, dri-devel, Daniel Vetter
On Tue, May 30, 2017 at 04:35:37PM -0700, Joe Perches wrote:
> Using the extension saves a bit of code.
>
> Miscellanea:
>
> o Neaten and simplify dump_dp_payload_table
> o Removed trailing blank space from output
Not a huge fan of smashing random trivia into the same patch, but merged
anyway. %ph is rather neat, TIL.
Thanks, Daniel
>
> $ size drivers/gpu/drm/drm_dp_mst_topology.o.* drivers/gpu/drm/tinydrm/*.o*
> text data bss dec hex filename
> 25848 0 16 25864 6508 drivers/gpu/drm/drm_dp_mst_topology.o.new
> 26091 0 16 26107 65fb drivers/gpu/drm/drm_dp_mst_topology.o.old
> 3362 2 0 3364 d24 drivers/gpu/drm/tinydrm/mipi-dbi.o.new
> 3376 2 0 3378 d32 drivers/gpu/drm/tinydrm/mipi-dbi.o.old
>
> Signed-off-by: Joe Perches <joe@perches.com>
> ---
> drivers/gpu/drm/drm_dp_mst_topology.c | 51 +++++++++++------------------------
> drivers/gpu/drm/tinydrm/mipi-dbi.c | 7 ++---
> 2 files changed, 18 insertions(+), 40 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c
> index 222eb1a8549b..bfd237c15e76 100644
> --- a/drivers/gpu/drm/drm_dp_mst_topology.c
> +++ b/drivers/gpu/drm/drm_dp_mst_topology.c
> @@ -2836,16 +2836,15 @@ static void drm_dp_mst_dump_mstb(struct seq_file *m,
> static bool dump_dp_payload_table(struct drm_dp_mst_topology_mgr *mgr,
> char *buf)
> {
> - int ret;
> int i;
> - for (i = 0; i < 4; i++) {
> - ret = drm_dp_dpcd_read(mgr->aux, DP_PAYLOAD_TABLE_UPDATE_STATUS + (i * 16), &buf[i * 16], 16);
> - if (ret != 16)
> - break;
> +
> + for (i = 0; i < 64; i += 16) {
> + if (drm_dp_dpcd_read(mgr->aux,
> + DP_PAYLOAD_TABLE_UPDATE_STATUS + i,
> + &buf[i], 16) != 16)
> + return false;
> }
> - if (i == 4)
> - return true;
> - return false;
> + return true;
> }
>
> static void fetch_monitor_name(struct drm_dp_mst_topology_mgr *mgr,
> @@ -2909,42 +2908,24 @@ void drm_dp_mst_dump_topology(struct seq_file *m,
> mutex_lock(&mgr->lock);
> if (mgr->mst_primary) {
> u8 buf[64];
> - bool bret;
> int ret;
> +
> ret = drm_dp_dpcd_read(mgr->aux, DP_DPCD_REV, buf, DP_RECEIVER_CAP_SIZE);
> - seq_printf(m, "dpcd: ");
> - for (i = 0; i < DP_RECEIVER_CAP_SIZE; i++)
> - seq_printf(m, "%02x ", buf[i]);
> - seq_printf(m, "\n");
> + seq_printf(m, "dpcd: %*ph\n", DP_RECEIVER_CAP_SIZE, buf);
> ret = drm_dp_dpcd_read(mgr->aux, DP_FAUX_CAP, buf, 2);
> - seq_printf(m, "faux/mst: ");
> - for (i = 0; i < 2; i++)
> - seq_printf(m, "%02x ", buf[i]);
> - seq_printf(m, "\n");
> + seq_printf(m, "faux/mst: %*ph\n", 2, buf);
> ret = drm_dp_dpcd_read(mgr->aux, DP_MSTM_CTRL, buf, 1);
> - seq_printf(m, "mst ctrl: ");
> - for (i = 0; i < 1; i++)
> - seq_printf(m, "%02x ", buf[i]);
> - seq_printf(m, "\n");
> + seq_printf(m, "mst ctrl: %*ph\n", 1, buf);
>
> /* dump the standard OUI branch header */
> ret = drm_dp_dpcd_read(mgr->aux, DP_BRANCH_OUI, buf, DP_BRANCH_OUI_HEADER_SIZE);
> - seq_printf(m, "branch oui: ");
> - for (i = 0; i < 0x3; i++)
> - seq_printf(m, "%02x", buf[i]);
> - seq_printf(m, " devid: ");
> + seq_printf(m, "branch oui: %*phN devid: ", 3, buf);
> for (i = 0x3; i < 0x8 && buf[i]; i++)
> seq_printf(m, "%c", buf[i]);
> -
> - seq_printf(m, " revision: hw: %x.%x sw: %x.%x", buf[0x9] >> 4, buf[0x9] & 0xf, buf[0xa], buf[0xb]);
> - seq_printf(m, "\n");
> - bret = dump_dp_payload_table(mgr, buf);
> - if (bret == true) {
> - seq_printf(m, "payload table: ");
> - for (i = 0; i < 63; i++)
> - seq_printf(m, "%02x ", buf[i]);
> - seq_printf(m, "\n");
> - }
> + seq_printf(m, " revision: hw: %x.%x sw: %x.%x\n",
> + buf[0x9] >> 4, buf[0x9] & 0xf, buf[0xa], buf[0xb]);
> + if (dump_dp_payload_table(mgr, buf))
> + seq_printf(m, "payload table: %*ph\n", 63, buf);
>
> }
>
> diff --git a/drivers/gpu/drm/tinydrm/mipi-dbi.c b/drivers/gpu/drm/tinydrm/mipi-dbi.c
> index f4eb412f3604..c83eeb7a34b0 100644
> --- a/drivers/gpu/drm/tinydrm/mipi-dbi.c
> +++ b/drivers/gpu/drm/tinydrm/mipi-dbi.c
> @@ -914,7 +914,7 @@ static int mipi_dbi_debugfs_command_show(struct seq_file *m, void *unused)
> {
> struct mipi_dbi *mipi = m->private;
> u8 cmd, val[4];
> - size_t len, i;
> + size_t len;
> int ret;
>
> for (cmd = 0; cmd < 255; cmd++) {
> @@ -943,10 +943,7 @@ static int mipi_dbi_debugfs_command_show(struct seq_file *m, void *unused)
> seq_puts(m, "XX\n");
> continue;
> }
> -
> - for (i = 0; i < len; i++)
> - seq_printf(m, "%02x", val[i]);
> - seq_puts(m, "\n");
> + seq_printf(m, "%*phN\n", (int)len, val);
> }
>
> return 0;
> --
> 2.10.0.rc2.1.g053435c
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm: Use vsnprintf extension %ph
2017-05-30 23:35 ` Joe Perches
@ 2017-06-10 16:12 ` Andy Shevchenko
-1 siblings, 0 replies; 10+ messages in thread
From: Andy Shevchenko @ 2017-06-10 16:12 UTC (permalink / raw)
To: Joe Perches
Cc: Daniel Vetter, Jani Nikula, Sean Paul, David Airlie, dri-devel,
linux-kernel
On Wed, May 31, 2017 at 2:35 AM, Joe Perches <joe@perches.com> wrote:
> Using the extension saves a bit of code.
> + seq_printf(m, "faux/mst: %*ph\n", 2, buf);
> + seq_printf(m, "mst ctrl: %*ph\n", 1, buf);
> + seq_printf(m, "branch oui: %*phN devid: ", 3, buf);
All above may use shorter form, i.e.
"..., "%Xph", buf);", where X is a constant written explicitly inplace.
> + seq_printf(m, " revision: hw: %x.%x sw: %x.%x\n",
> + buf[0x9] >> 4, buf[0x9] & 0xf, buf[0xa], buf[0xb]);
Matter of taste, though buf[9], buf[10], buf[11] looks better to me :-)
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm: Use vsnprintf extension %ph
@ 2017-06-10 16:12 ` Andy Shevchenko
0 siblings, 0 replies; 10+ messages in thread
From: Andy Shevchenko @ 2017-06-10 16:12 UTC (permalink / raw)
To: Joe Perches; +Cc: linux-kernel, dri-devel, Daniel Vetter
On Wed, May 31, 2017 at 2:35 AM, Joe Perches <joe@perches.com> wrote:
> Using the extension saves a bit of code.
> + seq_printf(m, "faux/mst: %*ph\n", 2, buf);
> + seq_printf(m, "mst ctrl: %*ph\n", 1, buf);
> + seq_printf(m, "branch oui: %*phN devid: ", 3, buf);
All above may use shorter form, i.e.
"..., "%Xph", buf);", where X is a constant written explicitly inplace.
> + seq_printf(m, " revision: hw: %x.%x sw: %x.%x\n",
> + buf[0x9] >> 4, buf[0x9] & 0xf, buf[0xa], buf[0xb]);
Matter of taste, though buf[9], buf[10], buf[11] looks better to me :-)
--
With Best Regards,
Andy Shevchenko
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm: Use vsnprintf extension %ph
2017-06-10 16:12 ` Andy Shevchenko
@ 2017-06-11 0:20 ` Joe Perches
-1 siblings, 0 replies; 10+ messages in thread
From: Joe Perches @ 2017-06-11 0:20 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Daniel Vetter, Jani Nikula, Sean Paul, David Airlie, dri-devel,
linux-kernel
On Sat, 2017-06-10 at 19:12 +0300, Andy Shevchenko wrote:
> On Wed, May 31, 2017 at 2:35 AM, Joe Perches <joe@perches.com> wrote:
> > Using the extension saves a bit of code.
> > + seq_printf(m, "faux/mst: %*ph\n", 2, buf);
> > + seq_printf(m, "mst ctrl: %*ph\n", 1, buf);
> > + seq_printf(m, "branch oui: %*phN devid: ", 3, buf);
>
> All above may use shorter form, i.e.
> "..., "%Xph", buf);", where X is a constant written explicitly inplace.
I know. Consistency is better though.
Note the use of DP_RECEIVER_CAP_SIZE, etc...
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm: Use vsnprintf extension %ph
@ 2017-06-11 0:20 ` Joe Perches
0 siblings, 0 replies; 10+ messages in thread
From: Joe Perches @ 2017-06-11 0:20 UTC (permalink / raw)
To: Andy Shevchenko; +Cc: linux-kernel, dri-devel, Daniel Vetter
On Sat, 2017-06-10 at 19:12 +0300, Andy Shevchenko wrote:
> On Wed, May 31, 2017 at 2:35 AM, Joe Perches <joe@perches.com> wrote:
> > Using the extension saves a bit of code.
> > + seq_printf(m, "faux/mst: %*ph\n", 2, buf);
> > + seq_printf(m, "mst ctrl: %*ph\n", 1, buf);
> > + seq_printf(m, "branch oui: %*phN devid: ", 3, buf);
>
> All above may use shorter form, i.e.
> "..., "%Xph", buf);", where X is a constant written explicitly inplace.
I know. Consistency is better though.
Note the use of DP_RECEIVER_CAP_SIZE, etc...
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm: Use vsnprintf extension %ph
2017-06-11 0:20 ` Joe Perches
@ 2017-06-11 13:52 ` Andy Shevchenko
-1 siblings, 0 replies; 10+ messages in thread
From: Andy Shevchenko @ 2017-06-11 13:52 UTC (permalink / raw)
To: Joe Perches
Cc: Daniel Vetter, Jani Nikula, Sean Paul, David Airlie, dri-devel,
linux-kernel
On Sun, Jun 11, 2017 at 3:20 AM, Joe Perches <joe@perches.com> wrote:
> On Sat, 2017-06-10 at 19:12 +0300, Andy Shevchenko wrote:
>> On Wed, May 31, 2017 at 2:35 AM, Joe Perches <joe@perches.com> wrote:
>> > Using the extension saves a bit of code.
>> > + seq_printf(m, "faux/mst: %*ph\n", 2, buf);
>> > + seq_printf(m, "mst ctrl: %*ph\n", 1, buf);
>> > + seq_printf(m, "branch oui: %*phN devid: ", 3, buf);
>>
>> All above may use shorter form, i.e.
>> "..., "%Xph", buf);", where X is a constant written explicitly inplace.
>
> I know. Consistency is better though.
> Note the use of DP_RECEIVER_CAP_SIZE, etc...
Fair enough.
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm: Use vsnprintf extension %ph
@ 2017-06-11 13:52 ` Andy Shevchenko
0 siblings, 0 replies; 10+ messages in thread
From: Andy Shevchenko @ 2017-06-11 13:52 UTC (permalink / raw)
To: Joe Perches; +Cc: linux-kernel, dri-devel, Daniel Vetter
On Sun, Jun 11, 2017 at 3:20 AM, Joe Perches <joe@perches.com> wrote:
> On Sat, 2017-06-10 at 19:12 +0300, Andy Shevchenko wrote:
>> On Wed, May 31, 2017 at 2:35 AM, Joe Perches <joe@perches.com> wrote:
>> > Using the extension saves a bit of code.
>> > + seq_printf(m, "faux/mst: %*ph\n", 2, buf);
>> > + seq_printf(m, "mst ctrl: %*ph\n", 1, buf);
>> > + seq_printf(m, "branch oui: %*phN devid: ", 3, buf);
>>
>> All above may use shorter form, i.e.
>> "..., "%Xph", buf);", where X is a constant written explicitly inplace.
>
> I know. Consistency is better though.
> Note the use of DP_RECEIVER_CAP_SIZE, etc...
Fair enough.
--
With Best Regards,
Andy Shevchenko
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2017-06-11 13:52 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-30 23:35 [PATCH] drm: Use vsnprintf extension %ph Joe Perches
2017-05-30 23:35 ` Joe Perches
2017-05-31 8:31 ` Daniel Vetter
2017-05-31 8:31 ` Daniel Vetter
2017-06-10 16:12 ` Andy Shevchenko
2017-06-10 16:12 ` Andy Shevchenko
2017-06-11 0:20 ` Joe Perches
2017-06-11 0:20 ` Joe Perches
2017-06-11 13:52 ` Andy Shevchenko
2017-06-11 13:52 ` Andy Shevchenko
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.