blob: 700c548d68dbaaee16d6863c2f89617500e6d5bd [file] [log] [blame]
Greg Kroah-Hartman1e5dd1f2015-12-30 13:38:33 -08001/*
2 * Arche Platform driver to enable Unipro link.
3 *
4 * Copyright 2015-2016 Google Inc.
5 * Copyright 2015-2016 Linaro Ltd.
6 *
7 * Released under the GPLv2 only.
8 */
9
10#ifndef __ARCHE_PLATFORM_H
11#define __ARCHE_PLATFORM_H
12
Vaibhav Hirematha821adb2016-02-13 02:04:02 +053013enum arche_platform_state {
14 ARCHE_PLATFORM_STATE_OFF,
15 ARCHE_PLATFORM_STATE_ACTIVE,
16 ARCHE_PLATFORM_STATE_STANDBY,
Vaibhav Hiremath7691fed2016-02-13 02:04:08 +053017 ARCHE_PLATFORM_STATE_FW_FLASHING,
Vaibhav Hirematha821adb2016-02-13 02:04:02 +053018};
19
Vaibhav Hiremath65fd5a52016-02-13 02:04:16 +053020
Greg Kroah-Hartman1e5dd1f2015-12-30 13:38:33 -080021int arche_apb_ctrl_probe(struct platform_device *pdev);
22int arche_apb_ctrl_remove(struct platform_device *pdev);
Vaibhav Hiremath65fd5a52016-02-13 02:04:16 +053023
24/* Operational states for the APB device */
25int apb_ctrl_coldboot(struct device *dev);
26int apb_ctrl_fw_flashing(struct device *dev);
27int apb_ctrl_standby_boot(struct device *dev);
28void apb_ctrl_poweroff(struct device *dev);
29
30
Greg Kroah-Hartman1e5dd1f2015-12-30 13:38:33 -080031extern const struct dev_pm_ops arche_apb_ctrl_pm_ops;
32
33#endif /* __ARCHE_PLATFORM_H */