summaryrefslogtreecommitdiffstats
path: root/src/import/hwpf/fapi2/include/fapi2_i2c_access.H
diff options
context:
space:
mode:
authorJoachim Fenkes <fenkes@de.ibm.com>2018-12-05 16:47:55 +0100
committerSachin Gupta <sgupta2m@in.ibm.com>2019-02-13 21:37:51 -0600
commitb9b668e5916e3310eacb95496cc0792d819b25f0 (patch)
tree78ce2d1f1a4ed46f5c1ad4d5c0536e8acb34b4ea /src/import/hwpf/fapi2/include/fapi2_i2c_access.H
parent6eb2a4c0f0d838967f29d124ae466b8c1920bf37 (diff)
downloadtalos-sbe-b9b668e5916e3310eacb95496cc0792d819b25f0.tar.gz
talos-sbe-b9b668e5916e3310eacb95496cc0792d819b25f0.zip
FAPI2: Multicast API 1/2: Platform-breaking changes
The Target gains a new template parameter, M, that specifies the multicast type. This is propagated through all affected header files. A new target type is introduced, TARGET_TYPE_MULTICAST, and platform specific assertions put in place to prevent users from creating such targets before the platform supports it. Target also grows a new inline function for updating MC targets. Platforms not supporting MC can provide a dummy implementation. The example platform code in fapi2/include/plat/plat_target.H is updated with minimal example code for platform implementers. Change-Id: Ia0990f26890dc5c719caca608cd134a4964a3acf Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/69456 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Matt K. Light <mklight@us.ibm.com> Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: RAJA DAS <rajadas2@in.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/70866 Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Diffstat (limited to 'src/import/hwpf/fapi2/include/fapi2_i2c_access.H')
-rw-r--r--src/import/hwpf/fapi2/include/fapi2_i2c_access.H10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/import/hwpf/fapi2/include/fapi2_i2c_access.H b/src/import/hwpf/fapi2/include/fapi2_i2c_access.H
index 20d04b9e..a4f0eebe 100644
--- a/src/import/hwpf/fapi2/include/fapi2_i2c_access.H
+++ b/src/import/hwpf/fapi2/include/fapi2_i2c_access.H
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER sbe Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2018 */
+/* Contributors Listed Below - COPYRIGHT 2018,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -66,8 +66,8 @@ namespace fapi2
/// before the read.
/// @param[out] o_data Buffer that holds data read from HW target.
/// @return fapi2::ReturnCode. FAPI2_RC_SUCCESS if success, else error code.
-template< TargetType K, typename V >
-inline ReturnCode getI2c(const Target<K, V>& i_target,
+template< TargetType K, MulticastType M, typename V >
+inline ReturnCode getI2c(const Target<K, M, V>& i_target,
const size_t i_get_size,
const std::vector<uint8_t>& i_data,
std::vector<uint8_t>& o_data);
@@ -87,8 +87,8 @@ inline ReturnCode getI2c(const Target<K, V>& i_target,
/// @param[in] i_target HW target to operate on.
/// @param[in] i_data Buffer that holds data to write to the HW target.
/// @return fapi2::ReturnCode. FAPI2_RC_SUCCESS if success, else error code.
-template< TargetType K, typename V >
-inline ReturnCode putI2c(const Target<K, V>& i_target,
+template< TargetType K, MulticastType M, typename V >
+inline ReturnCode putI2c(const Target<K, M, V>& i_target,
const std::vector<uint8_t>& i_data);
};
OpenPOWER on IntegriCloud