]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
91f4debf LPC |
2 | |
3 | #ifndef __LINUX_JZ4740_ADC | |
4 | #define __LINUX_JZ4740_ADC | |
5 | ||
313162d0 | 6 | struct device; |
91f4debf LPC |
7 | |
8 | /* | |
9 | * jz4740_adc_set_config - Configure a JZ4740 adc device | |
10 | * @dev: Pointer to a jz4740-adc device | |
11 | * @mask: Mask for the config value to be set | |
12 | * @val: Value to be set | |
13 | * | |
14 | * This function can be used by the JZ4740 ADC mfd cells to configure their | |
15 | * options in the shared config register. | |
16 | */ | |
17 | int jz4740_adc_set_config(struct device *dev, uint32_t mask, uint32_t val); | |
18 | ||
19 | #define JZ_ADC_CONFIG_SPZZ BIT(31) | |
20 | #define JZ_ADC_CONFIG_EX_IN BIT(30) | |
21 | #define JZ_ADC_CONFIG_DNUM_MASK (0x7 << 16) | |
22 | #define JZ_ADC_CONFIG_DMA_ENABLE BIT(15) | |
23 | #define JZ_ADC_CONFIG_XYZ_MASK (0x2 << 13) | |
24 | #define JZ_ADC_CONFIG_SAMPLE_NUM_MASK (0x7 << 10) | |
25 | #define JZ_ADC_CONFIG_CLKDIV_MASK (0xf << 5) | |
26 | #define JZ_ADC_CONFIG_BAT_MB BIT(4) | |
27 | ||
28 | #define JZ_ADC_CONFIG_DNUM(dnum) ((dnum) << 16) | |
29 | #define JZ_ADC_CONFIG_XYZ_OFFSET(dnum) ((xyz) << 13) | |
30 | #define JZ_ADC_CONFIG_SAMPLE_NUM(x) ((x) << 10) | |
31 | #define JZ_ADC_CONFIG_CLKDIV(div) ((div) << 5) | |
32 | ||
33 | #endif |