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