diff options
author | Missy Connell <missyc@us.ibm.com> | 2011-12-06 13:06:18 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2012-01-24 14:43:04 -0600 |
commit | 52b60aea13ffc9a8d67a6714e1416402fd203139 (patch) | |
tree | 209e89b8fdeb35126712c2d75bb49b6eb396be36 /src/usr/scom/scom.H | |
parent | 8514ef2acf01728b5a07fbd3c94999375cc0aec6 (diff) | |
download | talos-hostboot-52b60aea13ffc9a8d67a6714e1416402fd203139.tar.gz talos-hostboot-52b60aea13ffc9a8d67a6714e1416402fd203139.zip |
Indirect SCOM support
Added locking
Change-Id: If2b3c2d69bb533a65cd9b41c1eaf595e979f93aa
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/562
Tested-by: Jenkins Server
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/scom/scom.H')
-rw-r--r-- | src/usr/scom/scom.H | 36 |
1 files changed, 32 insertions, 4 deletions
diff --git a/src/usr/scom/scom.H b/src/usr/scom/scom.H index d91eb41ee..f39720aae 100644 --- a/src/usr/scom/scom.H +++ b/src/usr/scom/scom.H @@ -34,10 +34,9 @@ namespace SCOM /** - * @brief Performs an SCom operation - * This function performs an SCom Read/Write operation. It follows a - * pre-defined prototype functions in order to be registered with the - * device-driver framework. + * @brief Performs a SCom operation + * This function performs a SCOM operation by calling doScomOP. It + * handles whether the address a regular or an indirect SCOM address * * @param[in] i_opType Operation type, see DeviceFW::OperationType * in driverif.H @@ -63,6 +62,35 @@ errlHndl_t scomPerformOp(DeviceFW::OperationType i_opType, va_list i_args); +/** + * @brief Performs a SCom operation + * This function performs an SCom Read/Write operation. It follows a + * pre-defined prototype functions in order to be registered with the + * device-driver framework. + * + * @param[in] i_opType Operation type, see DeviceFW::OperationType + * in driverif.H + * @param[in] i_target SCom target + * @param[in/out] io_buffer Read: pointer to output data storage + * Write: pointer to data to be written + * @param[in/out] io_buflen Input: size of io_buffer (in bytes) + * Output: Read: size of output data + * Write: size of data written + * @param[in] i_accessType Select from DeviceFW::AccessType enum + * (usrif.H) + * @param[in] i_args This is an argument list for DD framework. + * In this function, there's only one argument, + * which is the SCom address value. + * + * @return errlHndl_t + */ +errlHndl_t doScomOp(DeviceFW::OperationType i_opType, + TARGETING::Target* i_target, + void* io_buffer, + size_t& io_buflen, + int64_t i_accessType, + uint64_t i_addr); + }; // End namespace |