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