diff options
Diffstat (limited to 'types.hpp')
-rw-r--r-- | types.hpp | 78 |
1 files changed, 39 insertions, 39 deletions
@@ -1,49 +1,49 @@ #pragma once +#include <xyz/openbmc_project/Time/Owner/server.hpp> +#include <xyz/openbmc_project/Time/Synchronization/server.hpp> + namespace phosphor { namespace time { - /** @brief Supported time modes - * NTP Time sourced by Network Time Server - * MANUAL User of the system need to set the time - */ - enum class Mode - { - NTP, - MANUAL, - }; + /** @brief Alias to time sync mode class */ + using ModeSetting = + sdbusplus::xyz::openbmc_project::Time::server::Synchronization; + + /** @brief Alias to time owner class */ + using OwnerSetting = sdbusplus::xyz::openbmc_project::Time::server::Owner; + + /** @brief Supported time sync modes + * NTP Time sourced by Network Time Server + * Manual User of the system need to set the time + */ + using Mode = ModeSetting::Method; - /** @brief Supported time owners - * BMC Time source may be NTP or MANUAL but it has to be set natively - * on the BMC. Meaning, host can not set the time. What it also - * means is that when BMC gets IPMI_SET_SEL_TIME, then its ignored. - * similarly, when BMC gets IPMI_GET_SEL_TIME, then the BMC's time - * is returned. - * - * HOST Its only IPMI_SEL_SEL_TIME that will set the time on BMC. - * Meaning, IPMI_GET_SEL_TIME and request to get BMC time will - * result in same value. - * - * SPLIT Both BMC and HOST will maintain their individual clocks but then - * the time information is stored in BMC. BMC can have either NTP - * or MANUAL as it's source of time and will set the time directly - * on the BMC. When IPMI_SET_SEL_TIME is received, then the delta - * between that and BMC's time is calculated and is stored. - * When BMC reads the time, the current time is returned. - * When IPMI_GET_SEL_TIME is received, BMC's time is retrieved and - * then the delta offset is factored in prior to returning. - * - * BOTH: BMC's time is set with whoever that sets the time. Similarly, - * BMC's time is returned to whoever that asks the time. - */ - enum class Owner - { - BMC, - HOST, - SPLIT, - BOTH, - }; + /** @brief Supported time owners + * BMC Time source may be NTP or Manual but it has to be set natively + * on the BMC. Meaning, host can not set the time. What it also + * means is that when BMC gets IPMI_SET_SEL_TIME, then its ignored. + * similarly, when BMC gets IPMI_GET_SEL_TIME, then the BMC's time + * is returned. + * + * Host Its only IPMI_SEL_SEL_TIME that will set the time on BMC. + * Meaning, IPMI_GET_SEL_TIME and request to get BMC time will + * result in same value. + * + * Split Both BMC and Host will maintain their individual clocks but then + * the time information is stored in BMC. BMC can have either NTP + * or Manual as it's source of time and will set the time directly + * on the BMC. When IPMI_SET_SEL_TIME is received, then the delta + * between that and BMC's time is calculated and is stored. + * When BMC reads the time, the current time is returned. + * When IPMI_GET_SEL_TIME is received, BMC's time is retrieved and + * then the delta offset is factored in prior to returning. + * + * Both: BMC's time is set with whoever that sets the time. Similarly, + * BMC's time is returned to whoever that asks the time. + */ + using Owner = OwnerSetting::Owners; } } |