lkml.org 
[lkml]   [2012]   [May]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Subject[PATCH] x86: kernel/early_printk.c simple_strtoul cleanup
From
Date
Change early_serial_init() to call kstrtoul() instead of calling obsoleted
simple_strtoul().

Signed-off-by: Shuah Khan <shuahkhan@gmail.com>
---
arch/x86/kernel/early_printk.c | 21 ++++++++++++++-------
1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/arch/x86/kernel/early_printk.c b/arch/x86/kernel/early_printk.c
index 9b9f18b..a078f4d 100644
--- a/arch/x86/kernel/early_printk.c
+++ b/arch/x86/kernel/early_printk.c
@@ -119,22 +119,27 @@ static __init void early_serial_init(char *s)
unsigned char c;
unsigned divisor;
unsigned baud = DEFAULT_BAUD;
- char *e;
+ unsigned long val;
+ ssize_t ret;

if (*s == ',')
++s;

if (*s) {
- unsigned port;
+ unsigned port = 0;
if (!strncmp(s, "0x", 2)) {
- early_serial_base = simple_strtoul(s, &e, 16);
+ ret = kstrtoul(s, 16, &val);
+ if (!ret)
+ early_serial_base = val;
} else {
static const int __initconst bases[] = { 0x3f8, 0x2f8 };

if (!strncmp(s, "ttyS", 4))
s += 4;
- port = simple_strtoul(s, &e, 10);
- if (port > 1 || s == e)
+ ret = kstrtoul(s, 10, &val);
+ if (!ret)
+ port = val;
+ if (port > 1)
port = 0;
early_serial_base = bases[port];
}
@@ -149,8 +154,10 @@ static __init void early_serial_init(char *s)
outb(0x3, early_serial_base + MCR); /* DTR + RTS */

if (*s) {
- baud = simple_strtoul(s, &e, 0);
- if (baud == 0 || s == e)
+ ret = kstrtoul(s, 0, &val);
+ if (!ret)
+ baud = val;
+ if (baud == 0)
baud = DEFAULT_BAUD;
}

--
1.7.9.5




\
 
 \ /
  Last update: 2012-05-27 19:01    [W:0.902 / U:0.392 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site