xref: /linux/sound/soc/codecs/lpass-macro-common.h (revision 2573c25e2c482b53b6e1142ff3cd28f6de13e659)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * Copyright (c) 2022, The Linux Foundation. All rights reserved.
4  */
5 
6 #ifndef __LPASS_MACRO_COMMON_H__
7 #define __LPASS_MACRO_COMMON_H__
8 
9 /* NPL clock is expected */
10 #define LPASS_MACRO_FLAG_HAS_NPL_CLOCK		BIT(0)
11 /* The soundwire block should be internally reset at probe */
12 #define LPASS_MACRO_FLAG_RESET_SWR		BIT(1)
13 
14 enum lpass_version {
15 	LPASS_VER_9_0_0,
16 	LPASS_VER_9_2_0,
17 	LPASS_VER_10_0_0,
18 	LPASS_VER_11_0_0,
19 };
20 
21 struct lpass_macro {
22 	struct device *macro_pd;
23 	struct device *dcodec_pd;
24 };
25 
26 struct lpass_macro *lpass_macro_pds_init(struct device *dev);
27 void lpass_macro_pds_exit(struct lpass_macro *pds);
28 
29 #endif /* __LPASS_MACRO_COMMON_H__ */
30