123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- /* Copyright (C) 2020 RDA Technologies Limited and/or its affiliates("RDA").
- * All rights reserved.
- *
- * This software is supplied "AS IS" without any warranties.
- * RDA assumes no responsibility or liability for the use of the software,
- * conveys no license or title under any patent, copyright, or mask work
- * right to the product. RDA reserves the right to make changes in the
- * software without notification. RDA also make no representation or
- * warranty that such application will be suitable for the specified use
- * without further testing or modification.
- */
- #ifndef _DRV_PWRKEY_INTERNAL_H_
- #define _DRV_PWRKEY_INTERNAL_H_
- //#include "drv_keypad.h"
- #include "osi_compiler.h"
- #define POWERKEY_KEYCODE (0)
- typedef enum
- {
- PWR_STATE_PRESS = (1 << 0),
- PWR_STATE_RELEASE = (1 << 1),
- } pwrState_t;
- OSI_EXTERN_C_BEGIN
- /**
- * @brief get powerkey current state
- */
- int drvpowerkeyState();
- /**
- * @brief function type, power key event handler
- */
- typedef void (*pwrkeyCB_t)(pwrState_t evt, void *param);
- /**
- * \brief enable power key
- *
- * \param cb callback when key state change, called in ISR
- * \param mask powerkey state
- * \param param caller context
- */
- void drvPwrkeyEnable(pwrkeyCB_t cb, uint32_t mask, void *param);
- /**
- * \brief get power key state
- *
- * \return the key is pressed or not
- */
- bool drvPwrkeyPressed();
- OSI_EXTERN_C_END
- #endif
|