xref: /linux/sound/hda/codecs/side-codecs/aw88399_hda.h (revision e5c91aac491def6ab3f90c4cc246e3fcb0f8f058)
1 /* SPDX-License-Identifier: GPL-2.0-only
2  *
3  * AW88399 HDA side codec driver
4  */
5 
6 #ifndef __AW88399_HDA_H__
7 #define __AW88399_HDA_H__
8 
9 #include <linux/device.h>
10 #include <linux/gpio/consumer.h>
11 #include <sound/aw88399.h>
12 
13 struct aw88399;
14 struct aw_device;
15 
16 struct aw88399_hda {
17 	struct device *dev;
18 	struct regmap *regmap;
19 	struct gpio_desc *reset_gpio;
20 	struct aw_device *aw_dev;
21 	struct aw88399 *core;
22 	bool bsts_unreliable;
23 
24 	const char *acpi_subsystem_id;
25 	int index;
26 	int channel;
27 
28 	bool playing;
29 };
30 
31 int aw88399_hda_probe(struct device *dev, struct regmap *regmap);
32 void aw88399_hda_remove(struct device *dev);
33 
34 extern const struct dev_pm_ops aw88399_hda_pm_ops;
35 
36 #endif /* __AW88399_HDA_H__ */
37