Loading...
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * wm5102.h -- WM5102 MFD internals
4 *
5 * Copyright 2012 Wolfson Microelectronics plc
6 *
7 * Author: Mark Brown <broonie@opensource.wolfsonmicro.com>
8 */
9
10#ifndef _WM5102_H
11#define _WM5102_H
12
13#include <linux/of.h>
14#include <linux/regmap.h>
15#include <linux/pm.h>
16
17extern const struct regmap_config wm5102_i2c_regmap;
18extern const struct regmap_config wm5102_spi_regmap;
19
20extern const struct regmap_config wm5110_i2c_regmap;
21extern const struct regmap_config wm5110_spi_regmap;
22
23extern const struct regmap_config cs47l24_spi_regmap;
24
25extern const struct regmap_config wm8997_i2c_regmap;
26
27extern const struct regmap_config wm8998_i2c_regmap;
28
29extern const struct dev_pm_ops arizona_pm_ops;
30
31extern const struct of_device_id arizona_of_match[];
32
33extern const struct regmap_irq_chip wm5102_aod;
34extern const struct regmap_irq_chip wm5102_irq;
35
36extern const struct regmap_irq_chip wm5110_aod;
37extern const struct regmap_irq_chip wm5110_irq;
38extern const struct regmap_irq_chip wm5110_revd_irq;
39
40extern const struct regmap_irq_chip cs47l24_irq;
41
42extern const struct regmap_irq_chip wm8997_aod;
43extern const struct regmap_irq_chip wm8997_irq;
44
45extern struct regmap_irq_chip wm8998_aod;
46extern struct regmap_irq_chip wm8998_irq;
47
48int arizona_dev_init(struct arizona *arizona);
49int arizona_dev_exit(struct arizona *arizona);
50int arizona_irq_init(struct arizona *arizona);
51int arizona_irq_exit(struct arizona *arizona);
52
53#ifdef CONFIG_OF
54unsigned long arizona_of_get_type(struct device *dev);
55#else
56static inline unsigned long arizona_of_get_type(struct device *dev)
57{
58 return 0;
59}
60#endif
61
62#endif
1/*
2 * wm5102.h -- WM5102 MFD internals
3 *
4 * Copyright 2012 Wolfson Microelectronics plc
5 *
6 * Author: Mark Brown <broonie@opensource.wolfsonmicro.com>
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11 */
12
13#ifndef _WM5102_H
14#define _WM5102_H
15
16#include <linux/of.h>
17#include <linux/regmap.h>
18#include <linux/pm.h>
19
20extern const struct regmap_config wm5102_i2c_regmap;
21extern const struct regmap_config wm5102_spi_regmap;
22
23extern const struct regmap_config wm5110_i2c_regmap;
24extern const struct regmap_config wm5110_spi_regmap;
25
26extern const struct regmap_config cs47l24_spi_regmap;
27
28extern const struct regmap_config wm8997_i2c_regmap;
29
30extern const struct regmap_config wm8998_i2c_regmap;
31
32extern const struct dev_pm_ops arizona_pm_ops;
33
34extern const struct of_device_id arizona_of_match[];
35
36extern const struct regmap_irq_chip wm5102_aod;
37extern const struct regmap_irq_chip wm5102_irq;
38
39extern const struct regmap_irq_chip wm5110_aod;
40extern const struct regmap_irq_chip wm5110_irq;
41extern const struct regmap_irq_chip wm5110_revd_irq;
42
43extern const struct regmap_irq_chip cs47l24_irq;
44
45extern const struct regmap_irq_chip wm8997_aod;
46extern const struct regmap_irq_chip wm8997_irq;
47
48extern struct regmap_irq_chip wm8998_aod;
49extern struct regmap_irq_chip wm8998_irq;
50
51int arizona_dev_init(struct arizona *arizona);
52int arizona_dev_exit(struct arizona *arizona);
53int arizona_irq_init(struct arizona *arizona);
54int arizona_irq_exit(struct arizona *arizona);
55
56#ifdef CONFIG_OF
57unsigned long arizona_of_get_type(struct device *dev);
58#else
59static inline unsigned long arizona_of_get_type(struct device *dev)
60{
61 return 0;
62}
63#endif
64
65#endif