123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- #include "Util.h"
- #include <sys/sysinfo.h>
- /*----------------------------------------
- * GetBits
- *----------------------------------------*/
- uint8_t
- GetBits (uint8_t Val, uint8_t Mask)
- {
- uint8_t ExtVal = 0;
- while (0 != Mask)
- {
- if (0 != (Mask & 0x80))
- {
- ExtVal <<= 1;
- if (0 != (Val & 0x80)) { ExtVal += 0x01; }
- }
- Val <<= 1;
- Mask <<= 1;
- }
- return ExtVal;
- }
- /*------------------------------------------
- * SetBits
- *------------------------------------------*/
- uint8_t
- SetBits (uint8_t Mask, uint8_t Val)
- {
- uint8_t FinVal = 0;
- uint8_t i;
- for (i = 0; i < 8; i++)
- {
- FinVal >>= 1;
- if (0 != (Mask & 0x01))
- {
- if (0 != (Val & 0x01)) { FinVal |= 0x80; }
- Val >>= 1;
- }
- Mask >>= 1;
- }
- return FinVal;
- }
- /*------------------------------------------
- * CalculateCheckSum
- *------------------------------------------*/
- uint8_t
- CalculateCheckSum (uint8_t* Data, uint16_t Len)
- {
- uint8_t Sum;
- uint16_t i;
- Sum = 0;
- for (i = 0; i < Len; i++)
- {
- Sum += Data [i];
- }
- return (0x100 - Sum);
- }
- /*
- * @fn TimeUpdate
- * @return Returns the system uptime
- */
- uint32_t TimeUpdate()
- {
- struct sysinfo time;
- sysinfo(&time);
- return time.uptime;
- }
- // /**
- // *@fn GetSysCtlvalue
- // *@brief This function retrieves the values from Sysctl
- // *@param TagName -Tagname form which value has to be retrieved
- // *@param SysVal - Where the value is stored
- // *@return Returns 0 on success
- // * Returns 1 on failure
- // */
- // int GetJiffySysCtlvalue (const char *TagName, long long *SysVal)
- // {
- // unsigned long RetVal;
- // FILE* SysFile = fopen (TagName, "r");
- // unsigned long Hertz = sysconf(_SC_CLK_TCK);
- // if ((!SysFile) || (!SysVal))
- // return 1;
- // fscanf (SysFile, "%lu", &RetVal);
- // fclose (SysFile);
- // *SysVal = (RetVal*1000)/Hertz;
- // return 0;
- // }
- int FlushUserInfo(void)
- {
- //TODO:
- return 0;
- }
- int FlushFRU(void)
- {
- //TODO:
- return 0;
- }
- int FlushSDR(void)
- {
- //TODO:
- return 0;
- }
- int FlushIpmiConfig(void)
- {
- //TODO:
- return 0;
- }
- int FlushSEL(void)
- {
- //TODO:
- return 0;
- }
|