summaryrefslogtreecommitdiffstats
path: root/dcmihandler.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'dcmihandler.hpp')
-rw-r--r--dcmihandler.hpp76
1 files changed, 76 insertions, 0 deletions
diff --git a/dcmihandler.hpp b/dcmihandler.hpp
index e2a4c10..5388344 100644
--- a/dcmihandler.hpp
+++ b/dcmihandler.hpp
@@ -27,6 +27,8 @@ enum Commands
GET_MGMNT_CTRL_ID_STR = 0x09,
SET_MGMNT_CTRL_ID_STR = 0x0A,
GET_TEMP_READINGS = 0x10,
+ SET_CONF_PARAMS = 0x12,
+ GET_CONF_PARAMS = 0x13,
};
static constexpr auto propIntf = "org.freedesktop.DBus.Properties";
@@ -43,6 +45,16 @@ static constexpr auto temperatureSensorType = 0x01;
static constexpr auto maxInstances = 255;
static constexpr auto configFile =
"/usr/share/ipmi-providers/dcmi_sensors.json";
+static constexpr auto ethernetIntf =
+ "xyz.openbmc_project.Network.EthernetInterface";
+static constexpr auto ethernetDefaultChannelNum = 0x1;
+static constexpr auto networkRoot = "/xyz/openbmc_project/network";
+static constexpr auto dhcpObj = "/xyz/openbmc_project/network/config/dhcp";
+static constexpr auto dhcpIntf =
+ "xyz.openbmc_project.Network.DHCPConfiguration";
+static constexpr auto systemBusName = "org.freedesktop.systemd1";
+static constexpr auto systemPath = "/org/freedesktop/systemd1";
+static constexpr auto systemIntf = "org.freedesktop.systemd1.Manager";
namespace assettag
{
@@ -552,6 +564,70 @@ struct GetSensorInfoResponseHdr
uint8_t numInstances; //!< No. of instances for requested id
uint8_t numRecords; //!< No. of record ids in the response
} __attribute__((packed));
+/**
+ * @brief Parameters for DCMI Configuration Parameters
+ */
+enum class DCMIConfigParameters: uint8_t
+{
+ ActivateDHCP = 1,
+ DiscoveryConfig,
+ DHCPTiming1,
+ DHCPTiming2,
+ DHCPTiming3,
+};
+
+/** @struct SetConfParamsRequest
+ *
+ * DCMI Set DCMI Configuration Parameters Command.
+ * Refer DCMI specification Version 1.1 Section 6.1.2
+ */
+struct SetConfParamsRequest
+{
+ uint8_t groupID; //!< Group extension identification.
+ uint8_t paramSelect; //!< Parameter selector.
+ uint8_t setSelect; //!< Set Selector (use 00h for parameters that only
+ //!< have one set).
+ uint8_t data[]; //!< Configuration parameter data.
+} __attribute__((packed));
+
+/** @struct SetConfParamsResponse
+ *
+ * DCMI Set DCMI Configuration Parameters Command response.
+ * Refer DCMI specification Version 1.1 Section 6.1.2
+ */
+struct SetConfParamsResponse
+{
+ uint8_t groupID; //!< Group extension identification.
+} __attribute__((packed));
+
+/** @struct GetConfParamsRequest
+ *
+ * DCMI Get DCMI Configuration Parameters Command.
+ * Refer DCMI specification Version 1.1 Section 6.1.3
+ */
+struct GetConfParamsRequest
+{
+ uint8_t groupID; //!< Group extension identification.
+ uint8_t paramSelect; //!< Parameter selector.
+ uint8_t setSelect; //!< Set Selector. Selects a given set of parameters
+ //!< under a given Parameter selector value. 00h if
+ //!< parameter doesn't use a Set Selector.
+} __attribute__((packed));
+
+/** @struct GetConfParamsResponse
+ *
+ * DCMI Get DCMI Configuration Parameters Command response.
+ * Refer DCMI specification Version 1.1 Section 6.1.3
+ */
+struct GetConfParamsResponse
+{
+ uint8_t groupID; //!< Group extension identification.
+ uint8_t major; //!< DCMI Spec Conformance - major ver = 01h.
+ uint8_t minor; //!< DCMI Spec Conformance - minor ver = 05h.
+ uint8_t paramRevision; //!< Parameter Revision = 01h.
+ uint8_t data[]; //!< Parameter data.
+
+} __attribute__((packed));
} // namespace dcmi
OpenPOWER on IntegriCloud