]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - drivers/staging/greybus/arche_platform.h
net: add netlink_ext_ack argument to rtnl_link_ops.validate
[mirror_ubuntu-bionic-kernel.git] / drivers / staging / greybus / arche_platform.h
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
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,
19 };
20
21 int arche_platform_change_state(enum arche_platform_state state,
22 struct gb_timesync_svc *pdata);
23
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);
28
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);
36
37 #endif /* __ARCHE_PLATFORM_H */