#ifndef _SR_BSP_PM_H
#define _SR_BSP_PM_H

#include "sr_config.h"

#ifdef SR_USE_PM

#include "n32l40x_pwr.h"


#define BSP_PM_SLEEP_NONE     0  
#define BSP_PM_SLEEP_IDLE     1
#define BSP_PM_SLEEP_LIGHT    2
#define BSP_PM_SLEEP_DEEP     3
#define BSP_PM_SLEEP_STANDBY  4
#define IS_SLEEP_MODE(mode)   ((mode) >= BSP_PM_SLEEP_NONE && (mode) <= BSP_PM_SLEEP_STANDBY)
  

typedef enum
{
  LTIMER0 =0u,
  LTIMER1 =1u,
  LTIMER2 =2u,
  LTIMER3 =3u,
  LTIMER_MAX
}SR_LTIMER_ID_E;


#include "sr_pm.h"

int BspPmSleepReq(SR_PM_SLEEP_MODE_E sleepMode);
int BspPmReset(void);


//int BspPmLtimerStart(SR_LTIMER_ID_E id, uint32_t timeout);
//int BspPmLtimerStop(SR_LTIMER_ID_E id);
//int BspPmPowerOff_(void);
//SR_WAKEUP_REASON_E BspPmGetPoweronReason(void);
#define BspPmLtimerStart(id,timeout)
#define BspPmLtimerStop(id)
#define BspPmGetPoweronReason() 

#endif

#endif


