qcom_rproc.h (1121B)
1#ifndef __QCOM_RPROC_H__ 2#define __QCOM_RPROC_H__ 3 4struct 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 */ 15enum 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 22struct qcom_ssr_notify_data { 23 const char *name; 24 bool crashed; 25}; 26 27#if IS_ENABLED(CONFIG_QCOM_RPROC_COMMON) 28 29void *qcom_register_ssr_notifier(const char *name, struct notifier_block *nb); 30int qcom_unregister_ssr_notifier(void *notify, struct notifier_block *nb); 31 32#else 33 34static inline void *qcom_register_ssr_notifier(const char *name, 35 struct notifier_block *nb) 36{ 37 return NULL; 38} 39 40static inline int qcom_unregister_ssr_notifier(void *notify, 41 struct notifier_block *nb) 42{ 43 return 0; 44} 45 46#endif 47 48#endif