xref: /openbmc/u-boot/include/bcd.h (revision 2146cf56)
1 /* Permission is hereby granted to copy, modify and redistribute this code
2  * in terms of the GNU Library General Public License, Version 2 or later,
3  * at your option.
4  */
5 
6 /* macros to translate to/from binary and binary-coded decimal (frequently
7  * found in RTC chips).
8  */
9 
10 #ifndef _BCD_H
11 #define _BCD_H
12 
13 #define BCD2BIN(val)	(((val) & 0x0f) + ((val)>>4)*10)
14 #define BIN2BCD(val)	((((val)/10)<<4) + (val)%10)
15 
16 /* backwards compat */
17 #define BCD_TO_BIN(val) ((val)=BCD2BIN(val))
18 #define BIN_TO_BCD(val) ((val)=BIN2BCD(val))
19 
20 #endif /* _BCD_H */
21