STRUCT STM32_ADC_REGSPEC(9)
β¨ struct stm32_adc_regspec(9) β¨
okay so this is the Kernel API Manual page for struct stm32_adc_regspec, and bestie, it's literally the master map of all the STM32 ADC registers π
like every offset and bitfield the driver needs, all chillin' in one struct. it's giving "table of contents but make it silicon" π¦
πΈ NAME πΈ
struct stm32_adc_regspec β stm32 registers definition. that's it, that's the whole vibe β¨
π SYNOPSIS π
struct stm32_adc_regspec {
const u32 dr;
const struct stm32_adc_regs ier_eoc;
const struct stm32_adc_regs ier_ovr;
const struct stm32_adc_regs isr_eoc;
const struct stm32_adc_regs isr_ovr;
const struct stm32_adc_regs *sqr;
const struct stm32_adc_regs exten;
const struct stm32_adc_regs extsel;
const struct stm32_adc_regs res;
const struct stm32_adc_regs difsel;
const u32 smpr[2];
const struct stm32_adc_regs *smp_bits;
const struct stm32_adc_regs or_vddcore;
const struct stm32_adc_regs or_vddcpu;
const struct stm32_adc_regs or_vddq_ddr;
const struct stm32_adc_regs ccr_vbat;
const struct stm32_adc_regs ccr_vref;
};
like look at her. seventeen members. main character energy fr fr π
π Members π
drβ data register offset. where the actual numbers land πier_eocβ interrupt enable register &eociebitfield β¨ier_ovrβ interrupt enable register & overrun bitfield π₯isr_eocβ interrupt status register &eocbitfield β¨isr_ovrβ interrupt status register & overrun bitfield π₯sqrβ reference to sequence registers array. the whole queue, love that for us πextenβ trigger control register & bitfield πextselβ trigger selection register & bitfield πresβ resolution selection register & bitfield π¦difselβ differential mode selection register & bitfield π¦smprβsmpr1&smpr2registers offset array πsmp_bitsβsmpr1&smpr2index and bitfields πor_vddcoreβ option register &vddcorebitfield πor_vddcpuβ option register &vddcpubitfield πor_vddq_ddrβ option register &vddq_ddrbitfield πccr_vbatβ common register &vbatbitfield πccr_vrefβ common register &vrefintbitfield π
no cap, every single one of these is const β this struct is β¨read-onlyβ¨ and she is NOT taking notes from you π
π¦ SEE ALSO π¦
the kernel file ./drivers/iio/adc/stm32-adc.c, plus the whole friend group ππ«Ά
struct stm32_adc_ic(9)struct stm32_adc_trig_info(9)struct stm32_adc_calib(9)struct stm32_adc_regs(9)struct stm32_adc_vrefint(9)struct stm32_adc_cfg(9)struct stm32_adc(9)struct stm32_adc_info(9)stm32_adc_conv_irq_enable(9)stm32_adc_conv_irq_disable(9)stm32f4_adc_start_conv(9)stm32h7_adc_read_selfcalib(9)stm32h7_adc_restore_selfcalib(9)stm32h7_adc_selfcalib(9)stm32h7_adc_check_selfcalib(9)stm32h7_adc_prepare(9)stm32_adc_conf_scan_seq(9)stm32_adc_get_trig_extsel(9)stm32_adc_set_trig(9)stm32_adc_single_conv(9)stm32_adc_validate_trigger(9)stm32_adc_debugfs_reg_access(9)
and that's the page, bestie!! π§π it lives over in ./drivers/iio/adc, dated October 2026, and it's filed under struct stm32_adc_regspec(9). slay, go read the register bits, mwah πβ
π¦ 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