Storage.c 5.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. /****************************************************************
  2. ****************************************************************
  3. ** **
  4. ** (C)Copyright 2005-2006, American Megatrends Inc. **
  5. ** **
  6. ** All Rights Reserved. **
  7. ** **
  8. ** 6145-F, Northbelt Parkway, Norcross, **
  9. ** **
  10. ** Georgia - 30071, USA. Phone-(770)-246-8600. **
  11. ** **
  12. ****************************************************************
  13. ****************************************************************/
  14. /*****************************************************************
  15. *
  16. * Storage.c
  17. * Storage Command Handler
  18. *
  19. * Author: Rama Bisa <ramab@ami.com>
  20. * Bakka Ravinder Reddy <bakkar@ami.com>
  21. *****************************************************************/
  22. #include "MsgHndlr.h"
  23. #include "com_IPMI_Storage.h"
  24. #include "Support.h"
  25. #include "main.h"
  26. const CmdHndlrMap_T g_Storage_CmdHndlr [] =
  27. {
  28. /*--------------------- FRU Device Commands ---------------------------------*/
  29. #if FRU_DEVICE == 1
  30. { CMD_FRU_INVENTORY_AREA_INFO, PRIV_USER, GET_FRU_INVENTORY_AREA_INFO, sizeof (FRUInventoryAreaInfoReq_T), 0xAAAA ,0xFFFF},
  31. { CMD_READ_FRU_DATA, PRIV_USER, READ_FRU_DATA, sizeof (FRUReadReq_T), 0xAAAA ,0xFFFF},
  32. { CMD_WRITE_FRU_DATA, PRIV_OPERATOR, WRITE_FRU_DATA, 0xFF, 0xAAAA ,0xFFFF},
  33. #endif /* FRU_DEVICE */
  34. /*--------------------- SDR Device Commands ---------------------------------*/
  35. #if SDR_DEVICE == 1
  36. { CMD_GET_SDR_REPOSITORY_INFO, PRIV_USER, GET_SDR_REPOSITORY_INFO, 0x00, 0xAAAA ,0xFFFF},
  37. { CMD_GET_SDR_REPOSITORY_ALLOCATION_INFO, PRIV_USER, GET_SDR_REPOSITORY_ALLOCATION_INFO, 0x00, 0xAAAA ,0xFFFF},
  38. { CMD_RESERVE_SDR_REPOSITORY, PRIV_USER, RESERVE_SDR_REPOSITORY, 0x00, 0xAAAA ,0xFFFF},
  39. { CMD_GET_SDR, PRIV_USER, GET_SDR, sizeof(GetSDRReq_T), 0xAAAA ,0xFFFF},
  40. { CMD_ADD_SDR, PRIV_OPERATOR, ADD_SDR, 0xFF, 0xAAAA ,0xFFFF},
  41. { CMD_PARTIAL_ADD_SDR, PRIV_OPERATOR, PARTIAL_ADD_SDR, 0xFF, 0xAAAA ,0xFFFF},
  42. { CMD_DELETE_SDR, PRIV_OPERATOR, DELETE_SDR, sizeof(DeleteSDRReq_T), 0xAAAA ,0xFFFF},
  43. { CMD_CLEAR_SDR_REPOSITORY, PRIV_OPERATOR, CLEAR_SDR_REPOSITORY, sizeof(ClearSDRReq_T), 0xAAAA ,0xFFFF},
  44. { CMD_GET_SDR_REPOSITORY_TIME, PRIV_USER, GET_SDR_REPOSITORY_TIME, 0x00, 0xAAAA ,0xFFFF},
  45. // { CMD_SET_SDR_REPOSITORY_TIME, PRIV_OPERATOR, SET_SDR_REPOSITORY_TIME, sizeof(SetSDRRepositoryTimeReq_T), 0xAAAA ,0xFFFF},
  46. // { CMD_ENTER_SDR_REPOSITORY_UPDATE_MODE, PRIV_OPERATOR, ENTER_SDR_REPOSITORY_UPDATE_MODE, 0x00, 0xAAAA ,0xFFFF},
  47. // { CMD_EXIT_SDR_REPOSITORY_UPDATE_MODE, PRIV_OPERATOR, EXIT_SDR_REPOSITORY_UPDATE_MODE, 0x00, 0xAAAA ,0xFFFF},
  48. { CMD_RUN_INITIALIZATION_AGENT, PRIV_OPERATOR, RUN_INITIALIZATION_AGENT, sizeof(RunInitAgentReq_T), 0xAAAA ,0xFFFF},
  49. #endif /* SDR_DEVICE */
  50. /*--------------------- SEL Device Commands ----------------------------------*/
  51. #if SEL_DEVICE == 1
  52. { CMD_GET_SEL_INFO, PRIV_USER, GET_SEL_INFO, 0x00, 0xAAAA ,0xFFFF},
  53. { CMD_GET_SEL_ALLOCATION_INFO, PRIV_USER, GET_SEL_ALLOCATION_INFO, 0x00, 0xAAAA ,0xFFFF},
  54. { CMD_RESERVE_SEL, PRIV_USER, RESERVE_SEL, 0x00, 0xAAAA ,0xFFFF},
  55. { CMD_GET_SEL_ENTRY, PRIV_USER, GET_SEL_ENTRY, sizeof(GetSELReq_T), 0xAAAA ,0xFFFF},
  56. { CMD_ADD_SEL_ENTRY, PRIV_OPERATOR, ADD_SEL_ENTRY, sizeof(SELEventRecord_T), 0xAAAA ,0xFFFF},
  57. { CMD_PARTIAL_ADD_SEL_ENTRY, PRIV_OPERATOR, PARTIAL_ADD_SEL_ENTRY, 0xFF, 0xAAAA ,0xFFFF},
  58. { CMD_DELETE_SEL_ENTRY, PRIV_OPERATOR, DELETE_SEL_ENTRY, sizeof(DeleteSELReq_T), 0xAAAA ,0xFFFF},
  59. { CMD_CLEAR_SEL, PRIV_OPERATOR, CLEAR_SEL, sizeof(ClearSELReq_T), 0xAAAA ,0xFFFF},
  60. { CMD_GET_SEL_TIME, PRIV_USER, GET_SEL_TIME, 0x00, 0xAAAA ,0xFFFF},
  61. { CMD_SET_SEL_TIME, PRIV_OPERATOR, SET_SEL_TIME, sizeof(SetSELTimeReq_T), 0xAAAA ,0xFFFF},
  62. // { CMD_GET_AUXILIARY_LOG_STATUS, PRIV_USER, GET_AUXILIARY_LOG_STATUS, 0xFF, 0xAAAA ,0xFFFF},
  63. // { CMD_SET_AUXILIARY_LOG_STATUS, PRIV_ADMIN, SET_AUXILIARY_LOG_STATUS, 0xFF, 0xAAAA ,0xFFFF},
  64. { CMD_GET_SEL_TIME_UTC_OFFSET, PRIV_USER, GET_SEL_TIME_UTC_OFFSET, 0x00, 0xAAAA ,0xFFFF},
  65. { CMD_SET_SEL_TIME_UTC_OFFSET, PRIV_OPERATOR, SET_SEL_TIME_UTC_OFFSET, sizeof(SetSELTimeUTCOffsetReq_T), 0xAAAA ,0xFFFF},
  66. #endif /* SEL_DEVICE */
  67. { 0x00, 0x00, 0x00, 0x00, 0x0000 , 0x0000}
  68. };