Bluetooth: bt3c_cs: Fix obsolete function
authorDing Xiang <dingxiang@cmss.chinamobile.com>
Mon, 27 Aug 2018 02:55:00 +0000 (22:55 -0400)
committerMarcel Holtmann <marcel@holtmann.org>
Thu, 27 Sep 2018 10:57:39 +0000 (12:57 +0200)
simple_strtol and simple_strtoul are obsolete, both place
use kstrtouint instead.

V2: fix error tmp += tn
V3: fix compile error

Signed-off-by: Ding Xiang <dingxiang@cmss.chinamobile.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/bt3c_cs.c

index 25b0cf9..5471383 100644 (file)
@@ -448,7 +448,7 @@ static int bt3c_load_firmware(struct bt3c_info *info,
 {
        char *ptr = (char *) firmware;
        char b[9];
-       unsigned int iobase, tmp;
+       unsigned int iobase, tmp, tn;
        unsigned long size, addr, fcs;
        int i, err = 0;
 
@@ -490,7 +490,9 @@ static int bt3c_load_firmware(struct bt3c_info *info,
                memset(b, 0, sizeof(b));
                for (tmp = 0, i = 0; i < size; i++) {
                        memcpy(b, ptr + (i * 2) + 2, 2);
-                       tmp += simple_strtol(b, NULL, 16);
+                       if (kstrtouint(b, 16, &tn))
+                               return -EINVAL;
+                       tmp += tn;
                }
 
                if (((tmp + fcs) & 0xff) != 0xff) {
@@ -505,7 +507,8 @@ static int bt3c_load_firmware(struct bt3c_info *info,
                        memset(b, 0, sizeof(b));
                        for (i = 0; i < (size - 4) / 2; i++) {
                                memcpy(b, ptr + (i * 4) + 12, 4);
-                               tmp = simple_strtoul(b, NULL, 16);
+                               if (kstrtouint(b, 16, &tmp))
+                                       return -EINVAL;
                                bt3c_put(iobase, tmp);
                        }
                }