xref: /linux/include/soc/spacemit/ccu.h (revision c17ee635fd3a482b2ad2bf5e269755c2eae5f25e)
1*2b7a02c3SYixun Lan /* SPDX-License-Identifier: GPL-2.0-only */
2*2b7a02c3SYixun Lan 
3*2b7a02c3SYixun Lan #ifndef __SOC_SPACEMIT_CCU_H__
4*2b7a02c3SYixun Lan #define __SOC_SPACEMIT_CCU_H__
5*2b7a02c3SYixun Lan 
6*2b7a02c3SYixun Lan #include <linux/auxiliary_bus.h>
7*2b7a02c3SYixun Lan #include <linux/regmap.h>
8*2b7a02c3SYixun Lan 
9*2b7a02c3SYixun Lan /* Auxiliary device used to represent a CCU reset controller */
10*2b7a02c3SYixun Lan struct spacemit_ccu_adev {
11*2b7a02c3SYixun Lan 	struct auxiliary_device adev;
12*2b7a02c3SYixun Lan 	struct regmap *regmap;
13*2b7a02c3SYixun Lan };
14*2b7a02c3SYixun Lan 
15*2b7a02c3SYixun Lan static inline struct spacemit_ccu_adev *
16*2b7a02c3SYixun Lan to_spacemit_ccu_adev(struct auxiliary_device *adev)
17*2b7a02c3SYixun Lan {
18*2b7a02c3SYixun Lan 	return container_of(adev, struct spacemit_ccu_adev, adev);
19*2b7a02c3SYixun Lan }
20*2b7a02c3SYixun Lan 
21*2b7a02c3SYixun Lan #endif /* __SOC_SPACEMIT_CCU_H__ */
22