Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[GitHub/LineageOS/android_kernel_motorola_exynos9610.git] / drivers / staging / greybus / arche_platform.h
CommitLineData
1e5dd1f8
GKH
1/*
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
a821adb4
VH
13enum arche_platform_state {
14 ARCHE_PLATFORM_STATE_OFF,
15 ARCHE_PLATFORM_STATE_ACTIVE,
16 ARCHE_PLATFORM_STATE_STANDBY,
7691fed2 17 ARCHE_PLATFORM_STATE_FW_FLASHING,
886aba55 18 ARCHE_PLATFORM_STATE_TIME_SYNC,
a821adb4
VH
19};
20
970dc85b
BD
21int arche_platform_change_state(enum arche_platform_state state,
22 struct gb_timesync_svc *pdata);
65fd5a50 23
970dc85b
BD
24extern int (*arche_platform_change_state_cb)(enum arche_platform_state state,
25 struct gb_timesync_svc *pdata);
7b62b61c
VK
26int __init arche_apb_init(void);
27void __exit arche_apb_exit(void);
65fd5a50
VH
28
29/* Operational states for the APB device */
30int apb_ctrl_coldboot(struct device *dev);
31int apb_ctrl_fw_flashing(struct device *dev);
32int apb_ctrl_standby_boot(struct device *dev);
33void apb_ctrl_poweroff(struct device *dev);
970dc85b
BD
34void apb_bootret_assert(struct device *dev);
35void apb_bootret_deassert(struct device *dev);
65fd5a50 36
1e5dd1f8 37#endif /* __ARCHE_PLATFORM_H */