fbdev: sprd: fix wrong sscanf() parameters 23/164623/3
authorSeung-Woo Kim <sw0312.kim@samsung.com>
Wed, 20 Dec 2017 05:03:49 +0000 (14:03 +0900)
committerSeung-Woo Kim <sw0312.kim@samsung.com>
Wed, 20 Dec 2017 10:48:54 +0000 (19:48 +0900)
There were several wrong sscanf() parameter usages. Fix the wrong
parameters.

Note: "%s" format for sscanf() of kernel is required char * but it
was assigned char **, but strangely, both cases are fine on runtime.

Change-Id: I9c77a71f7c26fe25935c2633a5806291c537d181
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
drivers/video/sprdfb/sprdfb_panel.c

index 56d4d1e6cf8c849e263f82efb297cf088da0eaf7..129ae67c33ae5495490997da16f8b1bbb41deba7 100644 (file)
@@ -103,7 +103,7 @@ __setup("lcd_base=", lcd_base_get);
 static int __init mtp_offset_get(char *str)
 {
        if (str != NULL) {
-               sscanf(&str[0], "%s", &mtp_offset_from_uboot);
+               sscanf(&str[0], "%s", mtp_offset_from_uboot);
        }
 
        parse_string_to_hex(mtp_offset_from_uboot, mtp_offset_t, MTP_LEN + 6);
@@ -120,9 +120,12 @@ __setup("mtp_offset=", mtp_offset_get);
 
 static int __init elvss_offset_get(char *str)
 {
+       unsigned int elvss;
+
        if (str != NULL) {
-               sscanf(&str[0], "%x", &elvss_offset_from_uboot);
+               sscanf(&str[0], "%x", &elvss);
        }
+       elvss_offset_from_uboot = (uint8_t)elvss;
        printk(KERN_INFO "sprdfb: [%s]Panel elvss offset from uboot: 0x%x\n", __FUNCTION__, elvss_offset_from_uboot);
        return 1;
 }
@@ -131,7 +134,7 @@ __setup("elvss_offset=", elvss_offset_get);
 static int __init hbm_offset_get(char *str)
 {
        if (str != NULL) {
-               sscanf(&str[0], "%s", &hbm_offset_from_uboot);
+               sscanf(&str[0], "%s", hbm_offset_from_uboot);
        }
 
        parse_string_to_hex(hbm_offset_from_uboot, hbm_offset_t, 15);
@@ -145,7 +148,7 @@ __setup("hbm_offset=", hbm_offset_get);
 static int __init chip_id_get(char *str)
 {
        if (str != NULL) {
-               sscanf(&str[0], "%s", &chip_id_from_uboot);
+               sscanf(&str[0], "%s", chip_id_from_uboot);
        }
 
        parse_string_to_hex(chip_id_from_uboot, chip_id_t, 5);
@@ -159,7 +162,7 @@ __setup("chip_id=", chip_id_get);
 static int __init color_offset_get(char *str)
 {
        if (str != NULL) {
-               sscanf(&str[0], "%s", &color_offset_from_uboot);
+               sscanf(&str[0], "%s", color_offset_from_uboot);
        }
 
        parse_string_to_hex(color_offset_from_uboot, color_offset_t, 4);