Skip to content

Commit

Permalink
Enable I/O PPE PHY Communication for Abus
Browse files Browse the repository at this point in the history
- Before the image is loaded we need to set the
    ppe gcr mode bit high.  Otherwise the ppe
    will not be able to communicate with the phy
    and the abus workaround code will not work.

Change-Id: If0ded21d09196aab169023df9a3e0fa609e6db83
CQ: SW438477
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/62348
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com>
Reviewed-by: Gary A. Peterson <garyp@us.ibm.com>
Reviewed-by: Joseph J. McGill <jmcgill@us.ibm.com>
Reviewed-by: Richard J. Knight <rjknight@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/62786
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
  • Loading branch information
steffenchris authored and dcrowell77 committed Jul 31, 2018
1 parent a6df8be commit 5fff2d7
Showing 1 changed file with 10 additions and 1 deletion.
11 changes: 10 additions & 1 deletion src/import/chips/p9/procedures/hwp/io/p9_io_obus_image_build.C
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,10 @@
#include <p9_io_obus_image_build.H>
#include "p9_xip_image.h"

//---------------------------------------------------------------------------
#include "p9_obus_scom_addresses.H"
#include "p9_obus_scom_addresses_fld.H"

//--------------------------------------------------------------------------
fapi2::ReturnCode extractPpeImgObus(void* const iImagePtr, const int iSectionId, uint8_t*& oObusImgPtr, uint32_t& oSize)
{
FAPI_IMP("Entering getObusImageFromHwImage.");
Expand Down Expand Up @@ -131,6 +134,12 @@ fapi2::ReturnCode p9_io_obus_image_build(CONST_OBUS& iTgt, void* const iHwImageP
{
FAPI_IMP("ABUS IMAGE LOAD.");
loadImage = true;

// Enable the PPE to communicate with the PHY
fapi2::buffer<uint64_t> data64;
FAPI_TRY(fapi2::getScom(iTgt, OBUS_SCOM_MODE_PB, data64));
data64.setBit<OBUS_SCOM_MODE_PB_PPE_GCR>();
FAPI_TRY(fapi2::putScom(iTgt, OBUS_SCOM_MODE_PB, data64));
}
}
else // fapi2::ENUM_ATTR_OPTICS_CONFIG_MODE_CAPI
Expand Down

0 comments on commit 5fff2d7

Please sign in to comment.