Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Rbu_Linux.cpp File Reference

#include "smbios/compat.h"
#include <iostream>
#include <sstream>
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <string.h>
#include <errno.h>
#include <sys/types.h>
#include <unistd.h>
#include "RbuImpl.h"
#include "smbios/message.h"

Go to the source code of this file.

Namespaces

namespace  rbu

Functions

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)

Variables

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_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


Function Documentation

void doMonoUpdate_v0 FILE *  hdr_fh  )  [static]
 

Definition at line 235 of file Rbu_Linux.cpp.

References rbu::monoUpdateLoop(), rbu::rbu_v0_data_file, rbu::rbu_v0_size_file, and rbu::setSize().

Referenced by rbu::dellBiosUpdate().

void doMonoUpdate_v1 FILE *  hdr_fh  )  [static]
 

Definition at line 195 of file Rbu_Linux.cpp.

References rbu::monoUpdateLoop(), rbu::rbu_v1_mono_data_file, rbu::rbu_v1_mono_size_file, rbu::rbu_v1_pkt_size_file, and rbu::setSize().

Referenced by rbu::dellBiosUpdate().

void doMonoUpdate_v2 FILE *  hdr_fh  )  [static]
 

Definition at line 330 of file Rbu_Linux.cpp.

References rbu::monoUpdateLoop(), rbu::rbu_v2_fw_data_file, and rbu::setLoadValue().

Referenced by rbu::dellBiosUpdate().

void doPacketUpdate_v0 FILE *  hdr_fh  )  [static]
 

Definition at line 223 of file Rbu_Linux.cpp.

References rbu::pktUpdateLoop(), rbu::rbu_v0_data_file, rbu::rbu_v0_size_file, and rbu::setSize().

Referenced by rbu::dellBiosUpdate().

void doPacketUpdate_v1 FILE *  hdr_fh  )  [static]
 

Definition at line 183 of file Rbu_Linux.cpp.

References rbu::pktUpdateLoop(), rbu::rbu_v1_mono_size_file, rbu::rbu_v1_pkt_data_file, rbu::rbu_v1_pkt_size_file, and rbu::setSize().

Referenced by rbu::dellBiosUpdate().

void doPacketUpdate_v2 FILE *  hdr_fh  )  [static]
 

Definition at line 319 of file Rbu_Linux.cpp.

References rbu::pktUpdateLoop(), rbu::rbu_v2_fw_data_file, rbu::rbu_v2_pkt_size_file, rbu::setLoadValue(), and rbu::setSize().

Referenced by rbu::dellBiosUpdate().

driver_type getDriverType  ) 
 

Definition at line 58 of file Rbu_Linux.cpp.

References rbu::driver_type, rbu::rbu_v0_data_file, rbu::rbu_v1_mono_data_file, and rbu::rbu_v2_img_type_file.

Referenced by rbu::cancelDellBiosUpdate(), and rbu::dellBiosUpdate().

void monoUpdateLoop FILE *  hdr_fh,
FILE *  data_fh
[static]
 

Definition at line 142 of file Rbu_Linux.cpp.

Referenced by rbu::doMonoUpdate_v0(), rbu::doMonoUpdate_v1(), and rbu::doMonoUpdate_v2().

void pktUpdateLoop FILE *  hdr_fh,
const char *  packetFilename,
char *  buffer,
size_t  bufSize,
bool  openclose
[static]
 

Definition at line 101 of file Rbu_Linux.cpp.

References rbu::checksumPacket(), rbu::createPacket(), rbu_packet::pktData, rbu_packet::pktNum, UNREFERENCED_PARAMETER, and rbu::writePacket().

Referenced by rbu::doPacketUpdate_v0(), rbu::doPacketUpdate_v1(), and rbu::doPacketUpdate_v2().

void setLoadValue char  val  )  [static]
 

Definition at line 302 of file Rbu_Linux.cpp.

References rbu::rbu_v2_fw_load_file, and rbu::waitForFile().

Referenced by rbu::cancelDellBiosUpdate(), rbu::doMonoUpdate_v2(), and rbu::doPacketUpdate_v2().

void setPacketType packet_type  type,
const char *  fn = rbu_v2_img_type_file
[static]
 

Definition at line 265 of file Rbu_Linux.cpp.

References rbu::pt_any, rbu::pt_init, rbu::pt_mono, and rbu::pt_packet.

Referenced by rbu::cancelDellBiosUpdate(), and rbu::dellBiosUpdate().

void setSize const char *  fn,
size_t  sz
[static]
 

Definition at line 167 of file Rbu_Linux.cpp.

Referenced by rbu::cancelDellBiosUpdate(), rbu::doMonoUpdate_v0(), rbu::doMonoUpdate_v1(), rbu::doPacketUpdate_v0(), rbu::doPacketUpdate_v1(), and rbu::doPacketUpdate_v2().

void waitForFile const char *  fn,
time_t  wait
[static]
 

Definition at line 295 of file Rbu_Linux.cpp.

Referenced by rbu::setLoadValue().

FILE* writePacket const char *  fn,
const char *  buffer,
size_t  bufSize,
bool  openclose
[static]
 

Definition at line 70 of file Rbu_Linux.cpp.

Referenced by rbu::pktUpdateLoop().


Variable Documentation

const int RBU_PACKET_SIZE = 4096
 

Definition at line 56 of file Rbu_Linux.cpp.

const char* rbu_v0_data_file = "/proc/dell/rbu/rbudata"
 

Definition at line 43 of file Rbu_Linux.cpp.

Referenced by rbu::doMonoUpdate_v0(), rbu::doPacketUpdate_v0(), and rbu::getDriverType().

const char* rbu_v0_size_file = "/proc/dell/rbu/rbudatasize"
 

Definition at line 44 of file Rbu_Linux.cpp.

Referenced by rbu::cancelDellBiosUpdate(), rbu::doMonoUpdate_v0(), and rbu::doPacketUpdate_v0().

const char* rbu_v0_type_file = "/proc/dell/rbu/image_type"
 

Definition at line 42 of file Rbu_Linux.cpp.

Referenced by rbu::cancelDellBiosUpdate(), and rbu::dellBiosUpdate().

const char* rbu_v1_mono_data_file = "/sys/firmware/rbu/rbudata"
 

Definition at line 46 of file Rbu_Linux.cpp.

Referenced by rbu::doMonoUpdate_v1(), and rbu::getDriverType().

const char* rbu_v1_mono_size_file = "/sys/firmware/rbu/rbudatasize"
 

Definition at line 47 of file Rbu_Linux.cpp.

Referenced by rbu::cancelDellBiosUpdate(), rbu::doMonoUpdate_v1(), and rbu::doPacketUpdate_v1().

const char* rbu_v1_pkt_data_file = "/sys/firmware/rbu/packetdata"
 

Definition at line 48 of file Rbu_Linux.cpp.

Referenced by rbu::doPacketUpdate_v1().

const char* rbu_v1_pkt_size_file = "/sys/firmware/rbu/packetdatasize"
 

Definition at line 49 of file Rbu_Linux.cpp.

Referenced by rbu::cancelDellBiosUpdate(), rbu::doMonoUpdate_v1(), and rbu::doPacketUpdate_v1().

const char* rbu_v2_fw_data_file = "/sys/class/firmware/dell_rbu/data"
 

Definition at line 51 of file Rbu_Linux.cpp.

Referenced by rbu::doMonoUpdate_v2(), and rbu::doPacketUpdate_v2().

const char* rbu_v2_fw_load_file = "/sys/class/firmware/dell_rbu/loading"
 

Definition at line 52 of file Rbu_Linux.cpp.

Referenced by rbu::setLoadValue().

const char* rbu_v2_img_type_file = "/sys/devices/platform/dell_rbu/image_type"
 

Definition at line 53 of file Rbu_Linux.cpp.

Referenced by rbu::cancelDellBiosUpdate(), rbu::dellBiosUpdate(), and rbu::getDriverType().

const char* rbu_v2_pkt_size_file = "/sys/devices/platform/dell_rbu/packet_size"
 

Definition at line 54 of file Rbu_Linux.cpp.

Referenced by rbu::doPacketUpdate_v2().


Generated on Tue Feb 26 14:39:36 2008 for SMBIOS Library by  doxygen 1.3.9.1