1 #ifndef __QCOM_RPROC_H__ 2 #define __QCOM_RPROC_H__ 3 4 struct notifier_block; 5 6 /** 7 * enum qcom_ssr_notify_type - Startup/Shutdown events related to a remoteproc 8 * processor. 9 * 10 * @QCOM_SSR_BEFORE_POWERUP: Remoteproc about to start (prepare stage) 11 * @QCOM_SSR_AFTER_POWERUP: Remoteproc is running (start stage) 12 * @QCOM_SSR_BEFORE_SHUTDOWN: Remoteproc crashed or shutting down (stop stage) 13 * @QCOM_SSR_AFTER_SHUTDOWN: Remoteproc is down (unprepare stage) 14 */ 15 enum qcom_ssr_notify_type { 16 QCOM_SSR_BEFORE_POWERUP, 17 QCOM_SSR_AFTER_POWERUP, 18 QCOM_SSR_BEFORE_SHUTDOWN, 19 QCOM_SSR_AFTER_SHUTDOWN, 20 }; 21 22 struct qcom_ssr_notify_data { 23 const char *name; 24 bool crashed; 25 }; 26 27 #if IS_ENABLED(CONFIG_QCOM_RPROC_COMMON) 28 29 void *qcom_register_ssr_notifier(const char *name, struct notifier_block *nb); 30 int qcom_unregister_ssr_notifier(void *notify, struct notifier_block *nb); 31 32 #else 33 34 static inline void *qcom_register_ssr_notifier(const char *name, 35 struct notifier_block *nb) 36 { 37 return NULL; 38 } 39 40 static inline int qcom_unregister_ssr_notifier(void *notify, 41 struct notifier_block *nb) 42 { 43 return 0; 44 } 45 46 #endif 47 48 #endif 49
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.