diff options
| author | Marty Gloff <mgloff@us.ibm.com> | 2018-02-01 09:49:42 -0600 |
|---|---|---|
| committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2018-03-05 12:09:33 -0500 |
| commit | 40c3350ff928b8df7f7db1baefe5800b25438f0c (patch) | |
| tree | f30091fcf8bd523ab182fee8025784609930a08b /src/include/usr/targeting/common | |
| parent | 48235812776de62e94ed09034eba83487d1b2bf1 (diff) | |
| download | talos-hostboot-40c3350ff928b8df7f7db1baefe5800b25438f0c.tar.gz talos-hostboot-40c3350ff928b8df7f7db1baefe5800b25438f0c.zip | |
Support multiple nodes in HBRT - Support Multiple Nodes in TargetService
Change to call the TargetService class initialization function with the correct
maximum number of nodes rather than always defaulting to 1. Provide support to
get first target iterator for a specific node. Update AttrRP::translateAddr
functions to handle nodes.
Change-Id: Ia3496c2f4daf0b78999bde35565f4541fedb0b4d
RTC: 186869
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/53190
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
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: Prachi Gupta <pragupta@us.ibm.com>
Reviewed-by: Richard J. Knight <rjknight@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr/targeting/common')
| -rw-r--r-- | src/include/usr/targeting/common/targetservice.H | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/src/include/usr/targeting/common/targetservice.H b/src/include/usr/targeting/common/targetservice.H index b63c25fb5..056dfb9a5 100644 --- a/src/include/usr/targeting/common/targetservice.H +++ b/src/include/usr/targeting/common/targetservice.H @@ -256,6 +256,18 @@ class TargetService */ iterator begin(); +#ifdef __HOSTBOOT_RUNTIME + /** + * @brief Return iterator which points to first target service target + * (or end() if none) for a specific node + * + * @param[in] i_nodeId, node Id + * + * @return Iterator pointing to first target service target for node + */ + iterator begin(NODE_ID i_nodeId); +#endif + /** * @brief Return rawiterator which points to first target service * target (or end() if none) @@ -801,7 +813,7 @@ class TargetService * @brief Returns the first Target from the first initialized node * from the pool of targets. * - * param[out] o_firstTargetPtr First Target handle + * @param[out] o_firstTargetPtr First Target handle * * @pre Target service must be initialized * @@ -812,6 +824,26 @@ class TargetService */ void _getFirstTargetForIterators (Target*& o_firstTargetPtr) const; +#ifdef __HOSTBOOT_RUNTIME + /** + * @brief Returns the first Target from the node's pool of targets if + * node is initialized. + * + * @param[out] o_firstTargetPtr First Target handle or nullptr + * + * @param[in] i_nodeId, node Id + * + * @pre Target service must be initialized + * + * @post Target Service returns the first Target from the node if node + * is initialized. + * + * @returns void + */ + void _getFirstTargetForIterators (Target*& o_firstTargetPtr, + NODE_ID i_nodeId) const; +#endif + /** * @brief Configures the pool of targets * |

