Linux 4.16.11
[linux/fpc-iii.git] / drivers / scsi / ufs / ufshcd-pltfrm.h
blobdf64c418034046bd9810cc66bb5ca655a50da2b4
1 /* Copyright (c) 2015, The Linux Foundation. All rights reserved.
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License version 2 and
5 * only version 2 as published by the Free Software Foundation.
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
14 #ifndef UFSHCD_PLTFRM_H_
15 #define UFSHCD_PLTFRM_H_
17 #include "ufshcd.h"
19 int ufshcd_pltfrm_init(struct platform_device *pdev,
20 struct ufs_hba_variant_ops *vops);
21 void ufshcd_pltfrm_shutdown(struct platform_device *pdev);
23 #ifdef CONFIG_PM
25 int ufshcd_pltfrm_suspend(struct device *dev);
26 int ufshcd_pltfrm_resume(struct device *dev);
27 int ufshcd_pltfrm_runtime_suspend(struct device *dev);
28 int ufshcd_pltfrm_runtime_resume(struct device *dev);
29 int ufshcd_pltfrm_runtime_idle(struct device *dev);
31 #else /* !CONFIG_PM */
33 #define ufshcd_pltfrm_suspend NULL
34 #define ufshcd_pltfrm_resume NULL
35 #define ufshcd_pltfrm_runtime_suspend NULL
36 #define ufshcd_pltfrm_runtime_resume NULL
37 #define ufshcd_pltfrm_runtime_idle NULL
39 #endif /* CONFIG_PM */
41 #endif /* UFSHCD_PLTFRM_H_ */