STRUCT ADC5_CHANNEL_COMMON_PROP(9)
π NAME π
okay so bestie, gather round β struct adc5_channel_common_prop is the ADC channel properties struct, and the whole vibe is that it's the stuff common to ADC and TM. both of them. shared. iconic behavior honestly β¨
this is a page from the Kernel API Manual, section 9 β yes we're in the big-kid kernel docs now, and you're gonna slay it π«Ά
β¨ SYNOPSIS β¨
here's the whole struct, no cap, every field exactly as it lives:
struct adc5_channel_common_prop {
unsigned int channel;
enum adc5_cal_method cal_method;
unsigned int decimation;
unsigned int sid;
const char *label;
unsigned int prescale;
unsigned int hw_settle_time_us;
unsigned int avg_samples;
enum vadc_scale_fn_type scale_fn_type;
};
like look at that. that's the whole thing. nine fields and every single one is doing a job π
π Members π
channelβ the channel number, bestie. if you need to know which channel, go refer to the channel list (iykyk). π’cal_methodβ the calibration method. it's anenum adc5_cal_method, so it's giving "pick from the approved list" energy.decimationβ the sampling rate supported for the channel. fancy word, real job βsidβ the ID of the PMIC that owns the channel. yes, the channel has an owner. main character energy πlabelβ the channel name used in device tree. it's aconst char *, so it's literally a little string of a name π·οΈprescaleβ channel scaling performed on the input signal. signal goes in, gets scaled, we move πΈhw_settle_time_usβ the time between AMUX being configured and the start of conversion, measured in uS. it's the little pause where the hardware gets its life together πavg_samplesβ the ability to provide a single result from the ADC that is an average of multiple measurements. so instead of one chaotic reading you get the group-chat consensus πscale_fn_typeβ anenum vadc_scale_fn_typethat represents the scaling function used to convert voltage into whatever physical units the client wants for the channel. the converter. the translator. the diplomat π§
ok real talk: none of these are optional vibes β each one is a documented field on the struct, so don't go inventing extra ones, bestie π
π SEE ALSO π
- the kernel file
./include/linux/iio/adc/qcom-adc5-gen3-common.hβ go read it, it's the source of truth fr fr struct adc5_sdam_data(9)struct adc5_device_data(9)struct tm5_aux_dev_wrapper(9)
all three of those are structs with their own (9) pages, so matching bestie sets π
π¦ sign-off π¦
and that's the page!! source is ./include/linux/iio/adc, dated October 2026, and the title is struct adc5..._common_prop(9) in case you were wondering where the header went π«Ά go forth and configure your channels, you absolute legend ππ₯
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms