From f38f03fd5c0b267916d1f48a87afff67ad9ab3ed Mon Sep 17 00:00:00 2001 From: Dan Crowell Date: Mon, 8 Aug 2016 11:06:31 -0500 Subject: Apply BOOT_FLAGS onto slave sbe Need to get the BOOT_FLAGS (scratch3) bits set into the slave sbe Also consolidated other code to use a single set of interfaces and structures. Change-Id: I670acb5cee1ab4fcebaa7be72aa3b986598873d3 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/28003 Tested-by: Jenkins Server Tested-by: FSP CI Jenkins Reviewed-by: Sachin Gupta Reviewed-by: Christian R. Geddes Reviewed-by: Dean Sanner Reviewed-by: Daniel M. Crowell --- src/include/usr/initservice/mboxRegs.H | 33 +++++++++++++++++++++++++-------- src/include/usr/util/utilmbox_scratch.H | 12 ++++-------- 2 files changed, 29 insertions(+), 16 deletions(-) (limited to 'src/include') diff --git a/src/include/usr/initservice/mboxRegs.H b/src/include/usr/initservice/mboxRegs.H index 69b942757..737ab7bb4 100644 --- a/src/include/usr/initservice/mboxRegs.H +++ b/src/include/usr/initservice/mboxRegs.H @@ -29,14 +29,31 @@ namespace INITSERVICE { namespace SPLESS { - const uint32_t MBOX_SCRATCH_REG1 = 0x00050038; - const uint32_t MBOX_SCRATCH_REG2 = 0x00050039; - const uint32_t MBOX_SCRATCH_REG3 = 0x0005003a; - const uint32_t MBOX_SCRATCH_REG4 = 0x0005003b; - const uint32_t MBOX_SCRATCH_REG5 = 0x0005003c; - const uint32_t MBOX_SCRATCH_REG6 = 0x0005003d; - const uint32_t MBOX_SCRATCH_REG7 = 0x0005003e; - const uint32_t MBOX_SCRATCH_REG8 = 0x0005003f; + const uint32_t MBOX_SCRATCH_REG1 = 0x00050038; //CFAM 2838 + const uint32_t MBOX_SCRATCH_REG2 = 0x00050039; //CFAM 2839 + const uint32_t MBOX_SCRATCH_REG3 = 0x0005003a; //CFAM 283A + const uint32_t MBOX_SCRATCH_REG4 = 0x0005003b; //CFAM 283B + const uint32_t MBOX_SCRATCH_REG5 = 0x0005003c; //CFAM 283C + const uint32_t MBOX_SCRATCH_REG6 = 0x0005003d; //CFAM 283D + const uint32_t MBOX_SCRATCH_REG7 = 0x0005003e; //CFAM 283E + const uint32_t MBOX_SCRATCH_REG8 = 0x0005003f; //CFAM 283F + + + // Mailbox Scratch Register 3 + union MboxScratch3_t + { + uint32_t data32; + struct + { + uint32_t istepMode:1; //0 + uint32_t goToRuntime:1; //1 + uint32_t isMpipl:1; //2 + uint32_t fspAttached:1; //3 + uint32_t sbeFFDC:1; //4 + uint32_t sbeInternalFFDC:1; //5 + uint32_t reserved:26; //6:31 + } PACKED; + }; }; }; #endif diff --git a/src/include/usr/util/utilmbox_scratch.H b/src/include/usr/util/utilmbox_scratch.H index b995da557..dd9584c18 100644 --- a/src/include/usr/util/utilmbox_scratch.H +++ b/src/include/usr/util/utilmbox_scratch.H @@ -61,10 +61,6 @@ namespace Util MSG_TYPE_TRACE = 0x00, MSG_TYPE_ATTRDUMP = 0x01, - - ISTEP_CONFIG_BIT = 0x8000000000000000, - MPIPL_CONFIG_BIT = 0x2000000000000000, - }; /** @@ -85,11 +81,11 @@ namespace Util * These scom addresses are always accessible and any errors are commited * internally * @param[in] i_addr Scom address of mailbox reg to write - * @param[in] i_data Data to write to mailbox (only 0:31 are valid) + * @param[in] i_data Data to write to mailbox * * @return none */ - void writeScratchReg(uint64_t i_addr, uint64_t i_data); + void writeScratchReg(uint64_t i_addr, uint32_t i_data); /** * @brief This function reads data to mailbox scratch reg @@ -97,9 +93,9 @@ namespace Util * internally * @param[in] i_addr Scom address of mailbox reg to read * - * @return Data in mailbox scratch reg (only 0:31 are valid) + * @return Data in mailbox scratch reg */ - uint64_t readScratchReg(uint64_t i_addr); + uint32_t readScratchReg(uint64_t i_addr); }; #endif //UTILMEM_H -- cgit v1.2.1