| /** |
| * Describes common utility functions shared between CPER projects within this repository. |
| * No functions here depend on json-c or b64.c. |
| * |
| * Author: Lawrence.Tang@arm.com |
| **/ |
| |
| #include <libcper/BaseTypes.h> |
| #include <libcper/common-utils.h> |
| |
| //Converts the given BCD byte to a standard integer. |
| int bcd_to_int(UINT8 bcd) |
| { |
| return ((bcd & 0xF0) >> 4) * 10 + (bcd & 0x0F); |
| } |
| |
| //Converts the given integer to a single byte BCD. |
| UINT8 int_to_bcd(int value) |
| { |
| UINT8 result = 0; |
| int shift = 0; |
| while (value > 0) { |
| result |= (value % 10) << (shift++ << 2); |
| value /= 10; |
| } |
| |
| return result; |
| } |