Skip to contentSkip to conversation

staging:iio:ad7291 fix defines

PATCH Applied Hartmut Knaack 2 participants 2 messages Jul 8, 2014

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH 4/6 staging:iio:ad7291 fix defines

Use BIT and GENMASK, remove unused defines, use AD7291_VOLTAGE_OFFSET definition and move AD7291_BITS.

---

drivers/staging/iio/adc/ad7291.c +14 -18
index b868c64..8ff3536 100644
@@ -46,31 +46,27 @@
 #define AD7291_VOLTAGE_ALERT_STATUS	0x1F
 #define AD7291_T_ALERT_STATUS		0x20
 
+#define AD7291_BITS			12
 #define AD7291_VOLTAGE_LIMIT_COUNT	8
 
 
 /*
  * AD7291 command
  */
-#define AD7291_AUTOCYCLE		(1 << 0)
-#define AD7291_RESET			(1 << 1)
-#define AD7291_ALERT_CLEAR		(1 << 2)
-#define AD7291_ALERT_POLARITY		(1 << 3)
-#define AD7291_EXT_REF			(1 << 4)
-#define AD7291_NOISE_DELAY		(1 << 5)
-#define AD7291_T_SENSE_MASK		(1 << 7)
-#define AD7291_VOLTAGE_MASK		0xFF00
-#define AD7291_VOLTAGE_OFFSET		0x8
+#define AD7291_AUTOCYCLE		BIT(0)
+#define AD7291_RESET			BIT(1)
+#define AD7291_ALERT_CLEAR		BIT(2)
+#define AD7291_ALERT_POLARITY		BIT(3)
+#define AD7291_EXT_REF			BIT(4)
+#define AD7291_NOISE_DELAY		BIT(5)
+#define AD7291_T_SENSE_MASK		BIT(7)
+#define AD7291_VOLTAGE_MASK		GENMASK(15, 8)
+#define AD7291_VOLTAGE_OFFSET		8
 
 /*
  * AD7291 value masks
  */
-#define AD7291_CHANNEL_MASK		0xF000
-#define AD7291_BITS			12
-#define AD7291_VALUE_MASK		0xFFF
-#define AD7291_T_VALUE_SIGN		0x400
-#define AD7291_T_VALUE_FLOAT_OFFSET	2
-#define AD7291_T_VALUE_FLOAT_MASK	0x2
+#define AD7291_VALUE_MASK		GENMASK(11, 0)
 
 struct ad7291_chip_info {
 	struct i2c_client	*client;
@@ -172,7 +168,7 @@ static unsigned int ad7291_threshold_reg(const struct iio_chan_spec *chan,
 		offset = chan->channel;
 		break;
 	case IIO_TEMP:
-		offset = 8;
+		offset = AD7291_VOLTAGE_OFFSET;
 		break;
 	}
 
@@ -246,7 +242,7 @@ static int ad7291_read_event_config(struct iio_dev *indio_dev,
 
 	switch (chan->type) {
 	case IIO_VOLTAGE:
-		if (chip->c_mask & (1 << (15 - chan->channel)))
+		if (chip->c_mask & BIT(15 - chan->channel))
 			return 1;
 		else
 			return 0;
@@ -331,7 +327,7 @@ static int ad7291_read_raw(struct iio_dev *indio_dev,
 			}
 			/* Enable this channel alone */
 			regval = chip->command & (~AD7291_VOLTAGE_MASK);
-			regval |= 1 << (15 - chan->channel);
+			regval |= BIT(15 - chan->channel);
 			ret = ad7291_i2c_write(chip, AD7291_COMMAND, regval);
 			if (ret < 0) {
 				mutex_unlock(&chip->state_lock);
maintainer
#1 lore raw
Quoted 4 lines · Hartmut Knaack

Use BIT and GENMASK, remove unused defines, use AD7291_VOLTAGE_OFFSET definition and move AD7291_BITS.

Applied with some fuzz due to dropped patch 3 and changing fix -> cleanup in the patch title for the reasons I put in the previous email.

Quoted 80 lines

---

drivers/staging/iio/adc/ad7291.c +14 -19
index b868c64..8ff3536 100644
@@ -46,31 +46,27 @@
  #define AD7291_VOLTAGE_ALERT_STATUS	0x1F
  #define AD7291_T_ALERT_STATUS		0x20
 
+#define AD7291_BITS			12
  #define AD7291_VOLTAGE_LIMIT_COUNT	8
 
 
  /*
   * AD7291 command
   */
-#define AD7291_AUTOCYCLE		(1 << 0)
-#define AD7291_RESET			(1 << 1)
-#define AD7291_ALERT_CLEAR		(1 << 2)
-#define AD7291_ALERT_POLARITY		(1 << 3)
-#define AD7291_EXT_REF			(1 << 4)
-#define AD7291_NOISE_DELAY		(1 << 5)
-#define AD7291_T_SENSE_MASK		(1 << 7)
-#define AD7291_VOLTAGE_MASK		0xFF00
-#define AD7291_VOLTAGE_OFFSET		0x8
+#define AD7291_AUTOCYCLE		BIT(0)
+#define AD7291_RESET			BIT(1)
+#define AD7291_ALERT_CLEAR		BIT(2)
+#define AD7291_ALERT_POLARITY		BIT(3)
+#define AD7291_EXT_REF			BIT(4)
+#define AD7291_NOISE_DELAY		BIT(5)
+#define AD7291_T_SENSE_MASK		BIT(7)
+#define AD7291_VOLTAGE_MASK		GENMASK(15, 8)
+#define AD7291_VOLTAGE_OFFSET		8
 
  /*
   * AD7291 value masks
   */
-#define AD7291_CHANNEL_MASK		0xF000
-#define AD7291_BITS			12
-#define AD7291_VALUE_MASK		0xFFF
-#define AD7291_T_VALUE_SIGN		0x400
-#define AD7291_T_VALUE_FLOAT_OFFSET	2
-#define AD7291_T_VALUE_FLOAT_MASK	0x2
+#define AD7291_VALUE_MASK		GENMASK(11, 0)
 
  struct ad7291_chip_info {
  	struct i2c_client	*client;
@@ -172,7 +168,7 @@ static unsigned int ad7291_threshold_reg(const struct iio_chan_spec *chan,
  		offset = chan->channel;
  		break;
  	case IIO_TEMP:
-		offset = 8;
+		offset = AD7291_VOLTAGE_OFFSET;
  		break;
  	}
 
@@ -246,7 +242,7 @@ static int ad7291_read_event_config(struct iio_dev *indio_dev,
 
  	switch (chan->type) {
  	case IIO_VOLTAGE:
-		if (chip->c_mask & (1 << (15 - chan->channel)))
+		if (chip->c_mask & BIT(15 - chan->channel))
  			return 1;
  		else
  			return 0;
@@ -331,7 +327,7 @@ static int ad7291_read_raw(struct iio_dev *indio_dev,
  			}
  			/* Enable this channel alone */
  			regval = chip->command & (~AD7291_VOLTAGE_MASK);
-			regval |= 1 << (15 - chan->channel);
+			regval |= BIT(15 - chan->channel);
  			ret = ad7291_i2c_write(chip, AD7291_COMMAND, regval);
  			if (ret < 0) {
  				mutex_unlock(&chip->state_lock);
--

To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html