hv: add suspend/resume callback for console

To handle s3 enter/exit for console

Signed-off-by: Zheng Gen <gen.zheng@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
This commit is contained in:
Yin Fengwei 2018-06-04 16:35:20 +08:00 committed by lijinxia
parent 8eaf4d2ab6
commit feed38f5ae
2 changed files with 17 additions and 1 deletions

View File

@ -10,6 +10,7 @@
static spinlock_t lock;
static uint32_t serial_handle = SERIAL_INVALID_HANDLE;
struct timer console_timer;
#define CONSOLE_KICK_TIMER_TIMEOUT 40 /* timeout is 40ms*/
@ -198,7 +199,6 @@ static int console_timer_callback(__unused void *data)
void console_setup_timer(void)
{
static struct timer console_timer;
uint64_t period_in_cycle, fire_tsc;
if (serial_handle == SERIAL_INVALID_HANDLE) {

View File

@ -8,6 +8,8 @@
#define CONSOLE_H
#ifdef HV_DEBUG
extern struct timer console_timer;
/** Initializes the console module.
*
* @param cdev A pointer to the character device to use for the console.
@ -62,6 +64,17 @@ void console_dump_bytes(const void *p, unsigned int len);
void console_setup_timer(void);
uint32_t get_serial_handle(void);
static inline void suspend_console(void)
{
del_timer(&console_timer);
}
static inline void resume_console_enable(void)
{
console_setup_timer();
}
#else
static inline int console_init(void)
{
@ -86,6 +99,9 @@ static inline void console_dump_bytes(__unused const void *p,
}
static inline void console_setup_timer(void) {}
static inline uint32_t get_serial_handle(void) { return 0; }
void suspend_console(void) {}
void resume_console_enable(void) {}
#endif
#endif /* CONSOLE_H */