From 2f6371c1adab5b9a03b87417fd5d6a80e1de5043 Mon Sep 17 00:00:00 2001 From: Andrei Emeltchenko Date: Mon, 30 Sep 2019 15:35:39 +0300 Subject: [PATCH] drivers: adc: adc_mchp_xec: Fix incorrect channel mask check Value MCHP_ADC_MAX_CHAN_MASK defined in microchip hal as 0x07u which is different method for mask calculation then used in Zephyr API for 8 channels (MCHP_ADC_MAX_CHAN = 8). Calculate bitmask ourselves using BIT_MASK(). Signed-off-by: Andrei Emeltchenko --- drivers/adc/adc_mchp_xec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/adc/adc_mchp_xec.c b/drivers/adc/adc_mchp_xec.c index d2ca1ac3250..cff0a898db5 100644 --- a/drivers/adc/adc_mchp_xec.c +++ b/drivers/adc/adc_mchp_xec.c @@ -151,7 +151,7 @@ static int adc_xec_start_read(struct device *dev, struct adc_xec_data *data = dev->driver_data; u32_t reg; - if (sequence->channels & ~MCHP_ADC_MAX_CHAN_MASK) { + if (sequence->channels & ~BIT_MASK(MCHP_ADC_MAX_CHAN)) { return -EINVAL; }