diff options
| author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2012-10-30 03:20:56 -0400 |
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2012-10-30 03:20:56 -0400 |
| commit | 53279f36dccffc26ff536003fd6bb97cc21c3b82 (patch) | |
| tree | 9d16e497c0e4158c7c054c479bd0e9ff0388d7bb /include/linux/bcd.h | |
| parent | a6e8c0a25377e27958b11b20e1927885ae7c9857 (diff) | |
| parent | 8f0d8163b50e01f398b14bcd4dc039ac5ab18d64 (diff) | |
Merge tag 'v3.7-rc3' into next to sync up with recent USB and MFD changes
Diffstat (limited to 'include/linux/bcd.h')
| -rw-r--r-- | include/linux/bcd.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/include/linux/bcd.h b/include/linux/bcd.h index 22ea563ba3eb..18fff11fb3ea 100644 --- a/include/linux/bcd.h +++ b/include/linux/bcd.h | |||
| @@ -3,7 +3,20 @@ | |||
| 3 | 3 | ||
| 4 | #include <linux/compiler.h> | 4 | #include <linux/compiler.h> |
| 5 | 5 | ||
| 6 | unsigned bcd2bin(unsigned char val) __attribute_const__; | 6 | #define bcd2bin(x) \ |
| 7 | unsigned char bin2bcd(unsigned val) __attribute_const__; | 7 | (__builtin_constant_p((u8 )(x)) ? \ |
| 8 | const_bcd2bin(x) : \ | ||
| 9 | _bcd2bin(x)) | ||
| 10 | |||
| 11 | #define bin2bcd(x) \ | ||
| 12 | (__builtin_constant_p((u8 )(x)) ? \ | ||
| 13 | const_bin2bcd(x) : \ | ||
| 14 | _bin2bcd(x)) | ||
| 15 | |||
| 16 | #define const_bcd2bin(x) (((x) & 0x0f) + ((x) >> 4) * 10) | ||
| 17 | #define const_bin2bcd(x) ((((x) / 10) << 4) + (x) % 10) | ||
| 18 | |||
| 19 | unsigned _bcd2bin(unsigned char val) __attribute_const__; | ||
| 20 | unsigned char _bin2bcd(unsigned val) __attribute_const__; | ||
| 8 | 21 | ||
| 9 | #endif /* _BCD_H */ | 22 | #endif /* _BCD_H */ |
