From b7f5e1563415cf786ca80c83351d792a70c18899 Mon Sep 17 00:00:00 2001 From: Bill Schwartz Date: Fri, 15 May 2015 07:09:27 -0500 Subject: New HBRT interfaces for attribute overrides Add interface to apply attribute overrides Change-Id: I2eb9f32e0236d7296ff3f3f133af4ef349d70376 RTC: 127328 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/17818 Tested-by: Jenkins Server Tested-by: Jenkins OP Build CI Tested-by: Jenkins OP HW Reviewed-by: Daniel M. Crowell Reviewed-by: MATTHEW A. PLOETZ Reviewed-by: A. Patrick Williams III --- src/include/usr/hwpf/plat/fapiPlatAttrOverrideSync.H | 9 ++++++++- src/include/usr/runtime/rt_targeting.H | 4 +++- src/include/usr/targeting/attrPlatOverride.H | 7 +++++-- 3 files changed, 16 insertions(+), 4 deletions(-) (limited to 'src/include/usr') diff --git a/src/include/usr/hwpf/plat/fapiPlatAttrOverrideSync.H b/src/include/usr/hwpf/plat/fapiPlatAttrOverrideSync.H index fbc036eda..88c7d47ef 100755 --- a/src/include/usr/hwpf/plat/fapiPlatAttrOverrideSync.H +++ b/src/include/usr/hwpf/plat/fapiPlatAttrOverrideSync.H @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2012,2014 */ +/* Contributors Listed Below - COPYRIGHT 2012,2015 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -50,6 +50,11 @@ namespace TARGETING errlHndl_t getAttrOverrides(PNOR::SectionInfo_t &i_sectionInfo, AttributeTank* io_tanks[AttributeTank::TANK_LAYER_LAST]); } +namespace RT_TARG +{ + int apply_attr_override(uint8_t* i_data, + size_t i_size ); +} namespace fapi { @@ -92,6 +97,8 @@ public: PNOR::SectionInfo_t &i_sectionInfo, TARGETING::AttributeTank* io_tanks[TARGETING::AttributeTank::TANK_LAYER_LAST]); + friend int RT_TARG::apply_attr_override(uint8_t* i_data, + size_t i_size ); /** * @brief Maximum size of a direct attribute override diff --git a/src/include/usr/runtime/rt_targeting.H b/src/include/usr/runtime/rt_targeting.H index a95d599dd..6b7ee4075 100644 --- a/src/include/usr/runtime/rt_targeting.H +++ b/src/include/usr/runtime/rt_targeting.H @@ -5,7 +5,9 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* COPYRIGHT International Business Machines Corp. 2014 */ +/* Contributors Listed Below - COPYRIGHT 2014,2015 */ +/* [+] 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. */ diff --git a/src/include/usr/targeting/attrPlatOverride.H b/src/include/usr/targeting/attrPlatOverride.H index 6461228ab..266f1976e 100644 --- a/src/include/usr/targeting/attrPlatOverride.H +++ b/src/include/usr/targeting/attrPlatOverride.H @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2014 */ +/* Contributors Listed Below - COPYRIGHT 2014,2015 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -68,6 +68,9 @@ const std::pair * permanent attribute overrides. Currently there are 3 attribute tanks, * FAPI, Targeting, and Permanent. * + * For runtime attribute updates, a PNOR::SectionInfo is set up to point to the + * passed attribute update binary blob instead of being a 'real' pnor section. + * * @param[in] i_sectionInfo PNOR::SectionInfo_t to look for overrides * @param[in] io_tanks Array of pointers to Attribute tanks, used for * test cases, default set to NULL @@ -79,4 +82,4 @@ errlHndl_t getAttrOverrides(PNOR::SectionInfo_t &i_sectionInfo, } // end of namespace -#endif \ No newline at end of file +#endif -- cgit v1.2.1