From 8b09b5b170e71e2350265fa1deadd89ff6946254 Mon Sep 17 00:00:00 2001 From: Alexander Motin Date: Mon, 17 Jan 2011 19:31:34 +0000 Subject: [PATCH] Fix 32bit bit fields handling. This fixes card serial number fetching. It was just a cosmetic issue, because that number is only reported in logs. Reported by: Michael Butler on current@ --- sys/dev/mmc/mmc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/mmc/mmc.c b/sys/dev/mmc/mmc.c index 63c81dd5947..45ddd56bad1 100644 --- a/sys/dev/mmc/mmc.c +++ b/sys/dev/mmc/mmc.c @@ -749,7 +749,7 @@ mmc_get_bits(uint32_t *bits, int bit_len, int start, int size) uint32_t retval = bits[i] >> shift; if (size + shift > 32) retval |= bits[i - 1] << (32 - shift); - return (retval & ((1 << size) - 1)); + return (retval & ((1llu << size) - 1)); } static void