bitfield-c: use unsigned int instead of uint8_t
[apps/agl-service-can-low-level.git] / libs / bitfield-c / src / bitfield / 8byte.c
index 9325ed1..be46e82 100644 (file)
@@ -6,13 +6,13 @@
 
 #define EIGHTBYTE_BIT (8 * sizeof(uint64_t))
 
-uint8_t eightbyte_get_nibble(const uint64_t source, const uint8_t nibble_index,
+unsigned int eightbyte_get_nibble(const uint64_t source, const unsigned int nibble_index,
         const bool data_is_big_endian) {
-    return (uint8_t) eightbyte_get_bitfield(source, NIBBLE_SIZE * nibble_index,
+    return (unsigned int) eightbyte_get_bitfield(source, NIBBLE_SIZE * nibble_index,
             NIBBLE_SIZE, data_is_big_endian);
 }
 
-uint8_t eightbyte_get_byte(uint64_t source, const uint8_t byte_index,
+unsigned int eightbyte_get_byte(uint64_t source, const unsigned int byte_index,
         const bool data_is_big_endian) {
     if(data_is_big_endian) {
         source = __builtin_bswap64(source);
@@ -23,8 +23,8 @@ uint8_t eightbyte_get_byte(uint64_t source, const uint8_t byte_index,
 // TODO is this funciton necessary anymore? is it any faster for uint64_t than
 // get_bitfield(data[], ...)? is the performance better on a 32 bit platform
 // like the PIC32?
-uint64_t eightbyte_get_bitfield(uint64_t source, const uint16_t offset,
-        const uint16_t bit_count, const bool data_is_big_endian) {
+uint64_t eightbyte_get_bitfield(uint64_t source, const unsigned int offset,
+        const unsigned int bit_count, const bool data_is_big_endian) {
     int startByte = offset / CHAR_BIT;
     int endByte = (offset + bit_count - 1) / CHAR_BIT;
 
@@ -32,11 +32,11 @@ uint64_t eightbyte_get_bitfield(uint64_t source, const uint16_t offset,
         source = __builtin_bswap64(source);
     }
 
-    uint8_t* bytes = (uint8_t*)&source;
+    unsigned int* bytes = (unsigned int*)&source;
     uint64_t ret = bytes[startByte];
     if(startByte != endByte) {
         // The lowest byte address contains the most significant bit.
-        uint8_t i;
+        unsigned int i;
         for(i = startByte + 1; i <= endByte; i++) {
             ret = ret << 8;
             ret = ret | bytes[i];
@@ -47,8 +47,8 @@ uint64_t eightbyte_get_bitfield(uint64_t source, const uint16_t offset,
     return ret & bitmask(bit_count);
 }
 
-bool eightbyte_set_bitfield(uint64_t value, const uint16_t offset,
-        const uint16_t bit_count, uint64_t* destination) {
+bool eightbyte_set_bitfield(uint64_t value, const unsigned int offset,
+        const unsigned int bit_count, uint64_t* destination) {
     if(value > bitmask(bit_count)) {
         return false;
     }