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 |
55 | |