1 2 3 4 5 6 7 8 9 10 11 12 13 14
#include <linux/bcd.h> #include <linux/export.h> unsigned bcd2bin(unsigned char val) { return (val & 0x0f) + (val >> 4) * 10; } EXPORT_SYMBOL(bcd2bin); unsigned char bin2bcd(unsigned val) { return ((val / 10) << 4) + val % 10; } EXPORT_SYMBOL(bin2bcd);