diff options
author | yalin wang <yalin.wang2010@gmail.com> | 2015-08-10 22:41:43 +0800 |
---|---|---|
committer | Guenter Roeck <linux@roeck-us.net> | 2015-08-10 23:00:10 -0700 |
commit | 33836ee98533fd27baa89dabca48f8d4e69dd438 (patch) | |
tree | c9744a046946cbba09459dc2831baa22537e5701 /drivers/hwmon | |
parent | cfca3789e0678c57e09dfb1a09fdfce427b7c92e (diff) | |
download | linux-33836ee98533fd27baa89dabca48f8d4e69dd438.tar.bz2 |
hwmon:change sht15_reverse()
This change sht15_reverse() to be generic bitrev8().
Signed-off-by: yalin wang <yalin.wang2010@gmail.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'drivers/hwmon')
-rw-r--r-- | drivers/hwmon/sht15.c | 20 |
1 files changed, 4 insertions, 16 deletions
diff --git a/drivers/hwmon/sht15.c b/drivers/hwmon/sht15.c index 497a7f822a12..a2fdbb7d20ed 100644 --- a/drivers/hwmon/sht15.c +++ b/drivers/hwmon/sht15.c @@ -33,6 +33,7 @@ #include <linux/regulator/consumer.h> #include <linux/slab.h> #include <linux/atomic.h> +#include <linux/bitrev.h> /* Commands */ #define SHT15_MEASURE_TEMP 0x03 @@ -173,19 +174,6 @@ struct sht15_data { }; /** - * sht15_reverse() - reverse a byte - * @byte: byte to reverse. - */ -static u8 sht15_reverse(u8 byte) -{ - u8 i, c; - - for (c = 0, i = 0; i < 8; i++) - c |= (!!(byte & (1 << i))) << (7 - i); - return c; -} - -/** * sht15_crc8() - compute crc8 * @data: sht15 specific data. * @value: sht15 retrieved data. @@ -196,7 +184,7 @@ static u8 sht15_crc8(struct sht15_data *data, const u8 *value, int len) { - u8 crc = sht15_reverse(data->val_status & 0x0F); + u8 crc = bitrev8(data->val_status & 0x0F); while (len--) { crc = sht15_crc8_table[*value ^ crc]; @@ -477,7 +465,7 @@ static int sht15_update_status(struct sht15_data *data) if (data->checksumming) { sht15_ack(data); - dev_checksum = sht15_reverse(sht15_read_byte(data)); + dev_checksum = bitrev8(sht15_read_byte(data)); checksum_vals[0] = SHT15_READ_STATUS; checksum_vals[1] = status; data->checksum_ok = (sht15_crc8(data, checksum_vals, 2) @@ -864,7 +852,7 @@ static void sht15_bh_read_data(struct work_struct *work_s) */ if (sht15_ack(data)) goto wakeup; - dev_checksum = sht15_reverse(sht15_read_byte(data)); + dev_checksum = bitrev8(sht15_read_byte(data)); checksum_vals[0] = (data->state == SHT15_READING_TEMP) ? SHT15_MEASURE_TEMP : SHT15_MEASURE_RH; checksum_vals[1] = (u8) (val >> 8); |