netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] net: can: remove custom hex_to_bin()
@ 2011-07-18  8:26 Andy Shevchenko
  2011-07-18 11:41 ` Tetsuo Handa
  2011-07-18 14:02 ` [PATCH] net: can: remove custom hex_to_bin() Oliver Hartkopp
  0 siblings, 2 replies; 16+ messages in thread
From: Andy Shevchenko @ 2011-07-18  8:26 UTC (permalink / raw)
  To: netdev, linux-kernel; +Cc: Andy Shevchenko, Wolfgang Grandegger

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Wolfgang Grandegger <wg@grandegger.com>
---
 drivers/net/can/slcan.c |   26 +++++---------------------
 1 files changed, 5 insertions(+), 21 deletions(-)

diff --git a/drivers/net/can/slcan.c b/drivers/net/can/slcan.c
index aa8ad73..65e54fd 100644
--- a/drivers/net/can/slcan.c
+++ b/drivers/net/can/slcan.c
@@ -56,6 +56,7 @@
 #include <linux/sched.h>
 #include <linux/delay.h>
 #include <linux/init.h>
+#include <linux/kernel.h>
 #include <linux/can.h>
 
 static __initdata const char banner[] =
@@ -142,21 +143,6 @@ static struct net_device **slcan_devs;
   *			STANDARD SLCAN DECAPSULATION			 *
   ************************************************************************/
 
-static int asc2nibble(char c)
-{
-
-	if ((c >= '0') && (c <= '9'))
-		return c - '0';
-
-	if ((c >= 'A') && (c <= 'F'))
-		return c - 'A' + 10;
-
-	if ((c >= 'a') && (c <= 'f'))
-		return c - 'a' + 10;
-
-	return 16; /* error */
-}
-
 /* Send one completely decapsulated can_frame to the network layer */
 static void slc_bump(struct slcan *sl)
 {
@@ -195,18 +181,16 @@ static void slc_bump(struct slcan *sl)
 	*(u64 *) (&cf.data) = 0; /* clear payload */
 
 	for (i = 0, dlc_pos++; i < cf.can_dlc; i++) {
-
-		tmp = asc2nibble(sl->rbuff[dlc_pos++]);
-		if (tmp > 0x0F)
+		tmp = hex_to_bin(sl->rbuff[dlc_pos++]);
+		if (tmp < 0)
 			return;
 		cf.data[i] = (tmp << 4);
-		tmp = asc2nibble(sl->rbuff[dlc_pos++]);
-		if (tmp > 0x0F)
+		tmp = hex_to_bin(sl->rbuff[dlc_pos++]);
+		if (tmp < 0)
 			return;
 		cf.data[i] |= tmp;
 	}
 
-
 	skb = dev_alloc_skb(sizeof(struct can_frame));
 	if (!skb)
 		return;
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2011-07-19 10:52 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-07-18  8:26 [PATCH] net: can: remove custom hex_to_bin() Andy Shevchenko
2011-07-18 11:41 ` Tetsuo Handa
2011-07-18 12:23   ` Andy Shevchenko
2011-07-18 12:48     ` [PATCH] Add error check to hex2bin() Tetsuo Handa
2011-07-18 18:03       ` Mimi Zohar
2011-07-18 18:57         ` Andy Shevchenko
2011-07-18 19:20           ` Mimi Zohar
2011-07-18 19:44             ` Andy Shevchenko
2011-07-18 21:43               ` Mimi Zohar
2011-07-18 20:49       ` Geert Uytterhoeven
2011-07-18 21:18         ` Andy Shevchenko
2011-07-18 21:59           ` Mimi Zohar
2011-07-19  1:00           ` Mimi Zohar
2011-07-19 10:52           ` Mimi Zohar
2011-07-18 14:02 ` [PATCH] net: can: remove custom hex_to_bin() Oliver Hartkopp
2011-07-18 18:33   ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).