diff --git a/drivers/adc/adc_lmp90xxx.c b/drivers/adc/adc_lmp90xxx.c index 61ff6c0f123..aca6e4c49da 100644 --- a/drivers/adc/adc_lmp90xxx.c +++ b/drivers/adc/adc_lmp90xxx.c @@ -495,6 +495,12 @@ static int lmp90xxx_adc_start_read(struct device *dev, return -ENOTSUP; } + if (!lmp90xxx_has_channel(dev, find_msb_set(sequence->channels) - 1)) { + LOG_ERR("unsupported channels in mask: 0x%08x", + sequence->channels); + return -ENOTSUP; + } + err = lmp90xxx_validate_buffer_size(sequence); if (err) { LOG_ERR("buffer size too small");