diff options
author | Albin Tonnerre <albin.tonnerre@free-electrons.com> | 2009-08-13 15:31:11 +0200 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2009-08-25 12:57:55 +0200 |
commit | e84aba135ed7145299304ef550e92f08b2c99d7a (patch) | |
tree | a70c19d295abf01ca9f53f01fb008cab416a6b6e /include | |
parent | 5b53b29bc2e82b80b669f1d2402068c60d7fecd0 (diff) | |
download | u-boot-imx-e84aba135ed7145299304ef550e92f08b2c99d7a.zip u-boot-imx-e84aba135ed7145299304ef550e92f08b2c99d7a.tar.gz u-boot-imx-e84aba135ed7145299304ef550e92f08b2c99d7a.tar.bz2 |
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>
Diffstat (limited to 'include')
-rw-r--r-- | include/bcd.h | 19 | ||||
-rw-r--r-- | include/linux/mc146818rtc.h | 12 |
2 files changed, 12 insertions, 19 deletions
diff --git a/include/bcd.h b/include/bcd.h index c545308..af4aa9c 100644 --- a/include/bcd.h +++ b/include/bcd.h @@ -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 */ diff --git a/include/linux/mc146818rtc.h b/include/linux/mc146818rtc.h index 227feeb..0644d92 100644 --- a/include/linux/mc146818rtc.h +++ b/include/linux/mc146818rtc.h @@ -83,16 +83,4 @@ #define RTC_VALID RTC_REG_D # define RTC_VRT 0x80 /* valid RAM and time */ /**********************************************************************/ - -/* example: !(CMOS_READ(RTC_CONTROL) & RTC_DM_BINARY) - * determines if the following two #defines are needed - */ -#ifndef BCD_TO_BIN -#define BCD_TO_BIN(val) ((val)=((val)&15) + ((val)>>4)*10) -#endif - -#ifndef BIN_TO_BCD -#define BIN_TO_BCD(val) ((val)=(((val)/10)<<4) + (val)%10) -#endif - #endif /* _MC146818RTC_H */ |