diff options
| author | Christian Geddes <crgeddes@us.ibm.com> | 2019-07-15 11:02:27 -0500 |
|---|---|---|
| committer | Daniel M Crowell <dcrowell@us.ibm.com> | 2020-01-22 09:45:00 -0600 |
| commit | f32aff51f83dcbcaa3857100c6e4e36ee7a8b84a (patch) | |
| tree | 8ae056af16db181e933eaedc2fd74adedd049a40 /src/include/usr/runtime | |
| parent | 5820710976565a6b3d241bce91d97d3fdacd0396 (diff) | |
| download | talos-hostboot-f32aff51f83dcbcaa3857100c6e4e36ee7a8b84a.tar.gz talos-hostboot-f32aff51f83dcbcaa3857100c6e4e36ee7a8b84a.zip | |
Make RT_TARG id generation code common between IPL time and runtime
For axone we are writing the OMI mmio bars into hdat so the hypervisor
know how to talk to the devices. IPL code needs to be able to lookup
the hbrt-style ids so we can use them to make hdat entries that the
hypervisor will be able to associate targets with. This commit also
move rt_targeting.H to the correct include directory and updates
everywhere that it is included.
Change-Id: I31deaa1a9c5a7523622a8b3b12ad459e2b2feed3
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/80419
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr/runtime')
| -rw-r--r-- | src/include/usr/runtime/customize_attrs_for_payload.H | 6 | ||||
| -rw-r--r-- | src/include/usr/runtime/rt_targeting.H | 98 |
2 files changed, 3 insertions, 101 deletions
diff --git a/src/include/usr/runtime/customize_attrs_for_payload.H b/src/include/usr/runtime/customize_attrs_for_payload.H index a5158f996..6d6928bda 100644 --- a/src/include/usr/runtime/customize_attrs_for_payload.H +++ b/src/include/usr/runtime/customize_attrs_for_payload.H @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2016 */ +/* Contributors Listed Below - COPYRIGHT 2016,2020 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -33,7 +33,7 @@ */ #include <errl/errlentry.H> -#include <runtime/rt_targeting.H> +#include <targeting/runtime/rt_targeting.H> #include <targeting/common/attributes.H> namespace RUNTIME @@ -42,7 +42,7 @@ namespace RUNTIME static const TARGETING::ATTR_HBRT_HYP_ID_type HBRT_HYP_ID_UNKNOWN = 0xFFFFFFFFFFFFFFFFULL; -static const RT_TARG::rtChipId_t RT_TYPE_UNKNOWN +static const TARGETING::rtChipId_t RT_TYPE_UNKNOWN = 0xFFFFFFFFFFFFFFFFULL; /** diff --git a/src/include/usr/runtime/rt_targeting.H b/src/include/usr/runtime/rt_targeting.H deleted file mode 100644 index 9070dbc88..000000000 --- a/src/include/usr/runtime/rt_targeting.H +++ /dev/null @@ -1,98 +0,0 @@ -/* IBM_PROLOG_BEGIN_TAG */ -/* This is an automatically generated prolog. */ -/* */ -/* $Source: src/include/usr/runtime/rt_targeting.H $ */ -/* */ -/* OpenPOWER HostBoot Project */ -/* */ -/* Contributors Listed Below - COPYRIGHT 2014,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 */ -#ifndef __RT_TARGETING_H -#define __RT_TARGETING_H - -#include <errl/errlentry.H> - -namespace TARGETING -{ - class Target; -} - -namespace RT_TARG -{ - typedef uint64_t rtChipId_t; - - enum - { - MEMBUF_ID_SHIFT = 4, //!< CHIPID for MEMBUF is '<procid>MMMM'b - MEMBUF_ID_MASK = 0x0000000F, //!< valid position bits for MEMBUF - }; - - - /** - * @brief Convert a TARGETING::Target to an unit ID that can be used - * in calls to the runtime host - * @param[in] The HB TARGETING::Target - * @param[out] Sapphire target id - * @return an error handle on error - */ - errlHndl_t getRtTarget(const TARGETING::Target* i_target, - rtChipId_t &o_targetId); - - /** - * @brief Convert a runtime chip_id (target) into a TARGETING::Target - * @param[in] The rt chipId - * @param[out] The TARGETING::Target pointer - * @return error log handle on error else NULL - */ - errlHndl_t getHbTarget(rtChipId_t i_rt_chip_id, - TARGETING::Target *& o_target); - - /** - * @brief Save/Restore attribute values from current Reserved Memory data - * into new LID Structure data - * @param[in] Pointer to current Reserved Memory targeting binary data - * @param[in/out] Pointer to new LID Structure targeting binary data - * @param[in] Instance, ie, Node ID - * @return nullptr on success, else error log - */ - errlHndl_t saveRestoreAttrs(void *i_rsvdMemPtr, - void *io_lidStructPtr, - uint8_t i_instance); - - /** - * @brief Validate LID Structure against Reserved Memory. Check that the - * TargetingHeader eyecatchers are valid, that the TargetingHeader number of - * sections match, and that the types and sizes of each TargetingSection - * match. - * @param[in] Pointer to new LID Structure targeting binary data - * @param[in] Pointer to current Reserved Memory targeting binary data - * @param[out] Total size of all sections in the new lid - * @return nullptr on success, else error log - */ - errlHndl_t validateData(void *i_lidStructPtr, - void *i_rsvdMemPtr, - size_t& o_lidTotalSize); - - /** - * @brief Apply ATTR_TMP overrides to be available for run time - */ - void applyTempOverrides( ); - -}; - -#endif |

