blob: 8f64168f5ee752a398743b3bf3e3691e47b9ace6 [file] [log] [blame]
/* Copyright 2013 The ChromiumOS Authors
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
/* External power detection API for Chrome EC */
#ifndef __CROS_EC_EXTPOWER_H
#define __CROS_EC_EXTPOWER_H
#include "common.h"
enum gpio_signal; /* from gpio_signal.h */
/**
* Run board specific code to update extpower status. The default
* implementation does nothing, but a board may override it.
*/
__override_proto void board_check_extpower(void);
/**
* Return non-zero if external power is present.
*/
int extpower_is_present(void);
/**
* Interrupt handler for external power GPIOs.
*
* @param signal Signal which triggered the interrupt.
*/
void extpower_interrupt(enum gpio_signal signal);
/**
* Routine to trigger actions based on external power state change.
*
* @param is_present State of external power (1 = present, 0 = not present)
*/
void extpower_handle_update(int is_present);
#endif /* __CROS_EC_EXTPOWER_H */