]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - include/bcd.h
Merge branch 'u-boot/master'
[karo-tx-uboot.git] / include / bcd.h
index c545308125b0904a070e3cccd611f83ff37b71e1..af4aa9c7baf8ace2f80e0a0ecb043d40d8b3f144 100644 (file)
@@ -3,18 +3,23 @@
  * at your option.
  */
 
-/* macros to translate to/from binary and binary-coded decimal (frequently
- * found in RTC chips).
+/* inline functions to translate to/from binary and binary-coded decimal
+ * (frequently found in RTC chips).
  */
 
 #ifndef _BCD_H
 #define _BCD_H
 
-#define BCD2BIN(val)   (((val) & 0x0f) + ((val)>>4)*10)
-#define BIN2BCD(val)   ((((val)/10)<<4) + (val)%10)
+#include <linux/types.h>
 
-/* backwards compat */
-#define BCD_TO_BIN(val) ((val)=BCD2BIN(val))
-#define BIN_TO_BCD(val) ((val)=BIN2BCD(val))
+static inline unsigned int bcd2bin(u8 val)
+{
+       return ((val) & 0x0f) + ((val) >> 4) * 10;
+}
+
+static inline u8 bin2bcd (unsigned int val)
+{
+       return (((val / 10) << 4) | (val % 10));
+}
 
 #endif /* _BCD_H */