1*6e93e261SBenjamin Gaignard /* SPDX-License-Identifier: GPL-2.0 */ 24d4b3052SFabrice Gasnier /* 34d4b3052SFabrice Gasnier * This file is part of STM32 DAC driver 44d4b3052SFabrice Gasnier * 54d4b3052SFabrice Gasnier * Copyright (C) 2017, STMicroelectronics - All Rights Reserved 64d4b3052SFabrice Gasnier * Author: Fabrice Gasnier <fabrice.gasnier@st.com>. 74d4b3052SFabrice Gasnier */ 84d4b3052SFabrice Gasnier 94d4b3052SFabrice Gasnier #ifndef __STM32_DAC_CORE_H 104d4b3052SFabrice Gasnier #define __STM32_DAC_CORE_H 114d4b3052SFabrice Gasnier 124d4b3052SFabrice Gasnier #include <linux/regmap.h> 134d4b3052SFabrice Gasnier 144d4b3052SFabrice Gasnier /* STM32 DAC registers */ 154d4b3052SFabrice Gasnier #define STM32_DAC_CR 0x00 164d4b3052SFabrice Gasnier #define STM32_DAC_DHR12R1 0x08 174d4b3052SFabrice Gasnier #define STM32_DAC_DHR12R2 0x14 184d4b3052SFabrice Gasnier #define STM32_DAC_DOR1 0x2C 194d4b3052SFabrice Gasnier #define STM32_DAC_DOR2 0x30 204d4b3052SFabrice Gasnier 214d4b3052SFabrice Gasnier /* STM32_DAC_CR bit fields */ 224d4b3052SFabrice Gasnier #define STM32_DAC_CR_EN1 BIT(0) 234d4b3052SFabrice Gasnier #define STM32H7_DAC_CR_HFSEL BIT(15) 244d4b3052SFabrice Gasnier #define STM32_DAC_CR_EN2 BIT(16) 254d4b3052SFabrice Gasnier 264d4b3052SFabrice Gasnier /** 274d4b3052SFabrice Gasnier * struct stm32_dac_common - stm32 DAC driver common data (for all instances) 284d4b3052SFabrice Gasnier * @regmap: DAC registers shared via regmap 294d4b3052SFabrice Gasnier * @vref_mv: reference voltage (mv) 304d4b3052SFabrice Gasnier * @hfsel: high speed bus clock selected 314d4b3052SFabrice Gasnier */ 324d4b3052SFabrice Gasnier struct stm32_dac_common { 334d4b3052SFabrice Gasnier struct regmap *regmap; 344d4b3052SFabrice Gasnier int vref_mv; 354d4b3052SFabrice Gasnier bool hfsel; 364d4b3052SFabrice Gasnier }; 374d4b3052SFabrice Gasnier 384d4b3052SFabrice Gasnier #endif 39