diff options
author | Wael El-Essawy <welessa@us.ibm.com> | 2016-01-19 13:22:06 -0600 |
---|---|---|
committer | Wael El-Essawy <welessa@us.ibm.com> | 2016-04-05 12:42:49 -0400 |
commit | 1c880c957a74d066ae23bab4a52b63bcf5824293 (patch) | |
tree | cf142f293b436e786011cd9f42e6a1f80b8f3ffd /src/occ_405/rtls | |
parent | 24f4095cc418f3a4b8a434e6d99e6a6d6c59a2be (diff) | |
download | talos-occ-1c880c957a74d066ae23bab4a52b63bcf5824293.tar.gz talos-occ-1c880c957a74d066ae23bab4a52b63bcf5824293.zip |
Enable Master-slave OCC communication
Change-Id: I445072e20d599e30f80cc8059b3f3b2a956c453e
RTC: 133154
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/22005
Tested-by: FSP CI Jenkins
Reviewed-by: Martha Broyles <mbroyles@us.ibm.com>
Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com>
Reviewed-by: William A. Bryan <wilbryan@us.ibm.com>
Diffstat (limited to 'src/occ_405/rtls')
-rwxr-xr-x | src/occ_405/rtls/rtls.h | 8 | ||||
-rwxr-xr-x | src/occ_405/rtls/rtls_tables.c | 240 |
2 files changed, 120 insertions, 128 deletions
diff --git a/src/occ_405/rtls/rtls.h b/src/occ_405/rtls/rtls.h index 91dd5ac..7ec3c2e 100755 --- a/src/occ_405/rtls/rtls.h +++ b/src/occ_405/rtls/rtls.h @@ -45,16 +45,16 @@ typedef enum { TASK_ID_APSS_CONT, TASK_ID_CORE_DATA_HIGH, TASK_ID_APSS_DONE, -// TASK_ID_DCOM_RX_INBX, -// TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_POKE_WDT, // Reset ppc405 watchdog and OCB timer TASK_ID_DCOM_WAIT_4_MSTR, TASK_ID_DCOM_RX_OUTBX, TASK_ID_DCOM_TX_OUTBX, -// TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, // Miscellaneous checks to be done by 405 + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_AMEC_SLAVE, // AMEC SMH tasks -// TASK_ID_AMEC_MASTER, // AMEC SMH tasks + TASK_ID_AMEC_MASTER, // AMEC SMH tasks // TASK_ID_CORE_DATA_CONTROL, // TASK_ID_GPU_SM, // GPU State Machine TASK_ID_DIMM_SM, // DIMM State Machine diff --git a/src/occ_405/rtls/rtls_tables.c b/src/occ_405/rtls/rtls_tables.c index 20b60dd..5f08b17 100755 --- a/src/occ_405/rtls/rtls_tables.c +++ b/src/occ_405/rtls/rtls_tables.c @@ -100,24 +100,16 @@ task_t G_task_table[TASK_END] = { { FLAGS_APSS_CONT_MEAS, task_apss_continue_pwr_meas, NULL }, // TASK_ID_APSS_CONT { FLAGS_HIGH_CORES_DATA, task_core_data, (void *) &G_high_cores}, { FLAGS_APSS_DONE_MEAS, task_apss_complete_pwr_meas, NULL }, // TASK_ID_APSS_DONE -// TEMP -- NOT SUPPORTED YET IN PHASE1 -// { FLAGS_DCOM_RX_SLV_INBX, task_dcom_rx_slv_inbox, NULL }, // TASK_ID_DCOM_RX_INBX -// TEMP -- NOT SUPPORTED YET IN PHASE1 -// { FLAGS_DCOM_TX_SLV_INBX, task_dcom_tx_slv_inbox, NULL }, // TASK_ID_DCOM_TX_INBX + { FLAGS_DCOM_RX_SLV_INBX, task_dcom_rx_slv_inbox, NULL }, // TASK_ID_DCOM_RX_INBX + { FLAGS_DCOM_TX_SLV_INBX, task_dcom_tx_slv_inbox, NULL }, // TASK_ID_DCOM_TX_INBX { FLAGS_POKE_WDT, task_poke_watchdogs, NULL }, // TASK_ID_POKE_WDT -// TEMP -- NOT SUPPORTED YET IN PHASE1 { FLAGS_DCOM_WAIT_4_MSTR, task_dcom_wait_for_master, NULL }, // TASK_ID_DCOM_WAIT_4_MSTR -// TEMP -- NOT SUPPORTED YET IN PHASE1 { FLAGS_DCOM_RX_SLV_OUTBOX, task_dcom_rx_slv_outboxes, NULL }, // TASK_ID_DCOM_RX_OUTBX -// TEMP -- NOT SUPPORTED YET IN PHASE1 { FLAGS_DCOM_TX_SLV_OUTBOX, task_dcom_tx_slv_outbox, NULL }, // TASK_ID_DCOM_TX_OUTBX -// TEMP -- NOT SUPPORTED YET IN PHASE1 -// { FLAGS_DCOM_PARSE_OCC_FW_MSG, task_dcom_parse_occfwmsg, NULL }, // TASK_ID_DCOM_PARSE_FW_MSG { FLAGS_MISC_405_CHECKS, task_misc_405_checks, NULL }, // TASK_ID_MISC_405_CHECKS -// TEMP -- NOT SUPPORTED YET IN PHASE1 + { FLAGS_DCOM_PARSE_OCC_FW_MSG, task_dcom_parse_occfwmsg, NULL }, // TASK_ID_DCOM_PARSE_FW_MSG { FLAGS_AMEC_SLAVE, task_amec_slave, NULL }, // TASK_ID_AMEC_SLAVE -// TEMP -- NOT SUPPORTED YET IN PHASE1 -// { FLAGS_AMEC_MASTER, task_amec_master, NULL }, // TASK_ID_AMEC_MASTER + { FLAGS_AMEC_MASTER, task_amec_master, NULL }, // TASK_ID_AMEC_MASTER // TEMP -- NOT SUPPORTED YET IN PHASE1 // { FLAGS_CORE_DATA_CONTROL, task_core_data_control, NULL }, // TASK_ID_CORE_DATA_CONTROL // TEMP -- NOT YET IMPLEMENTED @@ -135,15 +127,15 @@ const uint8_t G_tick0_seq[] = { TASK_ID_CORE_DATA_HIGH, TASK_ID_APSS_DONE, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, TASK_ID_POKE_WDT, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -155,14 +147,14 @@ const uint8_t G_tick1_seq[] = { TASK_ID_APSS_DONE, //TASK_ID_MEM_DEADMAN, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -174,14 +166,14 @@ const uint8_t G_tick2_seq[] = { TASK_ID_CORE_DATA_HIGH, TASK_ID_APSS_DONE, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -193,14 +185,14 @@ const uint8_t G_tick3_seq[] = { TASK_ID_APSS_DONE, //TASK_ID_MEM_DEADMAN, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -212,15 +204,15 @@ const uint8_t G_tick4_seq[] = { TASK_ID_CORE_DATA_HIGH, TASK_ID_APSS_DONE, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, TASK_ID_POKE_WDT, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -232,14 +224,14 @@ const uint8_t G_tick5_seq[] = { TASK_ID_APSS_DONE, //TASK_ID_MEM_DEADMAN, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -251,14 +243,14 @@ const uint8_t G_tick6_seq[] = { TASK_ID_CORE_DATA_HIGH, TASK_ID_APSS_DONE, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -270,14 +262,14 @@ const uint8_t G_tick7_seq[] = { TASK_ID_APSS_DONE, //TASK_ID_MEM_DEADMAN, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -289,15 +281,15 @@ const uint8_t G_tick8_seq[] = { TASK_ID_CORE_DATA_HIGH, TASK_ID_APSS_DONE, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, TASK_ID_POKE_WDT, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -309,14 +301,14 @@ const uint8_t G_tick9_seq[] = { TASK_ID_APSS_DONE, //TASK_ID_MEM_DEADMAN, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -328,14 +320,14 @@ const uint8_t G_tick10_seq[] = { TASK_ID_CORE_DATA_HIGH, TASK_ID_APSS_DONE, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -347,14 +339,14 @@ const uint8_t G_tick11_seq[] = { TASK_ID_APSS_DONE, //TASK_ID_MEM_DEADMAN, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -366,15 +358,15 @@ const uint8_t G_tick12_seq[] = { TASK_ID_CORE_DATA_HIGH, TASK_ID_APSS_DONE, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, TASK_ID_POKE_WDT, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -386,14 +378,14 @@ const uint8_t G_tick13_seq[] = { TASK_ID_APSS_DONE, //TASK_ID_MEM_DEADMAN, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -405,14 +397,14 @@ const uint8_t G_tick14_seq[] = { TASK_ID_CORE_DATA_HIGH, TASK_ID_APSS_DONE, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; @@ -424,14 +416,14 @@ const uint8_t G_tick15_seq[] = { TASK_ID_APSS_DONE, //TASK_ID_MEM_DEADMAN, //TASK_ID_CORE_DATA_CONTROL, - //TASK_ID_DCOM_WAIT_4_MSTR, - //TASK_ID_DCOM_RX_INBX, - //TASK_ID_DCOM_RX_OUTBX, - //TASK_ID_DCOM_TX_OUTBX, - //TASK_ID_DCOM_TX_INBX, + TASK_ID_DCOM_WAIT_4_MSTR, + TASK_ID_DCOM_RX_INBX, + TASK_ID_DCOM_RX_OUTBX, + TASK_ID_DCOM_TX_OUTBX, + TASK_ID_DCOM_TX_INBX, TASK_ID_AMEC_SLAVE, - //TASK_ID_AMEC_MASTER, - //TASK_ID_DCOM_PARSE_FW_MSG, + TASK_ID_AMEC_MASTER, + TASK_ID_DCOM_PARSE_FW_MSG, TASK_ID_MISC_405_CHECKS, TASK_END }; |