]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - drivers/iio/dac/stm32-dac-core.h
Merge tag 'jfs-4.13' of git://github.com/kleikamp/linux-shaggy
[mirror_ubuntu-bionic-kernel.git] / drivers / iio / dac / stm32-dac-core.h
1 /*
2 * This file is part of STM32 DAC driver
3 *
4 * Copyright (C) 2017, STMicroelectronics - All Rights Reserved
5 * Author: Fabrice Gasnier <fabrice.gasnier@st.com>.
6 *
7 * License type: GPLv2
8 *
9 * This program is free software; you can redistribute it and/or modify it
10 * under the terms of the GNU General Public License version 2 as published by
11 * the Free Software Foundation.
12 *
13 * This program is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15 * or FITNESS FOR A PARTICULAR PURPOSE.
16 * See the GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License along with
19 * this program. If not, see <http://www.gnu.org/licenses/>.
20 */
21
22 #ifndef __STM32_DAC_CORE_H
23 #define __STM32_DAC_CORE_H
24
25 #include <linux/regmap.h>
26
27 /* STM32 DAC registers */
28 #define STM32_DAC_CR 0x00
29 #define STM32_DAC_DHR12R1 0x08
30 #define STM32_DAC_DHR12R2 0x14
31 #define STM32_DAC_DOR1 0x2C
32 #define STM32_DAC_DOR2 0x30
33
34 /* STM32_DAC_CR bit fields */
35 #define STM32_DAC_CR_EN1 BIT(0)
36 #define STM32H7_DAC_CR_HFSEL BIT(15)
37 #define STM32_DAC_CR_EN2 BIT(16)
38
39 /**
40 * struct stm32_dac_common - stm32 DAC driver common data (for all instances)
41 * @regmap: DAC registers shared via regmap
42 * @vref_mv: reference voltage (mv)
43 * @hfsel: high speed bus clock selected
44 */
45 struct stm32_dac_common {
46 struct regmap *regmap;
47 int vref_mv;
48 bool hfsel;
49 };
50
51 #endif