40 lines
1.0 KiB
C
40 lines
1.0 KiB
C
/*
|
|
* Arche Platform driver to enable Unipro link.
|
|
*
|
|
* Copyright 2015-2016 Google Inc.
|
|
* Copyright 2015-2016 Linaro Ltd.
|
|
*
|
|
* Released under the GPLv2 only.
|
|
*/
|
|
|
|
#ifndef __ARCHE_PLATFORM_H
|
|
#define __ARCHE_PLATFORM_H
|
|
|
|
#include "timesync.h"
|
|
|
|
enum arche_platform_state {
|
|
ARCHE_PLATFORM_STATE_OFF,
|
|
ARCHE_PLATFORM_STATE_ACTIVE,
|
|
ARCHE_PLATFORM_STATE_STANDBY,
|
|
ARCHE_PLATFORM_STATE_FW_FLASHING,
|
|
ARCHE_PLATFORM_STATE_TIME_SYNC,
|
|
};
|
|
|
|
int arche_platform_change_state(enum arche_platform_state state,
|
|
struct gb_timesync_svc *pdata);
|
|
|
|
extern int (*arche_platform_change_state_cb)(enum arche_platform_state state,
|
|
struct gb_timesync_svc *pdata);
|
|
int __init arche_apb_init(void);
|
|
void __exit arche_apb_exit(void);
|
|
|
|
/* Operational states for the APB device */
|
|
int apb_ctrl_coldboot(struct device *dev);
|
|
int apb_ctrl_fw_flashing(struct device *dev);
|
|
int apb_ctrl_standby_boot(struct device *dev);
|
|
void apb_ctrl_poweroff(struct device *dev);
|
|
void apb_bootret_assert(struct device *dev);
|
|
void apb_bootret_deassert(struct device *dev);
|
|
|
|
#endif /* __ARCHE_PLATFORM_H */
|