1*4882a593Smuzhiyun /* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * Copyright (C) 2019, Fuzhou Rockchip Electronics Co., Ltd 4*4882a593Smuzhiyun */ 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun #ifndef __SOC_ROCKCHIP_SYSTEM_STATUS_H 7*4882a593Smuzhiyun #define __SOC_ROCKCHIP_SYSTEM_STATUS_H 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun #if IS_REACHABLE(CONFIG_ROCKCHIP_SYSTEM_MONITOR) 10*4882a593Smuzhiyun int rockchip_register_system_status_notifier(struct notifier_block *nb); 11*4882a593Smuzhiyun int rockchip_unregister_system_status_notifier(struct notifier_block *nb); 12*4882a593Smuzhiyun void rockchip_set_system_status(unsigned long status); 13*4882a593Smuzhiyun void rockchip_clear_system_status(unsigned long status); 14*4882a593Smuzhiyun unsigned long rockchip_get_system_status(void); 15*4882a593Smuzhiyun int rockchip_add_system_status_interface(struct device *dev); 16*4882a593Smuzhiyun void rockchip_update_system_status(const char *buf); 17*4882a593Smuzhiyun #else 18*4882a593Smuzhiyun static inline int rockchip_register_system_status_notifier(struct notifier_block * nb)19*4882a593Smuzhiyunrockchip_register_system_status_notifier(struct notifier_block *nb) 20*4882a593Smuzhiyun { 21*4882a593Smuzhiyun return -ENOTSUPP; 22*4882a593Smuzhiyun }; 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun static inline int rockchip_unregister_system_status_notifier(struct notifier_block * nb)25*4882a593Smuzhiyunrockchip_unregister_system_status_notifier(struct notifier_block *nb) 26*4882a593Smuzhiyun { 27*4882a593Smuzhiyun return -ENOTSUPP; 28*4882a593Smuzhiyun }; 29*4882a593Smuzhiyun rockchip_set_system_status(unsigned long status)30*4882a593Smuzhiyunstatic inline void rockchip_set_system_status(unsigned long status) 31*4882a593Smuzhiyun { 32*4882a593Smuzhiyun }; 33*4882a593Smuzhiyun rockchip_clear_system_status(unsigned long status)34*4882a593Smuzhiyunstatic inline void rockchip_clear_system_status(unsigned long status) 35*4882a593Smuzhiyun { 36*4882a593Smuzhiyun }; 37*4882a593Smuzhiyun rockchip_get_system_status(void)38*4882a593Smuzhiyunstatic inline unsigned long rockchip_get_system_status(void) 39*4882a593Smuzhiyun { 40*4882a593Smuzhiyun return 0; 41*4882a593Smuzhiyun }; 42*4882a593Smuzhiyun rockchip_add_system_status_interface(struct device * dev)43*4882a593Smuzhiyunstatic inline int rockchip_add_system_status_interface(struct device *dev) 44*4882a593Smuzhiyun { 45*4882a593Smuzhiyun return -ENOTSUPP; 46*4882a593Smuzhiyun }; 47*4882a593Smuzhiyun rockchip_update_system_status(const char * buf)48*4882a593Smuzhiyunstatic inline void rockchip_update_system_status(const char *buf) 49*4882a593Smuzhiyun { 50*4882a593Smuzhiyun }; 51*4882a593Smuzhiyun #endif /* CONFIG_ROCKCHIP_SYSTEM_MONITOR */ 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun #endif 54