Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * MFD internals for Cirrus Logic Madera codecs
0004  *
0005  * Copyright 2015-2018 Cirrus Logic
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