From f1d595ed146d58388981842d5d458e1078481d20 Mon Sep 17 00:00:00 2001 From: Bo Yang Date: Mon, 4 Jun 2018 15:20:02 +0800 Subject: [PATCH] efuse: use sprintf instead of printk in show functions PD#134355: use sprintf instead of printk in show functions Change-Id: I79b104b3417b0f7d202ec1cde026ea6bad9c2103 Signed-off-by: Bo Yang --- drivers/amlogic/efuse/efuse64.c | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/drivers/amlogic/efuse/efuse64.c b/drivers/amlogic/efuse/efuse64.c index 701f36f1410b..175c99f270a5 100644 --- a/drivers/amlogic/efuse/efuse64.c +++ b/drivers/amlogic/efuse/efuse64.c @@ -64,16 +64,8 @@ unsigned int efuse_get_max_cmd; char *buf) \ { \ ssize_t ret; \ - int i = 0; \ \ ret = efuse_user_attr_show(#keyname, buf); \ - pr_info("efuse read data\n"); \ - while (i < ret) { \ - pr_info("%02x%s", buf[i], \ - ((i+1)%16 == 0)?"\n":":"); \ - i++; \ - } \ - pr_info("\n"); \ return ret; \ } DEFINE_EFUEKEY_SHOW_ATTR(mac) @@ -364,6 +356,7 @@ ssize_t efuse_user_attr_show(char *name, char *buf) { char *local_buf; ssize_t ret; + ssize_t len = 0; int i; struct efusekey_info info; loff_t pos; @@ -386,8 +379,15 @@ ssize_t efuse_user_attr_show(char *name, char *buf) pr_err("ERROR: read %zd byte(s) not %d byte(s) data\n", ret, info.size); - for (i = 0; i < info.size; i++) - buf[i] = local_buf[i]; + for (i = 0; i < info.size; i++) { + if (i%16 == 0) + len += sprintf(buf + len, "\n"); + if (i%16 == 0) + len += sprintf(buf + len, "0x%02x: ", i); + len += sprintf(buf + len, "%02x ", local_buf[i]); + } + len += sprintf(buf + len, "\n"); + ret = len; error_exit: kfree(local_buf); @@ -399,6 +399,7 @@ static ssize_t userdata_show(struct class *cla, { char *op; int ret; + ssize_t len = 0; int i; loff_t offset; unsigned int max_size; @@ -426,18 +427,18 @@ static ssize_t userdata_show(struct class *cla, return -1; } - pr_debug("user area %d bytes data,", max_size); - pr_info("%d bytes data read:\n", ret); for (i = 0; i < ret; i++) { if ((i != 0) && (i%16 == 0)) - pr_info("\n"); + len += sprintf(buf + len, "\n"); if (i%16 == 0) - pr_info("0x%x: ", i); - pr_info("%02x ", op[i]); + len += sprintf(buf + len, "0x%02x: ", i); + + len += sprintf(buf + len, "%02x ", op[i]); } + len += sprintf(buf + len, "\n"); kfree(op); - return ret; + return len; } #ifndef EFUSE_READ_ONLY