15ea3f0dcSAnoop Vijay /* SPDX-License-Identifier: MIT */ 25ea3f0dcSAnoop Vijay /* 35ea3f0dcSAnoop Vijay * Copyright © 2026 Intel Corporation 45ea3f0dcSAnoop Vijay */ 55ea3f0dcSAnoop Vijay 65ea3f0dcSAnoop Vijay #ifndef _XE_SYSCTRL_H_ 75ea3f0dcSAnoop Vijay #define _XE_SYSCTRL_H_ 85ea3f0dcSAnoop Vijay 95ea3f0dcSAnoop Vijay #include <linux/container_of.h> 105ea3f0dcSAnoop Vijay 115ea3f0dcSAnoop Vijay #include "xe_device_types.h" 125ea3f0dcSAnoop Vijay #include "xe_sysctrl_types.h" 135ea3f0dcSAnoop Vijay 145ea3f0dcSAnoop Vijay static inline struct xe_device *sc_to_xe(struct xe_sysctrl *sc) 155ea3f0dcSAnoop Vijay { 165ea3f0dcSAnoop Vijay return container_of(sc, struct xe_device, sc); 175ea3f0dcSAnoop Vijay } 185ea3f0dcSAnoop Vijay 19*21677c5eSRaag Jadav void xe_sysctrl_event(struct xe_sysctrl *sc); 205ea3f0dcSAnoop Vijay int xe_sysctrl_init(struct xe_device *xe); 21a6824737SRaag Jadav void xe_sysctrl_irq_handler(struct xe_device *xe, u32 master_ctl); 2202eca6edSAnoop Vijay void xe_sysctrl_pm_resume(struct xe_device *xe); 235ea3f0dcSAnoop Vijay 245ea3f0dcSAnoop Vijay #endif 25