/** | |
* 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; | |
} |