Messages in this thread Patch in this message | | | From | vbyravarasu@nvidia ... | Subject | [PATCH] bcd: limit bin2bcd input value to lie between 0-99 | Date | Wed, 16 Nov 2011 10:41:32 +0530 |
| |
From: venu byravarasu <vbyravarasu@nvidia.com>
Current implementation of bin2bcd allows any value between 0x0 to 0xF to be stored in the most significant nibble of its returned value, against to the BCD limits of 0 - 9. Hence fixing it.
e.g. say val passed to bin2bcd is 123. In that case the expected value to be returned by this function is 0x23. However, without the fix being added, it would return 0xC3.
Signed-off-by: venu byravarasu <vbyravarasu@nvidia.com> --- lib/bcd.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/lib/bcd.c b/lib/bcd.c index d74257f..d715474 100644 --- a/lib/bcd.c +++ b/lib/bcd.c @@ -9,6 +9,7 @@ EXPORT_SYMBOL(bcd2bin); unsigned char bin2bcd(unsigned val) { + val %= 100; return ((val / 10) << 4) + val % 10; } EXPORT_SYMBOL(bin2bcd); -- 1.7.1.1
| |