summaryrefslogtreecommitdiffstats
path: root/src/occ_405/cmdh/cmdh_fsp_cmds.h
diff options
context:
space:
mode:
authorWilliam Bryan <wilbryan@us.ibm.com>2016-01-19 09:34:26 -0600
committerWilliam A. Bryan <wilbryan@us.ibm.com>2016-01-27 16:28:53 -0600
commit0fc82c9f55482c6a16a021c399095276f6374b07 (patch)
tree1d9523b628a8be1e0f4a67d7a7eccb6c5a91d2b1 /src/occ_405/cmdh/cmdh_fsp_cmds.h
parent1cdc7f74cf7303b2d2e7e172b0e269928def09de (diff)
downloadtalos-occ-0fc82c9f55482c6a16a021c399095276f6374b07.tar.gz
talos-occ-0fc82c9f55482c6a16a021c399095276f6374b07.zip
Changed poll response to version 0x20
RTC: 143441 Change-Id: Ib964b5f8d8b00029971935ffc8eb957975dc6cce Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/23406 Tested-by: FSP CI Jenkins Reviewed-by: Martha Broyles <mbroyles@us.ibm.com> Reviewed-by: Wael Elessawy <welessa@us.ibm.com>
Diffstat (limited to 'src/occ_405/cmdh/cmdh_fsp_cmds.h')
-rwxr-xr-xsrc/occ_405/cmdh/cmdh_fsp_cmds.h114
1 files changed, 27 insertions, 87 deletions
diff --git a/src/occ_405/cmdh/cmdh_fsp_cmds.h b/src/occ_405/cmdh/cmdh_fsp_cmds.h
index cb3593b..69643e0 100755
--- a/src/occ_405/cmdh/cmdh_fsp_cmds.h
+++ b/src/occ_405/cmdh/cmdh_fsp_cmds.h
@@ -1,11 +1,11 @@
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
-/* $Source: src/occ/cmdh/cmdh_fsp_cmds.h $ */
+/* $Source: src/occ_405/cmdh/cmdh_fsp_cmds.h $ */
/* */
/* OpenPOWER OnChipController Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2011,2015 */
+/* Contributors Listed Below - COPYRIGHT 2011,2016 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -75,11 +75,9 @@ typedef enum
//---------------------------------------------------------
// Length of Poll Response
-#define CMDH_POLL_RESP_LEN_V0 16 // version 0x00 is 16 bytes.
-#define CMDH_POLL_RESP_LEN_V10 40 // version 0x10 has at least 40 bytes.
-// Poll Version 0
-#define CMDH_POLL_BASE_VERSION 0x00
-#define CMDH_POLL_VERSION10 0x10
+#define CMDH_POLL_RESP_LEN_V20 40 // version 0x20 has at least 40 bytes.
+// Poll Version 0x20
+#define CMDH_POLL_VERSION20 0x20
// Struct used to parse Poll Cmd
typedef struct __attribute__ ((packed)) cmdh_poll_query
@@ -91,51 +89,51 @@ typedef struct __attribute__ ((packed)) cmdh_poll_query
}cmdh_poll_query_t;
// Response packet used for Poll Cmd
-typedef struct __attribute__ ((packed)) cmdh_poll_resp_v0
+typedef struct __attribute__ ((packed)) cmdh_poll_resp_v20
{
- // Standard TMGT
+ // Standard TMGT/HTMGT
struct cmdh_fsp_rsp_header;
- // Status
+ // BYTE 1: Status
union
{
struct
{
- uint8_t master_occ : 1;
- uint8_t _reserved_6 : 1;
+ uint8_t master_occ : 1; // 1 => master, 0 => slave
+ uint8_t fir_master : 1; // 1 => fir master.
uint8_t _reserved_5 : 1;
- uint8_t status_changed : 1;
- uint8_t oversubscribed : 1;
+ uint8_t _reserved_4 : 1;
+ uint8_t _reserved_3 : 1;
uint8_t _reserved_2 : 1;
- uint8_t obs_ready : 1;
- uint8_t active_ready : 1;
+ uint8_t obs_ready : 1; // 1 => OCC received all data to support obs state.
+ uint8_t active_ready : 1; // 1 => OCC received all data to support active state.
};
uint8_t word;
} status;
- // Extended Status
+ // BYTE 2: Extended Status
union
{
struct
{
- uint8_t dvfs_due_to_ot : 1;
- uint8_t dvfs_due_to_pwr : 1;
- uint8_t _reserved_5 : 1;
- uint8_t _reserved_4 : 1;
+ uint8_t dvfs_due_to_ot : 1; // 1 => OCC clipped max Pstate due to an over temp.
+ uint8_t dvfs_due_to_pwr : 1; // 1 => OCC clipped max Psate due to reaching pcap limit.
+ uint8_t mthrot_due_to_ot: 1; // 1 => OCC throttled memory due to an over temp.
+ uint8_t n_power : 1; // 1 => Server running without redundant power.
uint8_t _reserved_3 : 1;
- uint8_t sync_request : 1; // In TMGT to TPMF interface spec, but not needed yet
+ uint8_t sync_request : 1; // 1 => OCC needs to restart snapshot buffers
uint8_t _reserved_1 : 1;
uint8_t _reserved_0 : 1;
};
uint8_t word;
} ext_status;
- // OCCs Present
+ // BYTE 3: OCCs Present
uint8_t occ_pres_mask;
- // Config Data Requested
+ // BYTE 4: Config Data Requested
uint8_t config_data;
- // Current OCC State
+ // BYTE 5: Current OCC State
uint8_t state;
- // Current OCC Mode
+ // BYTE 6: Current OCC Mode
uint8_t mode;
- // Current Idle Power Saver Status
+ // BYTE 7: Current Idle Power Saver Status
union
{
struct
@@ -151,64 +149,6 @@ typedef struct __attribute__ ((packed)) cmdh_poll_resp_v0
};
uint8_t word;
} ips_status;
- // Error Log ID
- uint8_t errl_id;
- // Error Log Start Address
- uint32_t errl_address;
- // Error Log Length
- uint16_t errl_length;
- // Reserved
- uint8_t _reserved[2];
- // Checksum
- uint8_t checksum[2];
-}cmdh_poll_resp_v0_t;
-
-// Response packet used for Poll Cmd
-typedef struct __attribute__ ((packed)) cmdh_poll_resp_v10
-{
- // Standard TMGT
- struct cmdh_fsp_rsp_header;
- // BYTE 1: Status
- union
- {
- struct
- {
- uint8_t master_occ : 1; // 1 => master, 0 => slave
- uint8_t fir_master : 1; // 1 => fir master.
- uint8_t _reserved_5 : 1;
- uint8_t _reserved_4 : 1;
- uint8_t attn_enabled : 1; // 1 => Attentions from OCC to Host are enabled.
- uint8_t _reserved_2 : 1;
- uint8_t obs_ready : 1; // 1 => OCC received all data to support obs state.
- uint8_t active_ready : 1; // 1 => OCC received all data to support active state.
- };
- uint8_t word;
- } status;
- // BYTE 2: Extended Status
- union
- {
- struct
- {
- uint8_t dvfs_due_to_ot : 1; // 1 => OCC clipped max Pstate due to an over temp.
- uint8_t dvfs_due_to_pwr : 1; // 1 => OCC clipped max Psate due to reaching pcap limit.
- uint8_t mthrot_due_to_ot: 1; // 1 => OCC throttled memory due to an over temp.
- uint8_t n_power : 1; // 1 => Server running without redundant power.
- uint8_t _reserved_3 : 1;
- uint8_t _reserved_2 : 1;
- uint8_t _reserved_1 : 1;
- uint8_t _reserved_0 : 1;
- };
- uint8_t word;
- } ext_status;
- // BYTE 3: OCCs Present
- uint8_t occ_pres_mask;
- // BYTE 4: Config Data Requested
- uint8_t config_data;
- // BYTE 5: Current OCC State
- uint8_t state;
- // BYTE 6 - 7: Reserved
- uint8_t _reserved_6;
- uint8_t _reserved_7;
// BYTE 8: Error Log ID
uint8_t errl_id;
// BYTES 9 - 12: Error Log Start Address
@@ -228,7 +168,7 @@ typedef struct __attribute__ ((packed)) cmdh_poll_resp_v10
uint8_t sensor_dblock_version;
// No need to include the 2 bytes for checksum since they get added prior to sending
// data back to tmgt.
-}cmdh_poll_resp_v10_fixed_t;
+}cmdh_poll_resp_v20_fixed_t;
typedef struct __attribute__ ((packed)) cmdh_poll_sensor_datablock
{
@@ -592,7 +532,7 @@ void cmdh_dbug_cmd (const cmdh_fsp_cmd_t * i_cmd_ptr,
errlHndl_t cmdh_tmgt_poll (const cmdh_fsp_cmd_t * i_cmd_ptr,
cmdh_fsp_rsp_t * i_rsp_ptr);
-ERRL_RC cmdh_poll_v10 (cmdh_fsp_rsp_t * i_rsp_ptr);
+ERRL_RC cmdh_poll_v20 (cmdh_fsp_rsp_t * i_rsp_ptr);
errlHndl_t cmdh_clear_elog (const cmdh_fsp_cmd_t * i_cmd_ptr,
cmdh_fsp_rsp_t * i_rsp_ptr);
OpenPOWER on IntegriCloud