diff options
author | Dan Crowell <dcrowell@us.ibm.com> | 2011-09-27 09:51:50 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2011-10-14 13:33:32 -0500 |
commit | d6ce3b30395982623494ad75c50e75c56fadcaca (patch) | |
tree | 82a38e66e28e7f824f597875f994c6b60efa6281 /src/usr/devicefw | |
parent | 17f630f5c2fabea998708dc2b2cb33120c388079 (diff) | |
download | talos-hostboot-d6ce3b30395982623494ad75c50e75c56fadcaca.tar.gz talos-hostboot-d6ce3b30395982623494ad75c50e75c56fadcaca.zip |
Pull FSI data from real attributes (Task 3909).
There are a group of attributes defined for FSI now.
-ATTR_FSI_MASTER_CHIP
-ATTR_FSI_MASTER_TYPE
-ATTR_FSI_MASTER_PORT
-ATTR_FSI_SLAVE_CASCADE
-ATTR_FSI_OPTION_FLAGS
Also includes work for Story 3996. The attributes are now broken
into 3 distinct pieces:
- attribute_types.xml : defines hostboot attributes
- target_types.xml : defines different types of targets
- XXX.system.xml : system-specific information, equivalent to what
we'll get from system workbook
These are then used to generic system-specific binaries, currently
for 3 platforms:
- simics_SALERNO_targeting.bin
- simics_VENICE_targeting.bin
- vbu_targeting.bin
Change-Id: I2bf920cc62cceb761ab44a07df433da44249d0e0
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/426
Tested-by: Jenkins Server
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/devicefw')
-rw-r--r-- | src/usr/devicefw/associator.C | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/src/usr/devicefw/associator.C b/src/usr/devicefw/associator.C index 3ea60361c..bacb8bd34 100644 --- a/src/usr/devicefw/associator.C +++ b/src/usr/devicefw/associator.C @@ -149,6 +149,29 @@ namespace DeviceFW void* io_buffer, size_t& io_buflen, int64_t i_accessType, va_list i_addr) { + errlHndl_t l_errl = NULL; + + if( NULL == i_target ) + { + TRACFCOMP(g_traceBuffer, "A device driver operation was attempted on a NULL target : i_opType=%d, i_accessType=%d", i_opType, i_accessType ); + /*@ + * @errortype + * @moduleid DEVFW_MOD_ASSOCIATOR + * @reasoncode DEVFW_RC_NULL_TARGET + * @userdata1 OpType + * @userdata2 AccessType + * + * @devdesc A device driver operation on a NULL target. + */ + l_errl = new ErrlEntry(ERRL_SEV_INFORMATIONAL, + DEVFW_MOD_ASSOCIATOR, + DEVFW_RC_NULL_TARGET, + i_opType, + i_accessType); + return l_errl; + } + + TARGETING::TYPE l_devType = (i_target == MASTER_PROCESSOR_CHIP_TARGET_SENTINEL) ? TYPE_PROC : i_target->getAttr<ATTR_TYPE>(); @@ -160,8 +183,6 @@ namespace DeviceFW // compiler due to the template specializations in driverif.H. // No assert-checks will be done here. - errlHndl_t l_errl = NULL; - mutex_lock(&iv_mutex); // Function pointer found for this route request. @@ -240,7 +261,7 @@ namespace DeviceFW * @moduleid DEVFW_MOD_ASSOCIATOR * @reasoncode DEVFW_RC_NO_ROUTE_FOUND * @userdata1 (OpType << 32) | (AccessType) - * @userdata1 TargetType + * @userdata2 TargetType * * @devdesc A device driver operation was attempted for * which no driver has been registered. |