]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - include/bcd.h
ARM: keystone2: Cleanup PLL init code
[karo-tx-uboot.git] / include / bcd.h
index c545308125b0904a070e3cccd611f83ff37b71e1..9ecd328284e9de20a293a96dff9bc655c6d529ea 100644 (file)
@@ -3,18 +3,21 @@
  * 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)
+static inline unsigned int bcd2bin(unsigned int val)
+{
+       return ((val) & 0x0f) + ((val & 0xff) >> 4) * 10;
+}
 
-/* backwards compat */
-#define BCD_TO_BIN(val) ((val)=BCD2BIN(val))
-#define BIN_TO_BCD(val) ((val)=BIN2BCD(val))
+static inline unsigned int bin2bcd(unsigned int val)
+{
+       return (((val / 10) << 4) | (val % 10));
+}
 
 #endif /* _BCD_H */