summaryrefslogtreecommitdiffstats
path: root/import/chips/p9/procedures/ppe_closed/lib
diff options
context:
space:
mode:
authorAmit Kumar <akumar3@us.ibm.com>2016-06-20 01:24:53 -0500
committerJoshua Hunsberger <jahunsbe@us.ibm.com>2017-10-23 16:26:28 -0500
commit27e2ccbb1002b32c4440c22cf2541f56b6160618 (patch)
tree2d1898fbd6f5fa6518cc46d52de20a5e0a555f0b /import/chips/p9/procedures/ppe_closed/lib
parent4f36f6d623f7cb443da04c9b4e1875ce0dfa161b (diff)
downloadtalos-hcode-27e2ccbb1002b32c4440c22cf2541f56b6160618.tar.gz
talos-hcode-27e2ccbb1002b32c4440c22cf2541f56b6160618.zip
istep 15 changes
- changes in CME/SGPE hcode for istep15 changes. - merged 23684 changes - sgpe Makefile changes - sgpe_img_edit changes to accept multiple images - changes to get ekb build to do cme and sgpe img edit - Replaced EPM_P9_TUNING with ISTEP15_HACK at few places - More changes to get working on 9067 - Removed trailing whitespace in multiple files which were giving build warnings - Checked in image build wrapper files with new hw_image name plus commented out lines which are being worked out in a separate gerrit id - Added FUSED mode attribute to all base attribute files - Added a first draft of the istep15 perl script in pm tools dir Change-Id: I4f559e041406e09ea1d9376c585c97b8445e8ff8 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/26027 Dev-Ready: Gregory S. Still <stillgs@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Gregory S. Still <stillgs@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Diffstat (limited to 'import/chips/p9/procedures/ppe_closed/lib')
-rw-r--r--import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.c12
-rw-r--r--import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.h6
2 files changed, 9 insertions, 9 deletions
diff --git a/import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.c b/import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.c
index 6e41d3e8..c0488d63 100644
--- a/import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.c
+++ b/import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.c
@@ -57,9 +57,9 @@ void initCmeBceBarAddr( uint8_t i_barIndex, uint64_t i_barRegData, uint8_t i_cme
uint8_t l_quadId = i_cmePos >> 1;
- l_bceBarAddr = SGPE_SCOM_ADDR( l_bceBarAddr, l_quadId, i_cmePos );
+ l_bceBarAddr = SGPE_SCOM_ADDR( l_bceBarAddr, l_quadId, (i_cmePos % 2) );
- l_bceBarData = (( i_barRegData & 0x0000000FFFFFFFFF ) << BASE_SHIFT_POS);
+ l_bceBarData = ( i_barRegData & 0x00FFFFFFFFF00000); //To extract bitss 8:43 from the i_barRegData
l_bceBarData |= (ENABLE_WR_SCOPE | ENABLE_RD_SCOPE | BLOCK_COPY_SIZE_1MB );
PPE_PUTSCOM(l_bceBarAddr, l_bceBarData); // set the source address for block copy
@@ -93,7 +93,9 @@ void startCmeBlockCopy( uint64_t i_cmeStartBlk, uint32_t i_blockLength, uint32_t
//getting quad id by dividing cme pos with 2
uint8_t l_quadId = i_cmePos >> 1;
- uint32_t l_sgpeBceAddr = SGPE_SCOM_ADDR( SCOM_ADDR_BCEBCSR, l_quadId, i_cmePos );
+ uint32_t l_sgpeBceAddr = SGPE_SCOM_ADDR( SCOM_ADDR_BCEBCSR, l_quadId,
+ (i_cmePos % 2) );
+
PPE_PUTSCOM(l_sgpeBceAddr, l_bceStatusData );
}
}
@@ -116,15 +118,13 @@ BceReturnCode_t checkCmeBlockCopyStatus( uint32_t i_cmePos, InitiatorPlat_t i_pl
// for entities external to CME.
uint32_t l_cmeBcelAddr = CME_LCL_BCECSR;
l_bceStatusData = in64(l_cmeBcelAddr);
- // CME reading block copy engine status
- out64(l_cmeBcelAddr, l_bceStatusData );
}
else if( PLAT_SGPE == i_plat )
{
// getting quad id by dividing cme pos with 2
uint8_t l_quadId = i_cmePos >> 1;
- uint32_t l_sgpeBceAddr = SGPE_SCOM_ADDR( SCOM_ADDR_BCEBCSR, l_quadId, i_cmePos );
+ uint32_t l_sgpeBceAddr = SGPE_SCOM_ADDR( SCOM_ADDR_BCEBCSR, l_quadId, (i_cmePos % 2) );
// SGPE reading block copy engine status of CME
PPE_GETSCOM(l_sgpeBceAddr, l_bceStatusData);
}
diff --git a/import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.h b/import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.h
index 51fb2239..c61caa8c 100644
--- a/import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.h
+++ b/import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.h
@@ -66,8 +66,8 @@ typedef enum
// SCOM addresses associated with a CME BCE.
typedef enum
{
- SCOM_ADDR_BCEBAR0 = 0x10012010,
- SCOM_ADDR_BCEBAR1 = 0x10012011,
+ SCOM_ADDR_BCEBAR0 = 0x10012030,
+ SCOM_ADDR_BCEBAR1 = 0x10012031,
SCOM_ADDR_BCEBCSR = 0x1001200F,
SCOM_ADDR_PBABAR0 = 0x05012B00,
} ScomAddrList_t;
@@ -81,7 +81,7 @@ enum
CME_BASE_ADDRESS = 0x10012000,
};
-#define SGPE_SCOM_ADDR(addr, quad, ex) (addr | CME_BASE_ADDRESS | (quad << 24) | (ex << 10) )
+#define SGPE_SCOM_ADDR(addr, quad, ex) ( addr | CME_BASE_ADDRESS | (quad << 24) | (ex << 10) )
#define PPE_GETSCOM(addr, data) \
rc = getscom(0, addr, &data); \
OpenPOWER on IntegriCloud