Classes | |
| class | IRbuHdr |
| Interface definition for RBU HDR operations. More... | |
| struct | rbu_hdr_file_header |
| struct | rbu_packet |
| struct | rbu_packet_0 |
| class | RbuFactory |
| AbstractFactory that produces IRbuHdr objects. More... | |
| class | RbuFactoryImpl |
| class | RbuHdr |
Enumerations | |
| enum | packet_type { pt_any, pt_mono, pt_packet, pt_init } |
| enum | driver_type { rbu_unsupported, rbu_linux_v0, rbu_linux_v1, rbu_linux_v2 } |
Functions | |
| DECLARE_EXCEPTION (RbuException) | |
| DECLARE_EXCEPTION_EX (RbuNotSupported, rbu, RbuException) | |
| DECLARE_EXCEPTION_EX (InvalidHdrFile, rbu, RbuException) | |
| DECLARE_EXCEPTION_EX (UnsupportedSystemForHdrFile, rbu, RbuException) | |
| DECLARE_EXCEPTION_EX (HdrFileIOError, rbu, RbuException) | |
| DECLARE_EXCEPTION_EX (RbuDriverIOError, rbu, RbuException) | |
| std::ostream & | operator<< (std::ostream &cout, const IRbuHdr &item) |
| void | cancelDellBiosUpdate () |
| Cancel BIOS Update on Dell systems. | |
| bool | checkSystemId (const IRbuHdr &hdr, u16 sysId) |
| Check to see if a HDR file supports a specific System ID. | |
| void | dellBiosUpdate (const IRbuHdr &hdr, packet_type force_type) |
| Update BIOS on Dell systems. | |
| int | compareBiosVersion (std::string ver1, std::string ver2) |
| Compare BIOS Versions. | |
| driver_type | getDriverType () |
| FILE * | writePacket (const char *fn, const char *buffer, size_t bufSize, bool openclose) |
| void | pktUpdateLoop (FILE *hdr_fh, const char *packetFilename, char *buffer, size_t bufSize, bool openclose) |
| void | monoUpdateLoop (FILE *hdr_fh, FILE *data_fh) |
| void | setSize (const char *fn, size_t sz) |
| void | doPacketUpdate_v1 (FILE *hdr_fh) |
| void | doMonoUpdate_v1 (FILE *hdr_fh) |
| void | doPacketUpdate_v0 (FILE *hdr_fh) |
| void | doMonoUpdate_v0 (FILE *hdr_fh) |
| void | setPacketType (packet_type type, const char *fn=rbu_v2_img_type_file) |
| void | waitForFile (const char *fn, time_t wait) |
| void | setLoadValue (char val) |
| void | doPacketUpdate_v2 (FILE *hdr_fh) |
| void | doMonoUpdate_v2 (FILE *hdr_fh) |
| string | stringToLower (string in) |
| int | compareSamePrefixOldBiosVersion (std::string ver1, std::string ver2) |
| int | compareOldBiosVersion (std::string ver1, std::string ver2) |
| void | splitNewVersion (std::string ver, unsigned int &maj, unsigned int &min, unsigned int &ext) |
| int | compareNewBiosVersion (std::string ver1, std::string ver2) |
| packet_type | getSupportedPacketType (void) |
| void | activateRbuToken () |
| void | cancelRbuToken () |
| void | checksumPacket (rbu_packet *pkt, size_t size) |
| void | createPacket (char *buffer, size_t bufSize, size_t imageSize) |
| DEFINE_EXCEPTION_EX (RbuNotSupportedImpl, rbu, RbuNotSupported) | |
| DEFINE_EXCEPTION_EX (InvalidHdrFileImpl, rbu, InvalidHdrFile) | |
| DEFINE_EXCEPTION_EX (UnsupportedSystemForHdrFileImpl, rbu, UnsupportedSystemForHdrFile) | |
| DEFINE_EXCEPTION_EX (HdrFileIOErrorImpl, rbu, HdrFileIOError) | |
| DEFINE_EXCEPTION_EX (RbuDriverIOErrorImpl, rbu, RbuDriverIOError) | |
Variables | |
| const int | SYSID_OVERRIDE = 1 |
| const int | BIOSVER_OVERRIDE = 2 |
| const char * | rbu_v0_type_file = "/proc/dell/rbu/image_type" |
| const char * | rbu_v0_data_file = "/proc/dell/rbu/rbudata" |
| const char * | rbu_v0_size_file = "/proc/dell/rbu/rbudatasize" |
| const char * | rbu_v1_mono_data_file = "/sys/firmware/rbu/rbudata" |
| const char * | rbu_v1_mono_size_file = "/sys/firmware/rbu/rbudatasize" |
| const char * | rbu_v1_pkt_data_file = "/sys/firmware/rbu/packetdata" |
| const char * | rbu_v1_pkt_size_file = "/sys/firmware/rbu/packetdatasize" |
| const char * | rbu_v2_fw_data_file = "/sys/class/firmware/dell_rbu/data" |
| const char * | rbu_v2_fw_load_file = "/sys/class/firmware/dell_rbu/loading" |
| const char * | rbu_v2_drv_data_file = "" |
| const char * | rbu_v2_img_type_file = "/sys/devices/platform/dell_rbu/image_type" |
| const char * | rbu_v2_pkt_size_file = "/sys/devices/platform/dell_rbu/packet_size" |
| const int | RBU_PACKET_SIZE = 4096 |
| rbu::rbu_packet | LIBSMBIOS_PACKED_ATTR |
| const int | NUM_SYS_ID_IN_HDR = 12 |
|
|
Definition at line 49 of file DellRbu.h. Referenced by cancelDellBiosUpdate(), dellBiosUpdate(), and getDriverType(). |
|
|
Definition at line 45 of file DellRbu.h. Referenced by dellBiosUpdate(), and getSupportedPacketType(). |
|
|
Definition at line 364 of file RbuHdr.cpp. References TokenTableFactory::getFactory(), TokenTableFactory::getSingleton(), and RBU_ACTIVATE. Referenced by dellBiosUpdate(). |
|
|
Cancel BIOS Update on Dell systems.
Definition at line 464 of file Rbu_Linux.cpp. References cancelRbuToken(), driver_type, getDriverType(), pt_init, rbu_linux_v0, rbu_linux_v1, rbu_linux_v2, rbu_v0_size_file, rbu_v0_type_file, rbu_v1_mono_size_file, rbu_v1_pkt_size_file, rbu_v2_img_type_file, setLoadValue(), setPacketType(), and setSize(). |
|
|
Definition at line 371 of file RbuHdr.cpp. References TokenTableFactory::getFactory(), TokenTableFactory::getSingleton(), and RBU_CANCEL. Referenced by cancelDellBiosUpdate(). |
|
||||||||||||
|
Definition at line 378 of file RbuHdr.cpp. References rbu_packet::pktChksum, and u16. Referenced by createPacket(), and pktUpdateLoop(). |
|
||||||||||||
|
Check to see if a HDR file supports a specific System ID.
Definition at line 146 of file RbuHdr.cpp. References IRbuHdr::getSystemIdList(), u16, and u32. |
|
||||||||||||
|
Compare BIOS Versions.
Definition at line 312 of file RbuHdr.cpp. References compareNewBiosVersion(), compareOldBiosVersion(), and stringToLower(). |
|
||||||||||||
|
Definition at line 278 of file RbuHdr.cpp. References splitNewVersion(). Referenced by compareBiosVersion(). |
|
||||||||||||
|
Definition at line 218 of file RbuHdr.cpp. References compareSamePrefixOldBiosVersion(). Referenced by compareBiosVersion(). |
|
||||||||||||
|
Definition at line 206 of file RbuHdr.cpp. Referenced by compareOldBiosVersion(). |
|
||||||||||||||||
|
Definition at line 390 of file RbuHdr.cpp. References checksumPacket(), rbu_packet::hdrSize, rbu_packet::pktChksum, rbu_packet::pktId, rbu_packet::pktNum, rbu_packet::pktSetId, rbu_packet::pktSize, rbu_packet::pktVer, rbu_packet::reserved1, rbu_packet::reserved2, and rbu_packet::totPkts. Referenced by pktUpdateLoop(). |
|
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||
|
Update BIOS on Dell systems.
Definition at line 359 of file Rbu_Linux.cpp. References activateRbuToken(), doMonoUpdate_v0(), doMonoUpdate_v1(), doMonoUpdate_v2(), doPacketUpdate_v0(), doPacketUpdate_v1(), doPacketUpdate_v2(), driver_type, getDriverType(), IRbuHdr::getFh(), getSupportedPacketType(), packet_type, pt_any, pt_init, pt_mono, pt_packet, rbu_linux_v0, rbu_linux_v1, rbu_linux_v2, rbu_v0_type_file, rbu_v2_img_type_file, and setPacketType(). |
|
|
Definition at line 235 of file Rbu_Linux.cpp. References monoUpdateLoop(), rbu_v0_data_file, rbu_v0_size_file, and setSize(). Referenced by dellBiosUpdate(). |
|
|
Definition at line 195 of file Rbu_Linux.cpp. References monoUpdateLoop(), rbu_v1_mono_data_file, rbu_v1_mono_size_file, rbu_v1_pkt_size_file, and setSize(). Referenced by dellBiosUpdate(). |
|
|
Definition at line 330 of file Rbu_Linux.cpp. References monoUpdateLoop(), rbu_v2_fw_data_file, and setLoadValue(). Referenced by dellBiosUpdate(). |
|
|
Definition at line 223 of file Rbu_Linux.cpp. References pktUpdateLoop(), RBU_PACKET_SIZE, rbu_v0_data_file, rbu_v0_size_file, and setSize(). Referenced by dellBiosUpdate(). |
|
|
Definition at line 183 of file Rbu_Linux.cpp. References pktUpdateLoop(), RBU_PACKET_SIZE, rbu_v1_mono_size_file, rbu_v1_pkt_data_file, rbu_v1_pkt_size_file, and setSize(). Referenced by dellBiosUpdate(). |
|
|
Definition at line 319 of file Rbu_Linux.cpp. References pktUpdateLoop(), RBU_PACKET_SIZE, rbu_v2_fw_data_file, rbu_v2_pkt_size_file, setLoadValue(), and setSize(). Referenced by dellBiosUpdate(). |
|
|
Definition at line 59 of file Rbu_Linux.cpp. References driver_type, rbu_linux_v0, rbu_linux_v1, rbu_linux_v2, rbu_unsupported, rbu_v0_data_file, rbu_v1_mono_data_file, and rbu_v2_img_type_file. Referenced by cancelDellBiosUpdate(), and dellBiosUpdate(). |
|
|
Definition at line 343 of file RbuHdr.cpp. References SmbiosFactory::getFactory(), SmbiosFactory::getSingleton(), packet_type, pt_mono, pt_packet, RBU_SMBIOS_STRUCT, and u8. Referenced by dellBiosUpdate(). |
|
||||||||||||
|
Definition at line 142 of file Rbu_Linux.cpp. Referenced by doMonoUpdate_v0(), doMonoUpdate_v1(), and doMonoUpdate_v2(). |
|
||||||||||||
|
Definition at line 161 of file RbuHdr.cpp. References IRbuHdr::streamify(). |
|
||||||||||||||||||||||||
|
Definition at line 102 of file Rbu_Linux.cpp. References checksumPacket(), createPacket(), rbu_packet::pktData, rbu_packet::pktNum, and writePacket(). Referenced by doPacketUpdate_v0(), doPacketUpdate_v1(), and doPacketUpdate_v2(). |
|
|
Definition at line 302 of file Rbu_Linux.cpp. References rbu_v2_fw_load_file, and waitForFile(). Referenced by cancelDellBiosUpdate(), doMonoUpdate_v2(), and doPacketUpdate_v2(). |
|
||||||||||||
|
Definition at line 265 of file Rbu_Linux.cpp. References pt_any, pt_init, pt_mono, and pt_packet. Referenced by cancelDellBiosUpdate(), and dellBiosUpdate(). |
|
||||||||||||
|
Definition at line 167 of file Rbu_Linux.cpp. Referenced by cancelDellBiosUpdate(), doMonoUpdate_v0(), doMonoUpdate_v1(), doPacketUpdate_v0(), doPacketUpdate_v1(), and doPacketUpdate_v2(). |
|
||||||||||||||||||||
|
Definition at line 248 of file RbuHdr.cpp. References DCOUT. Referenced by compareNewBiosVersion(), and testRbu::testRbuNewVerSplit(). |
|
|
Definition at line 198 of file RbuHdr.cpp. Referenced by compareBiosVersion(). |
|
||||||||||||
|
Definition at line 295 of file Rbu_Linux.cpp. Referenced by setLoadValue(). |
|
||||||||||||||||||||
|
Definition at line 71 of file Rbu_Linux.cpp. Referenced by pktUpdateLoop(). |
|
|
|
|
|
|
|
|
Definition at line 102 of file RbuLowLevel.h. Referenced by RbuHdr::RbuHdr(). |
|
|
Definition at line 57 of file Rbu_Linux.cpp. Referenced by doPacketUpdate_v0(), doPacketUpdate_v1(), and doPacketUpdate_v2(). |
|
|
Definition at line 43 of file Rbu_Linux.cpp. Referenced by doMonoUpdate_v0(), doPacketUpdate_v0(), and getDriverType(). |
|
|
Definition at line 44 of file Rbu_Linux.cpp. Referenced by cancelDellBiosUpdate(), doMonoUpdate_v0(), and doPacketUpdate_v0(). |
|
|
Definition at line 42 of file Rbu_Linux.cpp. Referenced by cancelDellBiosUpdate(), and dellBiosUpdate(). |
|
|
Definition at line 46 of file Rbu_Linux.cpp. Referenced by doMonoUpdate_v1(), and getDriverType(). |
|
|
Definition at line 47 of file Rbu_Linux.cpp. Referenced by cancelDellBiosUpdate(), doMonoUpdate_v1(), and doPacketUpdate_v1(). |
|
|
Definition at line 48 of file Rbu_Linux.cpp. Referenced by doPacketUpdate_v1(). |
|
|
Definition at line 49 of file Rbu_Linux.cpp. Referenced by cancelDellBiosUpdate(), doMonoUpdate_v1(), and doPacketUpdate_v1(). |
|
|
Definition at line 53 of file Rbu_Linux.cpp. |
|
|
Definition at line 51 of file Rbu_Linux.cpp. Referenced by doMonoUpdate_v2(), and doPacketUpdate_v2(). |
|
|
Definition at line 52 of file Rbu_Linux.cpp. Referenced by setLoadValue(). |
|
|
Definition at line 54 of file Rbu_Linux.cpp. Referenced by cancelDellBiosUpdate(), dellBiosUpdate(), and getDriverType(). |
|
|
Definition at line 55 of file Rbu_Linux.cpp. Referenced by doPacketUpdate_v2(). |
|
|
|
1.3.5