summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRasmus Villemoes <linux@rasmusvillemoes.dk>2015-12-05 18:39:39 -0500
committerLee Jones <lee.jones@linaro.org>2016-01-11 01:23:21 -0500
commita5656a708050bd3be5c3a3bc45297db21e88cecd (patch)
tree360c9a85f2d85f8a60faf9c937f141689ce5e249
parentdb2fb60cd35d2d03699e570906ced73b4c05586e (diff)
mfd: wm831x: Fix broken wm831x_unique_id_show
wm831x_unique_id_show currently displays an interesting pattern of '0' and '3' characters which isn't very useful (figuring out why is left as an exercise for the reader). Presumably "buf[i]" should have been "id[i] & 0xff". But while there, it is much simpler to simply use %phN and do all the formatting at once. Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
-rw-r--r--drivers/mfd/wm831x-otp.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/drivers/mfd/wm831x-otp.c b/drivers/mfd/wm831x-otp.c
index b90f3e06b6c9..ebac0027f8e0 100644
--- a/drivers/mfd/wm831x-otp.c
+++ b/drivers/mfd/wm831x-otp.c
@@ -47,20 +47,14 @@ static ssize_t wm831x_unique_id_show(struct device *dev,
47 struct device_attribute *attr, char *buf) 47 struct device_attribute *attr, char *buf)
48{ 48{
49 struct wm831x *wm831x = dev_get_drvdata(dev); 49 struct wm831x *wm831x = dev_get_drvdata(dev);
50 int i, rval; 50 int rval;
51 char id[WM831X_UNIQUE_ID_LEN]; 51 char id[WM831X_UNIQUE_ID_LEN];
52 ssize_t ret = 0;
53 52
54 rval = wm831x_unique_id_read(wm831x, id); 53 rval = wm831x_unique_id_read(wm831x, id);
55 if (rval < 0) 54 if (rval < 0)
56 return 0; 55 return 0;
57 56
58 for (i = 0; i < WM831X_UNIQUE_ID_LEN; i++) 57 return sprintf(buf, "%*phN\n", WM831X_UNIQUE_ID_LEN, id);
59 ret += sprintf(&buf[ret], "%02x", buf[i]);
60
61 ret += sprintf(&buf[ret], "\n");
62
63 return ret;
64} 58}
65 59
66static DEVICE_ATTR(unique_id, 0444, wm831x_unique_id_show, NULL); 60static DEVICE_ATTR(unique_id, 0444, wm831x_unique_id_show, NULL);