2 * Arche Platform driver to enable Unipro link.
4 * Copyright 2015-2016 Google Inc.
5 * Copyright 2015-2016 Linaro Ltd.
7 * Released under the GPLv2 only.
10 #ifndef __ARCHE_PLATFORM_H
11 #define __ARCHE_PLATFORM_H
13 enum arche_platform_state
{
14 ARCHE_PLATFORM_STATE_OFF
,
15 ARCHE_PLATFORM_STATE_ACTIVE
,
16 ARCHE_PLATFORM_STATE_STANDBY
,
17 ARCHE_PLATFORM_STATE_FW_FLASHING
,
18 ARCHE_PLATFORM_STATE_TIME_SYNC
,
21 int arche_platform_change_state(enum arche_platform_state state
,
22 struct gb_timesync_svc
*pdata
);
24 extern int (*arche_platform_change_state_cb
)(enum arche_platform_state state
,
25 struct gb_timesync_svc
*pdata
);
26 int __init
arche_apb_init(void);
27 void __exit
arche_apb_exit(void);
29 /* Operational states for the APB device */
30 int apb_ctrl_coldboot(struct device
*dev
);
31 int apb_ctrl_fw_flashing(struct device
*dev
);
32 int apb_ctrl_standby_boot(struct device
*dev
);
33 void apb_ctrl_poweroff(struct device
*dev
);
34 void apb_bootret_assert(struct device
*dev
);
35 void apb_bootret_deassert(struct device
*dev
);
37 #endif /* __ARCHE_PLATFORM_H */