diff options
author | Iru Cai <mytbk920423@gmail.com> | 2019-10-30 14:21:52 +0800 |
---|---|---|
committer | Iru Cai <mytbk920423@gmail.com> | 2019-10-30 14:48:38 +0800 |
commit | ae51f41d14f548d494ac41e0d21137c5a4c3f59c (patch) | |
tree | 6ddb9d1aaa7bd5bad5bbf8497edc2e08ff208d79 /include/bcd.h | |
download | uext4-ae51f41d14f548d494ac41e0d21137c5a4c3f59c.tar.xz |
import the U-Boot code and make it compile
Diffstat (limited to 'include/bcd.h')
-rw-r--r-- | include/bcd.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/include/bcd.h b/include/bcd.h new file mode 100644 index 0000000..9ecd328 --- /dev/null +++ b/include/bcd.h @@ -0,0 +1,23 @@ +/* Permission is hereby granted to copy, modify and redistribute this code + * in terms of the GNU Library General Public License, Version 2 or later, + * at your option. + */ + +/* inline functions to translate to/from binary and binary-coded decimal + * (frequently found in RTC chips). + */ + +#ifndef _BCD_H +#define _BCD_H + +static inline unsigned int bcd2bin(unsigned int val) +{ + return ((val) & 0x0f) + ((val & 0xff) >> 4) * 10; +} + +static inline unsigned int bin2bcd(unsigned int val) +{ + return (((val / 10) << 4) | (val % 10)); +} + +#endif /* _BCD_H */ |