Merge tag 'iio-fixes-for-5.3a' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23...
[platform/kernel/linux-starfive.git] / drivers / mfd / madera.h
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * MFD internals for Cirrus Logic Madera codecs
4  *
5  * Copyright 2015-2018 Cirrus Logic
6  */
7
8 #ifndef MADERA_MFD_H
9 #define MADERA_MFD_H
10
11 #include <linux/of.h>
12 #include <linux/pm.h>
13
14 struct madera;
15
16 extern const struct dev_pm_ops madera_pm_ops;
17 extern const struct of_device_id madera_of_match[];
18
19 int madera_dev_init(struct madera *madera);
20 int madera_dev_exit(struct madera *madera);
21
22 const char *madera_name_from_type(enum madera_type type);
23
24 extern const struct regmap_config cs47l15_16bit_spi_regmap;
25 extern const struct regmap_config cs47l15_32bit_spi_regmap;
26 extern const struct regmap_config cs47l15_16bit_i2c_regmap;
27 extern const struct regmap_config cs47l15_32bit_i2c_regmap;
28 int cs47l15_patch(struct madera *madera);
29
30 extern const struct regmap_config cs47l35_16bit_spi_regmap;
31 extern const struct regmap_config cs47l35_32bit_spi_regmap;
32 extern const struct regmap_config cs47l35_16bit_i2c_regmap;
33 extern const struct regmap_config cs47l35_32bit_i2c_regmap;
34 int cs47l35_patch(struct madera *madera);
35
36 extern const struct regmap_config cs47l85_16bit_spi_regmap;
37 extern const struct regmap_config cs47l85_32bit_spi_regmap;
38 extern const struct regmap_config cs47l85_16bit_i2c_regmap;
39 extern const struct regmap_config cs47l85_32bit_i2c_regmap;
40 int cs47l85_patch(struct madera *madera);
41
42 extern const struct regmap_config cs47l90_16bit_spi_regmap;
43 extern const struct regmap_config cs47l90_32bit_spi_regmap;
44 extern const struct regmap_config cs47l90_16bit_i2c_regmap;
45 extern const struct regmap_config cs47l90_32bit_i2c_regmap;
46 int cs47l90_patch(struct madera *madera);
47
48 extern const struct regmap_config cs47l92_16bit_spi_regmap;
49 extern const struct regmap_config cs47l92_32bit_spi_regmap;
50 extern const struct regmap_config cs47l92_16bit_i2c_regmap;
51 extern const struct regmap_config cs47l92_32bit_i2c_regmap;
52 int cs47l92_patch(struct madera *madera);
53
54 #endif