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