-
Notifications
You must be signed in to change notification settings - Fork 97
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Power Down Lanes for Erepair - Update for Dccal Change-Id: I57e3af327b8250ac4bd52691e8690d409b6d6c5c Original-Change-Id: Ie3a526d0165373a9f946c8db2b07c7006dcbec50 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58836 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: John G. Rell III <jgrell@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/64829 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Thi N. Tran <thi@us.ibm.com>
- Loading branch information
1 parent
e07f0c9
commit 207de5c
Showing
3 changed files
with
187 additions
and
0 deletions.
There are no files selected for viewing
94 changes: 94 additions & 0 deletions
94
src/import/chips/p9/procedures/hwp/io/p9_io_obus_pdwn_lanes.C
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
/* IBM_PROLOG_BEGIN_TAG */ | ||
/* This is an automatically generated prolog. */ | ||
/* */ | ||
/* $Source: src/import/chips/p9/procedures/hwp/io/p9_io_obus_pdwn_lanes.C $ */ | ||
/* */ | ||
/* OpenPOWER HostBoot Project */ | ||
/* */ | ||
/* Contributors Listed Below - COPYRIGHT 2015,2018 */ | ||
/* [+] International Business Machines Corp. */ | ||
/* */ | ||
/* */ | ||
/* Licensed under the Apache License, Version 2.0 (the "License"); */ | ||
/* you may not use this file except in compliance with the License. */ | ||
/* You may obtain a copy of the License at */ | ||
/* */ | ||
/* http://www.apache.org/licenses/LICENSE-2.0 */ | ||
/* */ | ||
/* Unless required by applicable law or agreed to in writing, software */ | ||
/* distributed under the License is distributed on an "AS IS" BASIS, */ | ||
/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */ | ||
/* implied. See the License for the specific language governing */ | ||
/* permissions and limitations under the License. */ | ||
/* */ | ||
/* IBM_PROLOG_END_TAG */ | ||
/// | ||
/// @file p9_io_obus_pdwn_lanes.C | ||
/// @brief Train the Link. | ||
///----------------------------------------------------------------------------- | ||
/// *HWP HWP Owner : Chris Steffen <cwsteffen@us.ibm.com> | ||
/// *HWP HWP Backup Owner : Gary Peterson <garyp@us.ibm.com> | ||
/// *HWP FW Owner : Jamie Knight <rjknight@us.ibm.com> | ||
/// *HWP Team : IO | ||
/// *HWP Level : 3 | ||
/// *HWP Consumed by : FSP:HB | ||
///----------------------------------------------------------------------------- | ||
/// | ||
/// @verbatim | ||
/// High-level procedure flow: | ||
/// | ||
/// Run Dccal | ||
/// | ||
/// Procedure Prereq: | ||
/// - System clocks are running. | ||
/// | ||
/// @endverbatim | ||
///---------------------------------------------------------------------------- | ||
|
||
//----------------------------------------------------------------------------- | ||
// Includes | ||
//----------------------------------------------------------------------------- | ||
#include <p9_io_obus_pdwn_lanes.H> | ||
#include <p9_io_scom.H> | ||
#include <p9_io_regs.H> | ||
|
||
//----------------------------------------------------------------------------- | ||
// Function Declarations | ||
//----------------------------------------------------------------------------- | ||
|
||
//----------------------------------------------------------------------------- | ||
// Function Definitions | ||
//----------------------------------------------------------------------------- | ||
|
||
|
||
/** | ||
* @brief A I/O Obus Procedure to power down lanes | ||
* on every instance of the OBUS. | ||
* @param[in] i_tgt FAPI2 Target | ||
* @param[in] i_lane_vector Lanve Vector | ||
* @retval ReturnCode | ||
*/ | ||
fapi2::ReturnCode p9_io_pdwn_lanes(const OBUS_TGT i_tgt, const uint32_t i_lane_vector) | ||
{ | ||
FAPI_IMP("p9_io_pdwn_lanes: I/O Obus Entering"); | ||
const uint8_t GRP0 = 0; | ||
const uint8_t LANES = 24; | ||
char l_tgtStr[fapi2::MAX_ECMD_STRING_LEN]; | ||
fapi2::toString(i_tgt, l_tgtStr, fapi2::MAX_ECMD_STRING_LEN); | ||
FAPI_DBG("I/O Obus Pdwn Lanes %s, Lane Vector(0x%X)", l_tgtStr, i_lane_vector); | ||
|
||
// Power down Per-Lane Registers | ||
for(uint8_t lane = 0; lane < LANES; ++lane) | ||
{ | ||
if(((0x1 << lane) & i_lane_vector) != 0) | ||
{ | ||
FAPI_TRY(io::rmw(OPT_RX_LANE_ANA_PDWN, i_tgt, GRP0, lane, 0x01)); | ||
FAPI_TRY(io::rmw(OPT_RX_LANE_DIG_PDWN, i_tgt, GRP0, lane, 0x01)); | ||
FAPI_TRY(io::rmw(OPT_TX_LANE_PDWN , i_tgt, GRP0, lane, 0x01)); | ||
} | ||
} | ||
|
||
fapi_try_exit: | ||
FAPI_IMP("p9_io_pdwn_lanes: I/O Obus Exiting"); | ||
return fapi2::current_err; | ||
} |
66 changes: 66 additions & 0 deletions
66
src/import/chips/p9/procedures/hwp/io/p9_io_obus_pdwn_lanes.H
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
/* IBM_PROLOG_BEGIN_TAG */ | ||
/* This is an automatically generated prolog. */ | ||
/* */ | ||
/* $Source: src/import/chips/p9/procedures/hwp/io/p9_io_obus_pdwn_lanes.H $ */ | ||
/* */ | ||
/* OpenPOWER HostBoot Project */ | ||
/* */ | ||
/* Contributors Listed Below - COPYRIGHT 2015,2018 */ | ||
/* [+] International Business Machines Corp. */ | ||
/* */ | ||
/* */ | ||
/* Licensed under the Apache License, Version 2.0 (the "License"); */ | ||
/* you may not use this file except in compliance with the License. */ | ||
/* You may obtain a copy of the License at */ | ||
/* */ | ||
/* http://www.apache.org/licenses/LICENSE-2.0 */ | ||
/* */ | ||
/* Unless required by applicable law or agreed to in writing, software */ | ||
/* distributed under the License is distributed on an "AS IS" BASIS, */ | ||
/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */ | ||
/* implied. See the License for the specific language governing */ | ||
/* permissions and limitations under the License. */ | ||
/* */ | ||
/* IBM_PROLOG_END_TAG */ | ||
/// | ||
/// @file p9_io_obus_pdwn_lanes.H | ||
/// @brief Run Dccal on the link. | ||
///----------------------------------------------------------------------------- | ||
/// *HWP HWP Owner : Chris Steffen <cwsteffen@us.ibm.com> | ||
/// *HWP HWP Backup Owner : Gary Peterson <garyp@us.ibm.com> | ||
/// *HWP FW Owner : Jamie Knight <rjknight@us.ibm.com> | ||
/// *HWP Team : IO | ||
/// *HWP Level : 3 | ||
/// *HWP Consumed by : FSP:HB | ||
///----------------------------------------------------------------------------- | ||
|
||
#ifndef _P9_IO_OBUS_PDWN_LANES_H | ||
#define _P9_IO_OBUS_PDWN_LANES_H | ||
|
||
//----------------------------------------------------------------------------- | ||
// fapi2 Includes | ||
//----------------------------------------------------------------------------- | ||
#include <fapi2.H> | ||
|
||
typedef fapi2::Target<fapi2::TARGET_TYPE_OBUS> OBUS_TGT; | ||
|
||
|
||
typedef fapi2::ReturnCode (*p9_io_obus_pdwn_lanes_FP_t)( const OBUS_TGT, const uint32_t ); | ||
|
||
extern "C" | ||
{ | ||
|
||
/** | ||
* @brief A I/O Obus Procedure that Powers Down Lanes | ||
* on every group of the Obus. | ||
* @param[in] i_tgt FAPI2 Target | ||
* @param[in] i_lane_vector Lane Vector; all 24 lanes(0x00FFFFFF) | ||
* @retval ReturnCode | ||
*/ | ||
fapi2::ReturnCode p9_io_obus_pdwn_lanes( | ||
const OBUS_TGT i_tgt , | ||
const uint32_t i_lane_vector ); | ||
|
||
} // extern "C" | ||
|
||
#endif // _P9_IO_OBUS_PDWN_LANES_H |
27 changes: 27 additions & 0 deletions
27
src/import/chips/p9/procedures/hwp/io/p9_io_obus_pdwn_lanes.mk
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# IBM_PROLOG_BEGIN_TAG | ||
# This is an automatically generated prolog. | ||
# | ||
# $Source: src/import/chips/p9/procedures/hwp/io/p9_io_obus_pdwn_lanes.mk $ | ||
# | ||
# OpenPOWER HostBoot Project | ||
# | ||
# Contributors Listed Below - COPYRIGHT 2015,2018 | ||
# [+] International Business Machines Corp. | ||
# | ||
# | ||
# Licensed under the Apache License, Version 2.0 (the "License"); | ||
# you may not use this file except in compliance with the License. | ||
# You may obtain a copy of the License at | ||
# | ||
# http://www.apache.org/licenses/LICENSE-2.0 | ||
# | ||
# Unless required by applicable law or agreed to in writing, software | ||
# distributed under the License is distributed on an "AS IS" BASIS, | ||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or | ||
# implied. See the License for the specific language governing | ||
# permissions and limitations under the License. | ||
# | ||
# IBM_PROLOG_END_TAG | ||
PROCEDURE=p9_io_obus_pdwn_lanes | ||
#lib$(PROCEDURE)_DEPLIBS+=p9_io_common | ||
$(call BUILD_PROCEDURE) |