Commit 34b94f93 authored by Melissa Wen's avatar Melissa Wen Committed by Jonathan Cameron
Browse files

staging: iio: ad7150: use FIELD_GET and GENMASK



Use the bitfield macro FIELD_GET, and GENMASK to do the shift and mask in
one go. This makes the code more readable than explicit masking followed
by a shift.

Signed-off-by: default avatarMelissa Wen <melissa.srw@gmail.com>
Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent 362cd500
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@
 * Copyright 2010-2011 Analog Devices Inc.
 */

#include <linux/bitfield.h>
#include <linux/interrupt.h>
#include <linux/device.h>
#include <linux/kernel.h>
@@ -45,6 +46,9 @@
#define AD7150_SN0                 22
#define AD7150_ID                  23

/* AD7150 masks */
#define AD7150_THRESHTYPE_MSK			GENMASK(6, 5)

/**
 * struct ad7150_chip_info - instance specific chip data
 * @client: i2c client for this device
@@ -137,7 +141,7 @@ static int ad7150_read_event_config(struct iio_dev *indio_dev,
	if (ret < 0)
		return ret;

	threshtype = (ret >> 5) & 0x03;
	threshtype = FIELD_GET(AD7150_THRESHTYPE_MSK, ret);
	adaptive = !!(ret & 0x80);

	switch (type) {