xref: /openbmc/phosphor-ipmi-flash/flags.hpp (revision a49a3f79)
1 #pragma once
2 
3 #include <cstdint>
4 
5 namespace ipmi_flash
6 {
7 
8 class FirmwareFlags
9 {
10   public:
11     enum UpdateFlags : std::uint16_t
12     {
13         openRead = (1 << 0),  /* Flag for reading. */
14         openWrite = (1 << 1), /* Flag for writing. */
15         ipmi = (1 << 8), /* Expect to send contents over IPMI BlockTransfer. */
16         p2a = (1 << 9),  /* Expect to send contents over P2A bridge. */
17         lpc = (1 << 10), /* Expect to send contents over LPC bridge. */
18         /* New bridges starting with net densely pack the rest of the bits */
19         net = (1 << 11), /* Expect to send contents over network bridge. */
20         /* nextBridge = (2 << 11) */
21     };
22 };
23 
24 } // namespace ipmi_flash
25