blob: 7d85b582f5c2f6d434b796b1549fbf00259621e5 [file] [log] [blame]
/**
* 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;
}