diff options
| author | Amit Kumar <akumar3@us.ibm.com> | 2016-06-20 01:24:53 -0500 |
|---|---|---|
| committer | Joshua Hunsberger <jahunsbe@us.ibm.com> | 2017-10-23 16:26:28 -0500 |
| commit | 27e2ccbb1002b32c4440c22cf2541f56b6160618 (patch) | |
| tree | 2d1898fbd6f5fa6518cc46d52de20a5e0a555f0b /import/chips/p9/procedures/ppe_closed/lib | |
| parent | 4f36f6d623f7cb443da04c9b4e1875ce0dfa161b (diff) | |
| download | talos-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.c | 12 | ||||
| -rw-r--r-- | import/chips/p9/procedures/ppe_closed/lib/p9_hcd_block_copy.h | 6 |
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); \ |

