ufshcd-pltfrm.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /* Copyright (c) 2015, The Linux Foundation. All rights reserved.
  2. *
  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.
  6. *
  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.
  11. *
  12. */
  13. #ifndef UFSHCD_PLTFRM_H_
  14. #define UFSHCD_PLTFRM_H_
  15. #include "ufshcd.h"
  16. int ufshcd_pltfrm_init(struct platform_device *pdev,
  17. struct ufs_hba_variant_ops *vops);
  18. void ufshcd_pltfrm_shutdown(struct platform_device *pdev);
  19. #ifdef CONFIG_PM
  20. int ufshcd_pltfrm_suspend(struct device *dev);
  21. int ufshcd_pltfrm_resume(struct device *dev);
  22. int ufshcd_pltfrm_runtime_suspend(struct device *dev);
  23. int ufshcd_pltfrm_runtime_resume(struct device *dev);
  24. int ufshcd_pltfrm_runtime_idle(struct device *dev);
  25. #else /* !CONFIG_PM */
  26. #define ufshcd_pltfrm_suspend NULL
  27. #define ufshcd_pltfrm_resume NULL
  28. #define ufshcd_pltfrm_runtime_suspend NULL
  29. #define ufshcd_pltfrm_runtime_resume NULL
  30. #define ufshcd_pltfrm_runtime_idle NULL
  31. #endif /* CONFIG_PM */
  32. #endif /* UFSHCD_PLTFRM_H_ */