Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753642AbbKLHys (ORCPT ); Thu, 12 Nov 2015 02:54:48 -0500 Received: from mail-wm0-f44.google.com ([74.125.82.44]:37350 "EHLO mail-wm0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752323AbbKLHyq (ORCPT ); Thu, 12 Nov 2015 02:54:46 -0500 Date: Thu, 12 Nov 2015 08:54:42 +0100 From: LABBE Corentin To: Uwe =?iso-8859-1?Q?Kleine-K=F6nig?= Cc: LABBE Corentin , jdelvare@suse.com, wsa@the-dreams.de, linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] i2c: taos-evm: replace simple_strtoul by kstrtou8 Message-ID: <20151112075442.GA9850@Red> References: <1447313194-23931-1-git-send-email-clabbe.montjoie@gmail.com> <20151112074643.GB24008@pengutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20151112074643.GB24008@pengutronix.de> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1872 Lines: 49 On Thu, Nov 12, 2015 at 08:46:43AM +0100, Uwe Kleine-K?nig wrote: > On Thu, Nov 12, 2015 at 08:26:33AM +0100, LABBE Corentin wrote: > > The simple_strtoul function is marked as obsolete. > > This patch replace it by kstrtou8. > > > > Signed-off-by: LABBE Corentin > > --- > > drivers/i2c/busses/i2c-taos-evm.c | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/i2c/busses/i2c-taos-evm.c b/drivers/i2c/busses/i2c-taos-evm.c > > index 4c7fc2d..fe2b705 100644 > > --- a/drivers/i2c/busses/i2c-taos-evm.c > > +++ b/drivers/i2c/busses/i2c-taos-evm.c > > @@ -70,6 +70,7 @@ static int taos_smbus_xfer(struct i2c_adapter *adapter, u16 addr, > > struct serio *serio = adapter->algo_data; > > struct taos_data *taos = serio_get_drvdata(serio); > > char *p; > > + int err; > > > > /* Encode our transaction. "@" is for the device address, "$" for the > > SMBus command and "#" for the data. */ > > @@ -130,7 +131,9 @@ static int taos_smbus_xfer(struct i2c_adapter *adapter, u16 addr, > > return 0; > > } else { > > if (p[0] == 'x') { > > - data->byte = simple_strtol(p + 1, NULL, 16); > > + err = kstrtou8(p + 1, 16, &data->byte); > > + if (err) > > + return -EPROTO; > > return 0; > > This is nearly equivalent to the probably more correct: > > return kstrtou8(p + 1, 16, &data->byte); > As reported, by Jean Delvare, kstrtou8 could return -EINVAL. It is why I "drop" the return code from kstrtou8 and return -EPROTO as suggested by Jean. I have hesitate to put a comment for this, and it seems finaly necessary. Regards -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/