Power.Cap: add properties to control Power Limit
Based on the chapter 6.6 - Power management of DCMI specification, BMC
needs more information to control Power Lmit.
This commit adds 3 properties to control Power Limit, the list of
added properties as below:
1. ExceptionAction: Exception Action
2. CorrectionTime: Correction time in microseconds
3. SamplingPeriod: Sampling period in microseconds
Those properties are used to monitor total power consumption, depending
on the user's configuration, BMC can turn off the power/log event only
or do nothing when the total power consumption is greater than the power
limit.
Change-Id: I981f06855d6a55b1207541c84d53d774d0d25491
Signed-off-by: Thang Tran <thuutran@amperecomputing.com>
diff --git a/yaml/xyz/openbmc_project/Control/Power/Cap.interface.yaml b/yaml/xyz/openbmc_project/Control/Power/Cap.interface.yaml
index acbf5e9..6b0ee09 100644
--- a/yaml/xyz/openbmc_project/Control/Power/Cap.interface.yaml
+++ b/yaml/xyz/openbmc_project/Control/Power/Cap.interface.yaml
@@ -42,3 +42,50 @@
When the PowerCap is set to any value between MinSoftPowerCapValue and
MinPowerCapValue an attempt will be made to maintain the cap but it
will not be guaranted.
+
+ - name: ExceptionAction
+ type: enum[self.ExceptionActions]
+ default: NoAction
+ description: >
+ Exception Actions, taken if the Power Limit is exceeded and cannot be
+ controlled within the Correction time limit.
+
+ - name: CorrectionTime
+ type: uint64
+ default: 0
+ description: >
+ Correction Time Limit in microseconds. Maximum time taken to limit the
+ power after the platform power has reached the power limit before the
+ Exception Action will be taken. The Exception Action shall be taken if
+ the system power usage constantly exceeds the specified power limit
+ for more than the Correction Time Limit interval. The Correction Time
+ Limit timeout automatically restarts if the system power meets or
+ drops below the Power Limit.
+
+ - name: SamplingPeriod
+ type: uint64
+ default: 1000000
+ description: >
+ Management application Statistics Sampling period in microseconds.
+
+enumerations:
+ - name: ExceptionActions
+ description: >
+ Exception actions, taken if the Power Limit is exceeded and cannot be
+ controlled within the Correction Time Limit.
+ values:
+ - name: NoAction
+ description: >
+ No action is called.
+
+ - name: HardPowerOff
+ description: >
+ Hard Power Off system and log event.
+
+ - name: LogEventOnly
+ decription: >
+ Log Event Only.
+
+ - name: Oem
+ decription: >
+ OEM defined action.