Replace BCD2BIN and BIN2BCD macros with inline functions
In the process, also remove backward-compatiblity macros BIN_TO_BCD and BCD_TO_BIN and update the sole board using them to use the new bin2bcd and bcd2bin instead Signed-off-by: Albin Tonnerre <albin.tonnerre@free-electrons.com> Acked-by: Stefan Roese <sr@denx.de> Acked-by: Detlev Zundel <dzu@denx.de>
This commit is contained in:
committed by
Wolfgang Denk
parent
5b53b29bc2
commit
e84aba135e
@@ -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 */
|
||||
|
||||
Reference in New Issue
Block a user