Linux 4.19.133
[linux/fpc-iii.git] / drivers / crypto / ccree / cc_pm.h
blob907a6db4d6c036fe1c5433d5bda095d157e166b0
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright (C) 2012-2018 ARM Limited or its affiliates. */
4 /* \file cc_pm.h
5 */
7 #ifndef __CC_POWER_MGR_H__
8 #define __CC_POWER_MGR_H__
10 #include "cc_driver.h"
12 #define CC_SUSPEND_TIMEOUT 3000
14 #if defined(CONFIG_PM)
16 extern const struct dev_pm_ops ccree_pm;
18 int cc_pm_init(struct cc_drvdata *drvdata);
19 void cc_pm_go(struct cc_drvdata *drvdata);
20 void cc_pm_fini(struct cc_drvdata *drvdata);
21 int cc_pm_suspend(struct device *dev);
22 int cc_pm_resume(struct device *dev);
23 int cc_pm_get(struct device *dev);
24 int cc_pm_put_suspend(struct device *dev);
26 #else
28 static inline int cc_pm_init(struct cc_drvdata *drvdata)
30 return 0;
33 static inline void cc_pm_go(struct cc_drvdata *drvdata) {}
35 static inline void cc_pm_fini(struct cc_drvdata *drvdata) {}
37 static inline int cc_pm_suspend(struct device *dev)
39 return 0;
42 static inline int cc_pm_resume(struct device *dev)
44 return 0;
47 static inline int cc_pm_get(struct device *dev)
49 return 0;
52 static inline int cc_pm_put_suspend(struct device *dev)
54 return 0;
57 #endif
59 #endif /*__POWER_MGR_H__*/