0001
0002
0003
0004
0005
0006
0007
0008 #ifndef MADERA_MFD_H
0009 #define MADERA_MFD_H
0010
0011 #include <linux/of.h>
0012 #include <linux/pm.h>
0013
0014 struct madera;
0015
0016 extern const struct dev_pm_ops madera_pm_ops;
0017 extern const struct of_device_id madera_of_match[];
0018
0019 int madera_dev_init(struct madera *madera);
0020 int madera_dev_exit(struct madera *madera);
0021
0022 const char *madera_name_from_type(enum madera_type type);
0023
0024 extern const struct regmap_config cs47l15_16bit_spi_regmap;
0025 extern const struct regmap_config cs47l15_32bit_spi_regmap;
0026 extern const struct regmap_config cs47l15_16bit_i2c_regmap;
0027 extern const struct regmap_config cs47l15_32bit_i2c_regmap;
0028 int cs47l15_patch(struct madera *madera);
0029
0030 extern const struct regmap_config cs47l35_16bit_spi_regmap;
0031 extern const struct regmap_config cs47l35_32bit_spi_regmap;
0032 extern const struct regmap_config cs47l35_16bit_i2c_regmap;
0033 extern const struct regmap_config cs47l35_32bit_i2c_regmap;
0034 int cs47l35_patch(struct madera *madera);
0035
0036 extern const struct regmap_config cs47l85_16bit_spi_regmap;
0037 extern const struct regmap_config cs47l85_32bit_spi_regmap;
0038 extern const struct regmap_config cs47l85_16bit_i2c_regmap;
0039 extern const struct regmap_config cs47l85_32bit_i2c_regmap;
0040 int cs47l85_patch(struct madera *madera);
0041
0042 extern const struct regmap_config cs47l90_16bit_spi_regmap;
0043 extern const struct regmap_config cs47l90_32bit_spi_regmap;
0044 extern const struct regmap_config cs47l90_16bit_i2c_regmap;
0045 extern const struct regmap_config cs47l90_32bit_i2c_regmap;
0046 int cs47l90_patch(struct madera *madera);
0047
0048 extern const struct regmap_config cs47l92_16bit_spi_regmap;
0049 extern const struct regmap_config cs47l92_32bit_spi_regmap;
0050 extern const struct regmap_config cs47l92_16bit_i2c_regmap;
0051 extern const struct regmap_config cs47l92_32bit_i2c_regmap;
0052 int cs47l92_patch(struct madera *madera);
0053
0054 #endif