/Zephyr-latest/tests/drivers/adc/adc_api/src/ |
D | test_adc.c | 136 struct adc_sequence sequence = { in test_task_one_channel() local 142 (void)adc_sequence_init_dt(&adc_channels[0], &sequence); in test_task_one_channel() 144 ret = adc_read_dt(&adc_channels[0], &sequence); in test_task_one_channel() 163 struct adc_sequence sequence = { in test_task_multiple_channels() local 169 (void)adc_sequence_init_dt(&adc_channels[0], &sequence); in test_task_multiple_channels() 172 sequence.channels |= BIT(adc_channels[i].channel_id); in test_task_multiple_channels() 175 ret = adc_read_dt(&adc_channels[0], &sequence); in test_task_multiple_channels() 209 struct adc_sequence sequence = { in test_task_asynchronous_call() local 220 (void)adc_sequence_init_dt(&adc_channels[0], &sequence); in test_task_asynchronous_call() 222 ret = adc_read_async(adc_channels[0].dev, &sequence, &async_sig); in test_task_asynchronous_call() [all …]
|
/Zephyr-latest/drivers/adc/ |
D | adc_handlers.c | 55 struct adc_sequence sequence; in z_vrfy_adc_read() local 59 K_OOPS(K_SYSCALL_VERIFY_MSG(copy_sequence(&sequence, &options, in z_vrfy_adc_read() 62 if (sequence.options != NULL) { in z_vrfy_adc_read() 63 K_OOPS(K_SYSCALL_VERIFY_MSG(sequence.options->callback == NULL, in z_vrfy_adc_read() 67 return z_impl_adc_read((const struct device *)dev, &sequence); in z_vrfy_adc_read() 76 struct adc_sequence sequence; in z_vrfy_adc_read_async() local 80 K_OOPS(K_SYSCALL_VERIFY_MSG(copy_sequence(&sequence, &options, in z_vrfy_adc_read_async() 83 if (sequence.options != NULL) { in z_vrfy_adc_read_async() 84 K_OOPS(K_SYSCALL_VERIFY_MSG(sequence.options->callback == NULL, in z_vrfy_adc_read_async() 89 return z_impl_adc_read_async((const struct device *)dev, &sequence, in z_vrfy_adc_read_async()
|
D | adc_nrfx_saadc.c | 110 static uint32_t samples_to_bytes(const struct adc_sequence *sequence, uint16_t number_of_samples) in samples_to_bytes() argument 112 if (NRF_SAADC_8BIT_SAMPLE_WIDTH == 8 && sequence->resolution == 8) { in samples_to_bytes() 351 if (ctx->sequence.calibrate) { in adc_context_start_sampling() 368 samples_to_bytes(&ctx->sequence, nrfy_saadc_amount_get(NRF_SAADC)); in adc_context_update_buffer_pointer() 372 samples_to_bytes(&ctx->sequence, nrfy_saadc_amount_get(NRF_SAADC)); in adc_context_update_buffer_pointer() 378 static int set_resolution(const struct adc_sequence *sequence) in set_resolution() argument 382 switch (sequence->resolution) { in set_resolution() 397 sequence->resolution); in set_resolution() 405 static int set_oversampling(const struct adc_sequence *sequence, in set_oversampling() argument 410 if ((active_channels > 1) && (sequence->oversampling > 0)) { in set_oversampling() [all …]
|
D | adc_smartbond_sdadc.c | 157 if (ctx->sequence.calibrate) { in adc_context_start_sampling() 164 val |= (ctx->sequence.oversampling - 7) << SDADC_SDADC_CTRL_REG_SDADC_OSR_Pos; in adc_context_start_sampling() 181 static int check_buffer_size(const struct adc_sequence *sequence, in check_buffer_size() argument 187 if (sequence->options) { in check_buffer_size() 188 needed_buffer_size *= (1 + sequence->options->extra_samplings); in check_buffer_size() 191 if (sequence->buffer_size < needed_buffer_size) { in check_buffer_size() 193 sequence->buffer_size, needed_buffer_size); in check_buffer_size() 201 const struct adc_sequence *sequence) in start_read() argument 206 if (sequence->oversampling < 7U || sequence->oversampling > 10) { in start_read() 211 if ((sequence->channels == 0) || in start_read() [all …]
|
D | adc_mcux_gau_adc.c | 190 const struct adc_sequence *sequence) in mcux_gau_adc_do_read() argument 198 if (sequence->channels & (0xFFFF << NUM_ADC_CHANNELS)) { in mcux_gau_adc_do_read() 205 num_channels += ((sequence->channels & (0x1 << i)) ? 1 : 0); in mcux_gau_adc_do_read() 209 if ((sequence->options != NULL && sequence->buffer_size < in mcux_gau_adc_do_read() 210 ((1 + sequence->options->extra_samplings) * num_channels)) || in mcux_gau_adc_do_read() 211 (sequence->options == NULL && sequence->buffer_size < num_channels)) { in mcux_gau_adc_do_read() 224 if (sequence->channels & (0x1 << channel)) { in mcux_gau_adc_do_read() 234 if (sequence->resolution == 12 || sequence->resolution == 11) { in mcux_gau_adc_do_read() 236 } else if (sequence->resolution == 14 || sequence->resolution == 13) { in mcux_gau_adc_do_read() 238 } else if (sequence->resolution == 16 || sequence->resolution == 15) { in mcux_gau_adc_do_read() [all …]
|
D | adc_ene_kb1200.c | 37 static bool adc_kb1200_validate_buffer_size(const struct adc_sequence *sequence) in adc_kb1200_validate_buffer_size() argument 44 if (chan_mask & sequence->channels) { in adc_kb1200_validate_buffer_size() 51 if (sequence->options) { in adc_kb1200_validate_buffer_size() 52 buff_need *= 1 + sequence->options->extra_samplings; in adc_kb1200_validate_buffer_size() 55 if (buff_need > sequence->buffer_size) { in adc_kb1200_validate_buffer_size() 69 static int adc_kb1200_start_read(const struct device *dev, const struct adc_sequence *sequence) in adc_kb1200_start_read() argument 75 if (!sequence->channels || (sequence->channels & ~BIT_MASK(ADC_MAX_CHAN))) { in adc_kb1200_start_read() 80 if (sequence->resolution != ADC_RESOLUTION) { in adc_kb1200_start_read() 85 if (!adc_kb1200_validate_buffer_size(sequence)) { in adc_kb1200_start_read() 91 data->buffer = sequence->buffer; in adc_kb1200_start_read() [all …]
|
D | adc_nrfx_adc.c | 133 static int check_buffer_size(const struct adc_sequence *sequence, in check_buffer_size() argument 139 if (sequence->options) { in check_buffer_size() 140 needed_buffer_size *= (1 + sequence->options->extra_samplings); in check_buffer_size() 143 if (sequence->buffer_size < needed_buffer_size) { in check_buffer_size() 145 sequence->buffer_size, needed_buffer_size); in check_buffer_size() 153 const struct adc_sequence *sequence) in start_read() argument 156 uint32_t selected_channels = sequence->channels; in start_read() 171 if (sequence->oversampling != 0U) { in start_read() 176 switch (sequence->resolution) { in start_read() 188 sequence->resolution); in start_read() [all …]
|
D | adc_smartbond_gpadc.c | 151 if (ctx->sequence.calibrate) { in adc_context_start_sampling() 175 static int check_buffer_size(const struct adc_sequence *sequence, in check_buffer_size() argument 181 if (sequence->options) { in check_buffer_size() 182 needed_buffer_size *= (1 + sequence->options->extra_samplings); in check_buffer_size() 185 if (sequence->buffer_size < needed_buffer_size) { in check_buffer_size() 187 sequence->buffer_size, needed_buffer_size); in check_buffer_size() 195 const struct adc_sequence *sequence) in start_read() argument 200 if (sequence->oversampling > 7U) { in start_read() 205 if ((sequence->channels == 0) || in start_read() 206 ((sequence->channels & ~BIT_MASK(SMARTBOND_ADC_CHANNEL_COUNT)) != 0)) { in start_read() [all …]
|
D | adc_ads7052.c | 68 const struct adc_sequence *sequence) in ads7052_validate_buffer_size() argument 73 channels = POPCOUNT(sequence->channels); in ads7052_validate_buffer_size() 76 if (sequence->options) { in ads7052_validate_buffer_size() 77 needed *= (1 + sequence->options->extra_samplings); in ads7052_validate_buffer_size() 80 if (sequence->buffer_size < needed) { in ads7052_validate_buffer_size() 110 static int ads7052_start_read(const struct device *dev, const struct adc_sequence *sequence) in ads7052_start_read() argument 116 if (sequence->resolution != ADS7052_RESOLUTION) { in ads7052_start_read() 117 LOG_ERR("unsupported resolution %d", sequence->resolution); in ads7052_start_read() 121 if (find_msb_set(sequence->channels) > config->channels) { in ads7052_start_read() 122 LOG_ERR("unsupported channels in mask: 0x%08x", sequence->channels); in ads7052_start_read() [all …]
|
D | adc_renesas_rz.c | 149 static int adc_rz_check_buffer_size(const struct device *dev, const struct adc_sequence *sequence) in adc_rz_check_buffer_size() argument 154 channels = POPCOUNT(sequence->channels); in adc_rz_check_buffer_size() 157 if (sequence->options) { in adc_rz_check_buffer_size() 158 needed *= (1 + sequence->options->extra_samplings); in adc_rz_check_buffer_size() 161 if (sequence->buffer_size < needed) { in adc_rz_check_buffer_size() 181 static int adc_rz_start_read(const struct device *dev, const struct adc_sequence *sequence) in adc_rz_start_read() argument 187 if (sequence->resolution > ADC_RZ_MAX_RESOLUTION || sequence->resolution == 0) { in adc_rz_start_read() 188 LOG_ERR("unsupported resolution %d", sequence->resolution); in adc_rz_start_read() 192 if ((sequence->channels & ~config->channel_available_mask) != 0) { in adc_rz_start_read() 193 LOG_ERR("unsupported channels in mask: 0x%08x", sequence->channels); in adc_rz_start_read() [all …]
|
D | adc_rpi_pico.c | 137 const struct adc_sequence *sequence) in adc_rpi_check_buffer_size() argument 145 if (mask & sequence->channels) { in adc_rpi_check_buffer_size() 151 if (sequence->options) { in adc_rpi_check_buffer_size() 152 needed *= (1 + sequence->options->extra_samplings); in adc_rpi_check_buffer_size() 155 if (sequence->buffer_size < needed) { in adc_rpi_check_buffer_size() 176 const struct adc_sequence *sequence) in adc_rpi_start_read() argument 182 if (sequence->resolution > ADC_RPI_MAX_RESOLUTION || in adc_rpi_start_read() 183 sequence->resolution == 0) { in adc_rpi_start_read() 184 LOG_ERR("unsupported resolution %d", sequence->resolution); in adc_rpi_start_read() 188 if (find_msb_set(sequence->channels) > config->num_channels) { in adc_rpi_start_read() [all …]
|
D | adc_sam0.c | 294 static int check_buffer_size(const struct adc_sequence *sequence, in check_buffer_size() argument 300 if (sequence->options) { in check_buffer_size() 301 needed_buffer_size *= (1U + sequence->options->extra_samplings); in check_buffer_size() 304 if (sequence->buffer_size < needed_buffer_size) { in check_buffer_size() 306 sequence->buffer_size, needed_buffer_size); in check_buffer_size() 313 const struct adc_sequence *sequence) in start_read() argument 320 if (sequence->oversampling > 10U) { in start_read() 325 adc->AVGCTRL.reg = ADC_AVGCTRL_SAMPLENUM(sequence->oversampling); in start_read() 326 if (sequence->oversampling < 4) { in start_read() 327 adc->AVGCTRL.reg |= ADC_AVGCTRL_ADJRES(sequence->oversampling); in start_read() [all …]
|
D | adc_renesas_ra.c | 154 static int adc_ra_check_buffer_size(const struct device *dev, const struct adc_sequence *sequence) in adc_ra_check_buffer_size() argument 159 channels = POPCOUNT(sequence->channels); in adc_ra_check_buffer_size() 162 if (sequence->options) { in adc_ra_check_buffer_size() 163 needed *= (1 + sequence->options->extra_samplings); in adc_ra_check_buffer_size() 166 if (sequence->buffer_size < needed) { in adc_ra_check_buffer_size() 186 static int adc_ra_start_read(const struct device *dev, const struct adc_sequence *sequence) in adc_ra_start_read() argument 192 if (sequence->resolution > ADC_RA_MAX_RESOLUTION || sequence->resolution == 0) { in adc_ra_start_read() 193 LOG_ERR("unsupported resolution %d", sequence->resolution); in adc_ra_start_read() 197 if ((sequence->channels & ~config->channel_available_mask) != 0) { in adc_ra_start_read() 198 LOG_ERR("unsupported channels in mask: 0x%08x", sequence->channels); in adc_ra_start_read() [all …]
|
D | adc_sam_afec.c | 157 data->channels = ctx->sequence.channels; in adc_context_start_sampling() 172 static int check_buffer_size(const struct adc_sequence *sequence, in check_buffer_size() argument 177 if (sequence->options) { in check_buffer_size() 178 needed_buffer_size *= (1 + sequence->options->extra_samplings); in check_buffer_size() 180 if (sequence->buffer_size < needed_buffer_size) { in check_buffer_size() 182 sequence->buffer_size, needed_buffer_size); in check_buffer_size() 189 const struct adc_sequence *sequence) in start_read() argument 193 uint32_t channels = sequence->channels; in start_read() 206 if (sequence->oversampling != 0U) { in start_read() 211 if (sequence->resolution != 12U) { in start_read() [all …]
|
D | adc_sam.c | 159 data->num_active_channels = count_bits(ctx->sequence.channels); in adc_context_start_sampling() 165 adc->ADC_CHER = ctx->sequence.channels; in adc_context_start_sampling() 181 static int check_buffer_size(const struct adc_sequence *sequence, in check_buffer_size() argument 186 if (sequence->options) { in check_buffer_size() 187 needed_buffer_size *= (1 + sequence->options->extra_samplings); in check_buffer_size() 190 if (sequence->buffer_size < needed_buffer_size) { in check_buffer_size() 192 sequence->buffer_size, needed_buffer_size); in check_buffer_size() 200 const struct adc_sequence *sequence) in start_read() argument 203 uint32_t channels = sequence->channels; in start_read() 215 if (sequence->oversampling != 0U) { in start_read() [all …]
|
D | adc_ambiq.c | 70 static int adc_ambiq_slot_config(const struct device *dev, const struct adc_sequence *sequence, in adc_ambiq_slot_config() argument 76 if (adc_ambiq_set_resolution(&ADCSlotConfig.ePrecisionMode, sequence->resolution) != 0) { in adc_ambiq_slot_config() 77 LOG_ERR("unsupported resolution %d", sequence->resolution); in adc_ambiq_slot_config() 127 static int adc_ambiq_check_buffer_size(const struct adc_sequence *sequence, uint8_t active_channels) in adc_ambiq_check_buffer_size() argument 133 if (sequence->options) { in adc_ambiq_check_buffer_size() 134 needed_buffer_size *= (1 + sequence->options->extra_samplings); in adc_ambiq_check_buffer_size() 137 if (sequence->buffer_size < needed_buffer_size) { in adc_ambiq_check_buffer_size() 138 LOG_DBG("Provided buffer is too small (%u/%u)", sequence->buffer_size, in adc_ambiq_check_buffer_size() 146 static int adc_ambiq_start_read(const struct device *dev, const struct adc_sequence *sequence) in adc_ambiq_start_read() argument 157 if (sequence->channels & ~BIT_MASK(cfg->num_channels)) { in adc_ambiq_start_read() [all …]
|
D | adc_mcp320x.c | 81 const struct adc_sequence *sequence) in mcp320x_validate_buffer_size() argument 89 if (mask & sequence->channels) { in mcp320x_validate_buffer_size() 95 if (sequence->options) { in mcp320x_validate_buffer_size() 96 needed *= (1 + sequence->options->extra_samplings); in mcp320x_validate_buffer_size() 99 if (sequence->buffer_size < needed) { in mcp320x_validate_buffer_size() 107 const struct adc_sequence *sequence) in mcp320x_start_read() argument 113 if (sequence->resolution != MCP320X_RESOLUTION) { in mcp320x_start_read() 114 LOG_ERR("unsupported resolution %d", sequence->resolution); in mcp320x_start_read() 118 if (find_msb_set(sequence->channels) > config->channels) { in mcp320x_start_read() 120 sequence->channels); in mcp320x_start_read() [all …]
|
D | adc_ifx_cat1.c | 197 static int validate_buffer_size(const struct adc_sequence *sequence) in validate_buffer_size() argument 203 if (sequence->channels & BIT(i)) { in validate_buffer_size() 210 if (sequence->options) { in validate_buffer_size() 211 total_buffer_size *= (1 + sequence->options->extra_samplings); in validate_buffer_size() 214 if (sequence->buffer_size < total_buffer_size) { in validate_buffer_size() 222 const struct adc_sequence *sequence) in start_read() argument 225 uint32_t channels = sequence->channels; in start_read() 228 if (sequence->resolution != ADC_CAT1_RESOLUTION) { in start_read() 229 LOG_ERR("Invalid ADC resolution (%d)", sequence->resolution); in start_read() 238 if (sequence->oversampling) { in start_read() [all …]
|
D | adc_ad559x.c | 65 const struct adc_sequence *sequence) in adc_ad559x_validate_buffer_size() argument 70 channels = POPCOUNT(sequence->channels); in adc_ad559x_validate_buffer_size() 73 if (sequence->buffer_size < needed) { in adc_ad559x_validate_buffer_size() 80 static int adc_ad559x_start_read(const struct device *dev, const struct adc_sequence *sequence) in adc_ad559x_start_read() argument 85 if (sequence->resolution != AD559X_ADC_RESOLUTION) { in adc_ad559x_start_read() 86 LOG_ERR("invalid resolution %d", sequence->resolution); in adc_ad559x_start_read() 90 if (find_msb_set(sequence->channels) > AD559X_PIN_MAX) { in adc_ad559x_start_read() 91 LOG_ERR("invalid channels in mask: 0x%08x", sequence->channels); in adc_ad559x_start_read() 95 ret = adc_ad559x_validate_buffer_size(dev, sequence); in adc_ad559x_start_read() 101 data->buffer = sequence->buffer; in adc_ad559x_start_read() [all …]
|
D | adc_nxp_s32_adc_sar.c | 121 const struct adc_sequence *sequence) in adc_nxp_s32_validate_buffer_size() argument 126 active_channels = POPCOUNT(sequence->channels); in adc_nxp_s32_validate_buffer_size() 129 if (sequence->options) { in adc_nxp_s32_validate_buffer_size() 130 needed_size *= (1 + sequence->options->extra_samplings); in adc_nxp_s32_validate_buffer_size() 133 if (sequence->buffer_size < needed_size) { in adc_nxp_s32_validate_buffer_size() 203 const struct adc_sequence *sequence) in adc_nxp_s32_start_read_async() argument 211 if (find_msb_set(sequence->channels) > data->num_channels) { in adc_nxp_s32_start_read_async() 216 error = adc_nxp_s32_validate_buffer_size(dev, sequence); in adc_nxp_s32_start_read_async() 223 error = adc_nxp_s32_set_averaging(dev, sequence->oversampling); in adc_nxp_s32_start_read_async() 228 if (sequence->oversampling) { in adc_nxp_s32_start_read_async() [all …]
|
D | iadc_gecko.c | 80 static int adc_gecko_check_buffer_size(const struct adc_sequence *sequence, in adc_gecko_check_buffer_size() argument 87 if (sequence->options) { in adc_gecko_check_buffer_size() 88 needed_buffer_size *= (1 + sequence->options->extra_samplings); in adc_gecko_check_buffer_size() 91 if (sequence->buffer_size < needed_buffer_size) { in adc_gecko_check_buffer_size() 93 sequence->buffer_size, needed_buffer_size); in adc_gecko_check_buffer_size() 100 static int adc_gecko_check_resolution(const struct adc_sequence *sequence) in adc_gecko_check_resolution() argument 102 int value = sequence->resolution; in adc_gecko_check_resolution() 112 static int start_read(const struct device *dev, const struct adc_sequence *sequence) in start_read() argument 122 if (sequence->channels == 0) { in start_read() 127 if (sequence->oversampling) { in start_read() [all …]
|
D | adc_b91.c | 47 static int adc_b91_validate_buffer_size(const struct adc_sequence *sequence) in adc_b91_validate_buffer_size() argument 51 if (sequence->options) { in adc_b91_validate_buffer_size() 52 needed *= (1 + sequence->options->extra_samplings); in adc_b91_validate_buffer_size() 55 if (sequence->buffer_size < needed) { in adc_b91_validate_buffer_size() 63 static int adc_b91_validate_sequence(const struct adc_sequence *sequence) in adc_b91_validate_sequence() argument 67 if (sequence->channels != BIT(0)) { in adc_b91_validate_sequence() 72 if (sequence->oversampling) { in adc_b91_validate_sequence() 77 status = adc_b91_validate_buffer_size(sequence); in adc_b91_validate_sequence() 175 static int adc_b91_adc_start_read(const struct device *dev, const struct adc_sequence *sequence) in adc_b91_adc_start_read() argument 181 status = adc_b91_validate_sequence(sequence); in adc_b91_adc_start_read() [all …]
|
D | adc_xmc4xxx.c | 87 static int adc_xmc4xxx_validate_buffer_size(const struct adc_sequence *sequence) in adc_xmc4xxx_validate_buffer_size() argument 93 if (sequence->channels & BIT(i)) { in adc_xmc4xxx_validate_buffer_size() 100 if (sequence->options) { in adc_xmc4xxx_validate_buffer_size() 101 total_buffer_size *= (1 + sequence->options->extra_samplings); in adc_xmc4xxx_validate_buffer_size() 104 if (sequence->buffer_size < total_buffer_size) { in adc_xmc4xxx_validate_buffer_size() 112 const struct adc_sequence *sequence) in start_read() argument 118 uint32_t requested_channels = sequence->channels; in start_read() 119 uint8_t resolution = sequence->resolution; in start_read() 133 if (sequence->oversampling) { in start_read() 138 ret = adc_xmc4xxx_validate_buffer_size(sequence); in start_read() [all …]
|
D | adc_cc32xx.c | 85 data->channels = ctx->sequence.channels; in adc_context_start_sampling() 89 if (ctx->sequence.channels & BIT(i)) { in adc_context_start_sampling() 174 const struct adc_sequence *sequence, in cc32xx_read() argument 182 if (sequence->resolution != 12) { in cc32xx_read() 184 sequence->resolution); in cc32xx_read() 190 if (!(sequence->channels & BIT(i))) { in cc32xx_read() 196 if (sequence->options) { in cc32xx_read() 197 exp_size *= (1 + sequence->options->extra_samplings); in cc32xx_read() 200 if (sequence->buffer_size < exp_size) { in cc32xx_read() 202 exp_size, sequence->buffer_size); in cc32xx_read() [all …]
|
/Zephyr-latest/samples/boards/google/twinkie_v2/pda/src/ |
D | meas.c | 28 struct adc_sequence sequence = { in meas_vbus_v() local 34 adc_sequence_init_dt(&adc_vbus_v.port, &sequence); in meas_vbus_v() 36 ret = adc_read_dt(&adc_vbus_v.port, &sequence); in meas_vbus_v() 61 struct adc_sequence sequence = { in meas_vbus_c() local 67 adc_sequence_init_dt(&adc_vbus_c.port, &sequence); in meas_vbus_c() 69 ret = adc_read(adc_vbus_c.port.dev, &sequence); in meas_vbus_c()
|