From b5cd432df8f336c90d530b5d55fda7f2c25472c2 Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Tue, 3 May 2022 22:41:45 +0000 Subject: adc: convert to new style Converted the old STM32 headers to new style and copied offsets to platform data. Signed-off-by: Karl Palsson --- adc/stm32_adc.h | 83 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 adc/stm32_adc.h (limited to 'adc/stm32_adc.h') diff --git a/adc/stm32_adc.h b/adc/stm32_adc.h new file mode 100644 index 0000000..6216581 --- /dev/null +++ b/adc/stm32_adc.h @@ -0,0 +1,83 @@ +#pragma once + +#include + +struct STM32_ADC_reg_v1_t { + volatile uint32_t SR; + volatile uint32_t CR1; + volatile uint32_t CR2; + volatile uint32_t SMPR1; + volatile uint32_t SMPR2; + volatile uint32_t JOFR1; + volatile uint32_t JOFR2; + volatile uint32_t JOFR3; + volatile uint32_t JOFR4; + volatile uint32_t HTR; + volatile uint32_t LTR; + volatile uint32_t SQR1; + volatile uint32_t SQR2; + volatile uint32_t SQR3; + volatile uint32_t JSQR; + volatile uint32_t JDR1; + volatile uint32_t JDR2; + volatile uint32_t JDR3; + volatile uint32_t JDR4; + volatile uint32_t DR; +}; + + +struct STM32_ADC_reg_v2_t { + volatile uint32_t ISR; + volatile uint32_t IER; + volatile uint32_t CR; + volatile uint32_t CFGR; + volatile uint32_t CFGR2; + volatile uint32_t SMPR1; + volatile uint32_t SMPR2; + uint32_t _reserved1; + volatile uint32_t TR1; + volatile uint32_t TR2; + volatile uint32_t TR3; + uint32_t _reserved2; + volatile uint32_t SQR1; + volatile uint32_t SQR2; + volatile uint32_t SQR3; + volatile uint32_t SQR4; + volatile uint32_t DR; + uint32_t _reserved3[2]; + volatile uint32_t JSQR; + uint32_t _reserved4[4]; + volatile uint32_t OFR1; + volatile uint32_t OFR2; + volatile uint32_t OFR3; + volatile uint32_t OFR4; + uint32_t _reserved5[4]; + volatile uint32_t JDR1; + volatile uint32_t JDR2; + volatile uint32_t JDR3; + volatile uint32_t JDR4; + uint32_t _reserved6[4]; + volatile uint32_t AWD2CR; + volatile uint32_t AWD3CR; + uint32_t _reserved7[2]; + volatile uint32_t DIFSEL; + volatile uint32_t CALFACT; +}; + +struct STM32_ADC_COMMON_reg_v2_t { + volatile uint32_t CSR; + uint32_t _reserved1; + volatile uint32_t CCR; +}; + +template +class STM32_ADC_t : public mmio_ptr { + public: + using mmio_ptr::ptr; +}; + +template +class STM32_ADC_COMMON_t : public mmio_ptr { + public: + using mmio_ptr::ptr; +}; -- cgit v1.2.3