drivers: adc: adc_mcux_adc12: enable support for channel>=16 on S32K14X
Enable support for channels >= 16 on devices S32K146 and S32K148. Channels >= 16 are encoded as 100000b..101111b in SC1[ADCH] field. Signed-off-by: Marcin Wierzbicki <marcin.wierzbicki@accenture.com>
This commit is contained in:
parent
eebaa2b270
commit
53e7a9dd86
1 changed files with 9 additions and 0 deletions
|
@ -166,6 +166,15 @@ static void mcux_adc12_start_channel(const struct device *dev)
|
||||||
LOG_DBG("Starting channel %d", data->channel_id);
|
LOG_DBG("Starting channel %d", data->channel_id);
|
||||||
channel_config.enableInterruptOnConversionCompleted = true;
|
channel_config.enableInterruptOnConversionCompleted = true;
|
||||||
channel_config.channelNumber = data->channel_id;
|
channel_config.channelNumber = data->channel_id;
|
||||||
|
#if defined(CONFIG_SOC_S32K146) || defined(CONFIG_SOC_S32K148)
|
||||||
|
if (data->channel_id >= 16) {
|
||||||
|
/*
|
||||||
|
* channels 16..31 are encoded as 100000b..101111b in
|
||||||
|
* SC1[ADCH] field
|
||||||
|
*/
|
||||||
|
channel_config.channelNumber += 16;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
ADC12_SetChannelConfig(config->base, channel_group, &channel_config);
|
ADC12_SetChannelConfig(config->base, channel_group, &channel_config);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue