From 81287fd6946e404d447a4ffafb7614236ed72e45 Mon Sep 17 00:00:00 2001 From: heppen Date: Fri, 17 May 2024 09:59:16 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20build(build):=20=E5=BC=80?= =?UTF-8?q?=E6=94=BErelease2=E7=89=88=E6=9C=AC=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pwrapic/inc/powerapi.h | 67 +++---- pwrapic/src/powerapi.c | 417 ++++++++++++++++++++--------------------- 2 files changed, 242 insertions(+), 242 deletions(-) diff --git a/pwrapic/inc/powerapi.h b/pwrapic/inc/powerapi.h index 9893cf0..ae5910a 100644 --- a/pwrapic/inc/powerapi.h +++ b/pwrapic/inc/powerapi.h @@ -34,6 +34,11 @@ PWR_API int PWR_Register(void); PWR_API int PWR_UnRegister(void); PWR_API int PWR_RequestControlAuth(void); PWR_API int PWR_ReleaseControlAuth(void); +PWR_API int PWR_SetMetaDataCallback(void(MetaDataCallback)(const PWR_COM_CallbackData *callbackData)); +PWR_API int PWR_CreateDcTask(const PWR_COM_BasicDcTaskInfo *basicDcTaskInfo); +PWR_API int PWR_DeleteDcTask(PWR_COM_COL_DATATYPE dataType); +PWR_API int PWR_SetEventCallback(void(EventCallback)(const PWR_COM_EventInfo* eventInfo)); + // CPU PWR_API int PWR_CPU_GetInfo(PWR_CPU_Info *cpuInfo); PWR_API int PWR_CPU_GetFreqAbility(PWR_CPU_FreqAbility *freqAbi, uint32_t bufferSize); @@ -51,42 +56,12 @@ PWR_API int PWR_CPU_GetIdleGovernor(char idleGov[], uint32_t size); // unit: us PWR_API int PWR_CPU_SetIdleGovernor(const char idleGov[]); PWR_API int PWR_CPU_DmaGetLatency(int *latency); // unit: us PWR_API int PWR_CPU_DmaSetLatency(int latency); - -#ifndef RELEASE_MODE -// Common -PWR_API int PWR_SetMetaDataCallback(void(MetaDataCallback)(const PWR_COM_CallbackData *callbackData)); -PWR_API int PWR_CreateDcTask(const PWR_COM_BasicDcTaskInfo *basicDcTaskInfo); -PWR_API int PWR_DeleteDcTask(PWR_COM_COL_DATATYPE dataType); -PWR_API int PWR_SetEventCallback(void(EventCallback)(const PWR_COM_EventInfo* eventInfo)); - -// SYS -PWR_API int PWR_SYS_SetPowerState(const int powerState); -PWR_API int PWR_SYS_GetCappedPower(int *cappedPower); -PWR_API int PWR_SYS_SetCappedPower(const int cappedPower); -PWR_API int PWR_SYS_GetRtPowerInfo(PWR_SYS_PowerInfo *powerInfo); -PWR_API int PWR_SYS_GetStatisticPowerInfo(PWR_SYS_StatisticPowerInfo *stcPowerInfo); - -// CPU PWR_API int PWR_CPU_GetUsage(PWR_CPU_Usage *usage, uint32_t bufferSize); PWR_API int PWR_CPU_GetPerfData(PWR_CPU_PerfData *perfData); -// Disk -PWR_API int PWR_DISK_GetList(char diskList[][PWR_MAX_ELEMENT_NAME_LEN], uint32_t *len); -PWR_API int PWR_DISK_GetLoad(PWR_DISK_Load load[], uint32_t *len, int spec); -PWR_API int PWR_DISK_GetPwrLevel(PWR_DISK_PwrLevel pwrLevel[], uint32_t *len, int spec); -PWR_API int PWR_DISK_SetPwrLevel(PWR_DISK_PwrLevel pwrLevel[], uint32_t len); -PWR_API int PWR_DISK_GetScsiPolicy(PWR_DISK_ScsiPolicy scsiPolicy[], uint32_t *len, int spec); -PWR_API int PWR_DISK_SetScsiPolicy(PWR_DISK_ScsiPolicy scsiPolicy[], uint32_t len); - -// NET -PWR_API int PWR_NET_GetInfo(PWR_NET_Info *netInfo, uint32_t bufferSize); -PWR_API int PWR_NET_GetThrouth(char ethName[], PWR_NET_Through *ethThrough); -PWR_API int PWR_NET_GetSpeedMod(char ethName[], uint32_t *speedMod); -PWR_API int PWR_NET_SetSpeedMod(char ethName[], uint32_t speedMod); - -// USB -PWR_API int PWR_USB_GetAutoSuspend(PWR_USB_AutoSuspend usbAts[], uint32_t *len); -PWR_API int PWR_USB_SetAutoSuspend(PWR_USB_AutoSuspend usbAts[], uint32_t len); +//SYS +PWR_API int PWR_SYS_SetPowerState(const int powerState); +PWR_API int PWR_SYS_GetRtPowerInfo(PWR_SYS_PowerInfo *powerInfo); // PROC PWR_API int PWR_PROC_QueryProcs(const char *keywords, pid_t procs[], uint32_t *num); @@ -111,6 +86,32 @@ PWR_API int PWR_PROC_SetServiceState(PWR_PROC_ServiceState *sState); PWR_API int PWR_HBM_GetSysState(PWR_HBM_SYS_STATE *hbmState); PWR_API int PWR_HBM_SetAllPwrState(int state); +#ifndef RELEASE_MODE + +// SYS +PWR_API int PWR_SYS_GetCappedPower(int *cappedPower); +PWR_API int PWR_SYS_SetCappedPower(const int cappedPower); +PWR_API int PWR_SYS_GetStatisticPowerInfo(PWR_SYS_StatisticPowerInfo *stcPowerInfo); + +// Disk +PWR_API int PWR_DISK_GetList(char diskList[][PWR_MAX_ELEMENT_NAME_LEN], uint32_t *len); +PWR_API int PWR_DISK_GetLoad(PWR_DISK_Load load[], uint32_t *len, int spec); +PWR_API int PWR_DISK_GetPwrLevel(PWR_DISK_PwrLevel pwrLevel[], uint32_t *len, int spec); +PWR_API int PWR_DISK_SetPwrLevel(PWR_DISK_PwrLevel pwrLevel[], uint32_t len); +PWR_API int PWR_DISK_GetScsiPolicy(PWR_DISK_ScsiPolicy scsiPolicy[], uint32_t *len, int spec); +PWR_API int PWR_DISK_SetScsiPolicy(PWR_DISK_ScsiPolicy scsiPolicy[], uint32_t len); + +// NET +PWR_API int PWR_NET_GetInfo(PWR_NET_Info *netInfo, uint32_t bufferSize); +PWR_API int PWR_NET_GetThrouth(char ethName[], PWR_NET_Through *ethThrough); +PWR_API int PWR_NET_GetSpeedMod(char ethName[], uint32_t *speedMod); +PWR_API int PWR_NET_SetSpeedMod(char ethName[], uint32_t speedMod); + +// USB +PWR_API int PWR_USB_GetAutoSuspend(PWR_USB_AutoSuspend usbAts[], uint32_t *len); +PWR_API int PWR_USB_SetAutoSuspend(PWR_USB_AutoSuspend usbAts[], uint32_t len); + + #endif // #ifndef RELEASE_MODE #ifdef __cplusplus diff --git a/pwrapic/src/powerapi.c b/pwrapic/src/powerapi.c index 311c4e2..8509126 100644 --- a/pwrapic/src/powerapi.c +++ b/pwrapic/src/powerapi.c @@ -148,6 +148,45 @@ int PWR_ReleaseControlAuth(void) return ret; } +int PWR_SetMetaDataCallback(void(MetaDataCallback)(const PWR_COM_CallbackData *)) +{ + if (MetaDataCallback) { + return SetMetaDataCallback(MetaDataCallback); + } + return PWR_ERR_NULL_POINTER; +} + +int PWR_CreateDcTask(const PWR_COM_BasicDcTaskInfo *basicDcTaskInfo) +{ + CHECK_STATUS(STATUS_REGISTERTED); + CHECK_NULL_POINTER(basicDcTaskInfo); + + if (basicDcTaskInfo->interval < PWR_MIN_DC_INTERVAL || basicDcTaskInfo->interval > PWR_MAX_DC_INTERVAL) { + return PWR_ERR_INVALIDE_PARAM; + } + + if (!HasSetDataCallback()) { + return PWR_ERR_CALLBACK_FUNCTION_SHOULD_BE_SET_FIRST; + } + + return CreateDcTask(basicDcTaskInfo); +} + +int PWR_DeleteDcTask(PWR_COM_COL_DATATYPE dataType) +{ + CHECK_STATUS(STATUS_REGISTERTED); + + return DeleteDcTask(dataType); +} + +int PWR_SetEventCallback(void(EventCallback)(const PWR_COM_EventInfo *)) +{ + if (EventCallback) { + return SetEventCallback(EventCallback); + } + return PWR_ERR_NULL_POINTER; +} + int PWR_CPU_GetInfo(PWR_CPU_Info *cpuInfo) { CHECK_STATUS(STATUS_REGISTERTED); @@ -299,6 +338,43 @@ int PWR_CPU_DmaSetLatency(int latency) return SetCpuDmaLatency(latency); } +int PWR_CPU_GetUsage(PWR_CPU_Usage *usage, uint32_t bufferSize) +{ + CHECK_STATUS(STATUS_REGISTERTED); + CHECK_NULL_POINTER(usage); + if (bufferSize < sizeof(PWR_CPU_Usage)) { + return PWR_ERR_INVALIDE_PARAM; + } + + return GetCpuUsage(usage, bufferSize); +} + +PWR_API int PWR_CPU_GetPerfData(PWR_CPU_PerfData *perfData) +{ + CHECK_STATUS(STATUS_REGISTERTED); + CHECK_NULL_POINTER(perfData); + + return GetCpuPerfData(perfData); +} + +// SYS +int PWR_SYS_SetPowerState(const int powerState) +{ + CHECK_STATUS(STATUS_AUTHED); + if (powerState != PWR_MEM && powerState != PWR_DISK) { + return PWR_ERR_INVALIDE_PARAM; + } + + return SetSysPowerState(powerState); +} + +int PWR_SYS_GetCappedPower(int *cappedPower) +{ + CHECK_STATUS(STATUS_REGISTERTED); + CHECK_NULL_POINTER(cappedPower); + + return GetCappedPower(cappedPower); +} // HBM int PWR_HBM_GetSysState(PWR_HBM_SYS_STATE *hbmState) { @@ -316,110 +392,198 @@ int PWR_HBM_SetAllPwrState(int state) return SetAllHbmPowerState(state); } -#ifndef RELEASE_MODE -int PWR_SetMetaDataCallback(void(MetaDataCallback)(const PWR_COM_CallbackData *)) +// PROC +int PWR_PROC_QueryProcs(const char *keywords, pid_t procs[], uint32_t *num) { - if (MetaDataCallback) { - return SetMetaDataCallback(MetaDataCallback); + CHECK_STATUS(STATUS_REGISTERTED); + CHECK_NULL_POINTER(procs); + CHECK_NULL_POINTER(num); + if (*num == 0) { + return PWR_ERR_INVALIDE_PARAM; } - return PWR_ERR_NULL_POINTER; + const char *kw = ""; + if (keywords) { + if (strlen(keywords) >= PWR_MAX_STRING_LEN) { + return PWR_ERR_INVALIDE_PARAM; + } + kw = keywords; + } + return QueryProcsByKeywords(kw, procs, num); } -int PWR_CreateDcTask(const PWR_COM_BasicDcTaskInfo *basicDcTaskInfo) +int PWR_PROC_GetWattState(int *state) { CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(basicDcTaskInfo); + CHECK_NULL_POINTER(state); + return GetProcWattState(state); +} - if (basicDcTaskInfo->interval < PWR_MIN_DC_INTERVAL || basicDcTaskInfo->interval > PWR_MAX_DC_INTERVAL) { +int PWR_PROC_SetWattFirstDomain(int cpuId) +{ + CHECK_STATUS(STATUS_AUTHED); + + if (cpuId < 0) { return PWR_ERR_INVALIDE_PARAM; } - if (!HasSetDataCallback()) { - return PWR_ERR_CALLBACK_FUNCTION_SHOULD_BE_SET_FIRST; - } + return SetWattFirstDomain(cpuId); +} - return CreateDcTask(basicDcTaskInfo); +int PWR_PROC_SetWattState(int state) +{ + CHECK_STATUS(STATUS_AUTHED); + if (state != PWR_ENABLE && state != PWR_DISABLE) { + return PWR_ERR_INVALIDE_PARAM; + } + return SetProcWattState(state); } -int PWR_DeleteDcTask(PWR_COM_COL_DATATYPE dataType) +int PWR_PROC_GetWattAttrs(PWR_PROC_WattAttrs *wattAttrs) { CHECK_STATUS(STATUS_REGISTERTED); - - return DeleteDcTask(dataType); + CHECK_NULL_POINTER(wattAttrs); + return GetProcWattAttrs(wattAttrs); } -int PWR_SetEventCallback(void(EventCallback)(const PWR_COM_EventInfo *)) +int PWR_PROC_SetWattAttrs(const PWR_PROC_WattAttrs *wattAttrs) { - if (EventCallback) { - return SetEventCallback(EventCallback); + CHECK_STATUS(STATUS_AUTHED); + CHECK_NULL_POINTER(wattAttrs); + if (wattAttrs->scaleThreshold < 0 || wattAttrs->scaleThreshold > PWR_ONE_HUNDRED || + wattAttrs->scaleInterval < 0 || wattAttrs->scaleInterval > PWR_MAX_WATT_SCALE_INTERVAL || + wattAttrs->domainMask < 0) { + return PWR_ERR_INVALIDE_PARAM; } - return PWR_ERR_NULL_POINTER; + return SetProcWattAttrs(wattAttrs); } +int PWR_PROC_GetWattProcs(pid_t wattProcs[], uint32_t *num) +{ + CHECK_STATUS(STATUS_REGISTERTED); + CHECK_NULL_POINTER(wattProcs); + CHECK_NULL_POINTER(num); + if (*num == 0) { + return PWR_ERR_INVALIDE_PARAM; + } + return GetWattProcs(wattProcs, num); +} -int PWR_SYS_SetPowerState(const int powerState) +int PWR_PROC_AddWattProcs(const pid_t wattProcs[], uint32_t num) { CHECK_STATUS(STATUS_AUTHED); - if (powerState != PWR_MEM && powerState != PWR_DISK) { + CHECK_NULL_POINTER(wattProcs); + if (num == 0 || num > PWR_MAX_PROC_NUM) { return PWR_ERR_INVALIDE_PARAM; } + return AddWattProcs(wattProcs, num); +} - return SetSysPowerState(powerState); +int PWR_PROC_DelWattProcs(const pid_t wattProcs[], uint32_t num) +{ + CHECK_STATUS(STATUS_AUTHED); + CHECK_NULL_POINTER(wattProcs); + if (num == 0 || num > PWR_MAX_PROC_NUM) { + return PWR_ERR_INVALIDE_PARAM; + } + return DelWattProcs(wattProcs, num); } -int PWR_SYS_GetCappedPower(int *cappedPower) +int PWR_PROC_GetSmartGridState(int *state) { CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(cappedPower); - - return GetCappedPower(cappedPower); + CHECK_NULL_POINTER(state); + return GetSmartGridState(state); } -int PWR_SYS_SetCappedPower(const int cappedPower) +int PWR_PROC_SetSmartGridState(int state) { CHECK_STATUS(STATUS_AUTHED); - if (cappedPower <= 0) { + if (state != PWR_ENABLE && state != PWR_DISABLE) { return PWR_ERR_INVALIDE_PARAM; } - - return SetCappedPower(cappedPower); + return SetSmartGridState(state); } -int PWR_SYS_GetRtPowerInfo(PWR_SYS_PowerInfo *powerInfo) +int PWR_PROC_GetSmartGridProcs(PWR_PROC_SMART_GRID_LEVEL level, PWR_PROC_SmartGridProcs *sgProcs) { CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(powerInfo); + CHECK_NULL_POINTER(sgProcs); + if (sgProcs->procNum == 0) { + return PWR_ERR_INVALIDE_PARAM; + } + return GetSmartGridProcs(level, sgProcs); +} - return GetSysRtPowerInfo(powerInfo); +int PWR_PROC_SetSmartGridLevel(const PWR_PROC_SmartGridProcs *sgProcs) +{ + CHECK_STATUS(STATUS_AUTHED); + CHECK_NULL_POINTER(sgProcs); + if (sgProcs->procNum == 0 || sgProcs->procNum > PWR_MAX_PROC_NUM) { + return PWR_ERR_INVALIDE_PARAM; + } + return SetSmartGridLevel(sgProcs); } -int PWR_SYS_GetStatisticPowerInfo(PWR_SYS_StatisticPowerInfo *stcPowerInfo) +int PWR_PROC_GetSmartGridGov(PWR_PROC_SmartGridGov *sgGov) { CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(stcPowerInfo); + CHECK_NULL_POINTER(sgGov); + return GetSmartGridGov(sgGov); +} - return GetStatisticPowerInfo(stcPowerInfo); +int PWR_PROC_SetSmartGridGov(const PWR_PROC_SmartGridGov *sgGov) +{ + CHECK_STATUS(STATUS_AUTHED); + CHECK_NULL_POINTER(sgGov); + if (sgGov->sgAgentState != PWR_ENABLE && sgGov->sgAgentState != PWR_DISABLE) { + return PWR_ERR_INVALIDE_PARAM; + } + return SetSmartGridGov(sgGov); } +int PWR_PROC_GetServiceState(PWR_PROC_ServiceStatus *sStatus) +{ + CHECK_STATUS(STATUS_REGISTERTED); + CHECK_NULL_POINTER(sStatus); + return GetServiceState(sStatus); +} + +int PWR_PROC_SetServiceState(PWR_PROC_ServiceState *sState) +{ + CHECK_STATUS(STATUS_AUTHED); + CHECK_NULL_POINTER(sState); + if (sState->state != PWR_SERVICE_START && sState->state != PWR_SERVICE_STOP) { + return PWR_ERR_INVALIDE_PARAM; + } + return SetServiceState(sState); +} +#ifndef RELEASE_MODE -int PWR_CPU_GetUsage(PWR_CPU_Usage *usage, uint32_t bufferSize) +int PWR_SYS_SetCappedPower(const int cappedPower) { - CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(usage); - if (bufferSize < sizeof(PWR_CPU_Usage)) { + CHECK_STATUS(STATUS_AUTHED); + if (cappedPower <= 0) { return PWR_ERR_INVALIDE_PARAM; } - return GetCpuUsage(usage, bufferSize); + return SetCappedPower(cappedPower); } -PWR_API int PWR_CPU_GetPerfData(PWR_CPU_PerfData *perfData) +int PWR_SYS_GetRtPowerInfo(PWR_SYS_PowerInfo *powerInfo) { CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(perfData); + CHECK_NULL_POINTER(powerInfo); - return GetCpuPerfData(perfData); + return GetSysRtPowerInfo(powerInfo); +} + +int PWR_SYS_GetStatisticPowerInfo(PWR_SYS_StatisticPowerInfo *stcPowerInfo) +{ + CHECK_STATUS(STATUS_REGISTERTED); + CHECK_NULL_POINTER(stcPowerInfo); + + return GetStatisticPowerInfo(stcPowerInfo); } // Disk @@ -562,170 +726,5 @@ int PWR_USB_SetAutoSuspend(PWR_USB_AutoSuspend usbAts[], uint32_t len) return SetUsbAutoSuspend(usbAts, len); } -// PROC -int PWR_PROC_QueryProcs(const char *keywords, pid_t procs[], uint32_t *num) -{ - CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(procs); - CHECK_NULL_POINTER(num); - if (*num == 0) { - return PWR_ERR_INVALIDE_PARAM; - } - const char *kw = ""; - if (keywords) { - if (strlen(keywords) >= PWR_MAX_STRING_LEN) { - return PWR_ERR_INVALIDE_PARAM; - } - kw = keywords; - } - return QueryProcsByKeywords(kw, procs, num); -} - -int PWR_PROC_GetWattState(int *state) -{ - CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(state); - return GetProcWattState(state); -} - -int PWR_PROC_SetWattFirstDomain(int cpuId) -{ - CHECK_STATUS(STATUS_AUTHED); - - if (cpuId < 0) { - return PWR_ERR_INVALIDE_PARAM; - } - - return SetWattFirstDomain(cpuId); -} - -int PWR_PROC_SetWattState(int state) -{ - CHECK_STATUS(STATUS_AUTHED); - if (state != PWR_ENABLE && state != PWR_DISABLE) { - return PWR_ERR_INVALIDE_PARAM; - } - return SetProcWattState(state); -} - -int PWR_PROC_GetWattAttrs(PWR_PROC_WattAttrs *wattAttrs) -{ - CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(wattAttrs); - return GetProcWattAttrs(wattAttrs); -} - -int PWR_PROC_SetWattAttrs(const PWR_PROC_WattAttrs *wattAttrs) -{ - CHECK_STATUS(STATUS_AUTHED); - CHECK_NULL_POINTER(wattAttrs); - if (wattAttrs->scaleThreshold < 0 || wattAttrs->scaleThreshold > PWR_ONE_HUNDRED || - wattAttrs->scaleInterval < 0 || wattAttrs->scaleInterval > PWR_MAX_WATT_SCALE_INTERVAL || - wattAttrs->domainMask < 0) { - return PWR_ERR_INVALIDE_PARAM; - } - return SetProcWattAttrs(wattAttrs); -} - -int PWR_PROC_GetWattProcs(pid_t wattProcs[], uint32_t *num) -{ - CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(wattProcs); - CHECK_NULL_POINTER(num); - if (*num == 0) { - return PWR_ERR_INVALIDE_PARAM; - } - return GetWattProcs(wattProcs, num); -} - -int PWR_PROC_AddWattProcs(const pid_t wattProcs[], uint32_t num) -{ - CHECK_STATUS(STATUS_AUTHED); - CHECK_NULL_POINTER(wattProcs); - if (num == 0 || num > PWR_MAX_PROC_NUM) { - return PWR_ERR_INVALIDE_PARAM; - } - return AddWattProcs(wattProcs, num); -} - -int PWR_PROC_DelWattProcs(const pid_t wattProcs[], uint32_t num) -{ - CHECK_STATUS(STATUS_AUTHED); - CHECK_NULL_POINTER(wattProcs); - if (num == 0 || num > PWR_MAX_PROC_NUM) { - return PWR_ERR_INVALIDE_PARAM; - } - return DelWattProcs(wattProcs, num); -} - -int PWR_PROC_GetSmartGridState(int *state) -{ - CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(state); - return GetSmartGridState(state); -} - -int PWR_PROC_SetSmartGridState(int state) -{ - CHECK_STATUS(STATUS_AUTHED); - if (state != PWR_ENABLE && state != PWR_DISABLE) { - return PWR_ERR_INVALIDE_PARAM; - } - return SetSmartGridState(state); -} - -int PWR_PROC_GetSmartGridProcs(PWR_PROC_SMART_GRID_LEVEL level, PWR_PROC_SmartGridProcs *sgProcs) -{ - CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(sgProcs); - if (sgProcs->procNum == 0) { - return PWR_ERR_INVALIDE_PARAM; - } - return GetSmartGridProcs(level, sgProcs); -} - -int PWR_PROC_SetSmartGridLevel(const PWR_PROC_SmartGridProcs *sgProcs) -{ - CHECK_STATUS(STATUS_AUTHED); - CHECK_NULL_POINTER(sgProcs); - if (sgProcs->procNum == 0 || sgProcs->procNum > PWR_MAX_PROC_NUM) { - return PWR_ERR_INVALIDE_PARAM; - } - return SetSmartGridLevel(sgProcs); -} - -int PWR_PROC_GetSmartGridGov(PWR_PROC_SmartGridGov *sgGov) -{ - CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(sgGov); - return GetSmartGridGov(sgGov); -} - -int PWR_PROC_SetSmartGridGov(const PWR_PROC_SmartGridGov *sgGov) -{ - CHECK_STATUS(STATUS_AUTHED); - CHECK_NULL_POINTER(sgGov); - if (sgGov->sgAgentState != PWR_ENABLE && sgGov->sgAgentState != PWR_DISABLE) { - return PWR_ERR_INVALIDE_PARAM; - } - return SetSmartGridGov(sgGov); -} - -int PWR_PROC_GetServiceState(PWR_PROC_ServiceStatus *sStatus) -{ - CHECK_STATUS(STATUS_REGISTERTED); - CHECK_NULL_POINTER(sStatus); - return GetServiceState(sStatus); -} - -int PWR_PROC_SetServiceState(PWR_PROC_ServiceState *sState) -{ - CHECK_STATUS(STATUS_AUTHED); - CHECK_NULL_POINTER(sState); - if (sState->state != PWR_SERVICE_START && sState->state != PWR_SERVICE_STOP) { - return PWR_ERR_INVALIDE_PARAM; - } - return SetServiceState(sState); -} #endif // #ifndef RELEASE_MODE \ No newline at end of file -- Gitee