summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorVan Lee <vanlee@us.ibm.com>2011-12-15 13:54:09 -0600
committerVan H. Lee <vanlee@us.ibm.com>2012-01-04 21:45:31 -0600
commita001b92d6d5ab2383a7c8c51f1ee43f8095d1d56 (patch)
tree0a6a129727368da11fdc622edba19d96ee3657d5 /src
parentb3edcfa02fa31ed090d404322da2543c13a389ff (diff)
downloadblackbird-hostboot-a001b92d6d5ab2383a7c8c51f1ee43f8095d1d56.tar.gz
blackbird-hostboot-a001b92d6d5ab2383a7c8c51f1ee43f8095d1d56.zip
HWPF Attribute Support: ATTR_IS_SIMULATION - RTC4080
Change-Id: I2b73ceb44af6717e92f8ade682596496545fab51 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/581 Tested-by: Jenkins Server Reviewed-by: Van H. Lee <vanlee@us.ibm.com>
Diffstat (limited to 'src')
-rw-r--r--src/usr/fsi/test/fsiddtest.H4
-rw-r--r--src/usr/fsi/test/fsiprestest.H2
-rw-r--r--src/usr/hwas/hwas.C2
-rw-r--r--src/usr/hwpf/hwp/fapiHwpAttributeInfo.xml10
-rw-r--r--src/usr/hwpf/test/hwpftest.H14
-rwxr-xr-xsrc/usr/i2c/test/eepromddtest.H2
-rwxr-xr-xsrc/usr/i2c/test/i2ctest.H2
-rw-r--r--src/usr/initservice/istepdispatcher/istepdispatcher.C10
-rw-r--r--src/usr/targeting/xmltohb/attribute_types.xml8
-rw-r--r--src/usr/targeting/xmltohb/target_types.xml2
-rw-r--r--src/usr/targeting/xmltohb/vbu.system.xml2
-rw-r--r--src/usr/testcore/kernel/vmmbasetest.H2
12 files changed, 42 insertions, 18 deletions
diff --git a/src/usr/fsi/test/fsiddtest.H b/src/usr/fsi/test/fsiddtest.H
index dfd7c66e0..c3d254b7d 100644
--- a/src/usr/fsi/test/fsiddtest.H
+++ b/src/usr/fsi/test/fsiddtest.H
@@ -124,7 +124,7 @@ class FsiDDTest : public CxxTest::TestSuite
TARGETING::Target* sys = TARGETING::targetService().toTarget(syspath);
uint8_t vpo_mode = 0;
if( sys
- && sys->tryGetAttr<TARGETING::ATTR_VPO_MODE>(vpo_mode)
+ && sys->tryGetAttr<TARGETING::ATTR_IS_SIMULATION>(vpo_mode)
&& (vpo_mode == 1) )
{
return;
@@ -424,7 +424,7 @@ class FsiDDTest : public CxxTest::TestSuite
TARGETING::Target* sys = TARGETING::targetService().toTarget(syspath);
uint8_t vpo_mode = 0;
if( sys
- && sys->tryGetAttr<TARGETING::ATTR_VPO_MODE>(vpo_mode)
+ && sys->tryGetAttr<TARGETING::ATTR_IS_SIMULATION>(vpo_mode)
&& (vpo_mode == 1) )
{
return;
diff --git a/src/usr/fsi/test/fsiprestest.H b/src/usr/fsi/test/fsiprestest.H
index 912e1b75a..b50d7b8bc 100644
--- a/src/usr/fsi/test/fsiprestest.H
+++ b/src/usr/fsi/test/fsiprestest.H
@@ -65,7 +65,7 @@ class FSIPresTest : public CxxTest::TestSuite
TARGETING::Target* sys = TARGETING::targetService().toTarget(syspath);
uint8_t vpo_mode = 0;
if( sys
- && sys->tryGetAttr<TARGETING::ATTR_VPO_MODE>(vpo_mode)
+ && sys->tryGetAttr<TARGETING::ATTR_IS_SIMULATION>(vpo_mode)
&& (vpo_mode == 1) )
{
return;
diff --git a/src/usr/hwas/hwas.C b/src/usr/hwas/hwas.C
index acbb00504..dd1d7fb18 100644
--- a/src/usr/hwas/hwas.C
+++ b/src/usr/hwas/hwas.C
@@ -107,7 +107,7 @@ void init_fsi( void *io_pArgs )
TARGETING::Target* sys = TARGETING::targetService().toTarget(syspath);
uint8_t vpo_mode = 0;
if( sys
- && sys->tryGetAttr<TARGETING::ATTR_VPO_MODE>(vpo_mode)
+ && sys->tryGetAttr<TARGETING::ATTR_IS_SIMULATION>(vpo_mode)
&& (vpo_mode == 1) )
{
// wait here on the barrier, then end the task.
diff --git a/src/usr/hwpf/hwp/fapiHwpAttributeInfo.xml b/src/usr/hwpf/hwp/fapiHwpAttributeInfo.xml
index 3019edd6c..ec2767491 100644
--- a/src/usr/hwpf/hwp/fapiHwpAttributeInfo.xml
+++ b/src/usr/hwpf/hwp/fapiHwpAttributeInfo.xml
@@ -21,7 +21,7 @@
IBM_PROLOG_END -->
<!-- XML file specifying HW Procedure requested attributes. -->
-<!-- These are the scratch attributes that every platform must support for HWP development -->
+<!-- Attributes that every platform must support for HWP development -->
<attributes>
<!-- ********************************************************************* -->
@@ -176,4 +176,12 @@
<writeable/>
<array>1, 3, 5</array>
</attribute>
+ <!-- ********************************************************************* -->
+ <attribute>
+ <id>ATTR_IS_SIMULATION</id>
+ <targetType>TARGET_TYPE_SYSTEM</targetType>
+ <description>env: 1 = Awan/HWSimulator. 0 = Simics/RealHW.</description>
+ <valueType>uint8</valueType>
+ <platInit/>
+ </attribute>
</attributes>
diff --git a/src/usr/hwpf/test/hwpftest.H b/src/usr/hwpf/test/hwpftest.H
index 7d31ece0c..8a7e0e9c1 100644
--- a/src/usr/hwpf/test/hwpftest.H
+++ b/src/usr/hwpf/test/hwpftest.H
@@ -375,6 +375,18 @@ public:
break;
}
+ uint8_t l_vpoMode;
+ l_rc = FAPI_ATTR_GET(ATTR_IS_SIMULATION, NULL, l_vpoMode);
+ if (l_rc != fapi::FAPI_RC_SUCCESS)
+ {
+ FAPI_IMP("testHwpf5: ATTR_IS_SIMULATION. Error from GET");
+ break;
+ }
+ else
+ {
+ //printk("VPO = %d\n", l_vpoMode);
+ }
+
// Get the master processor chip
TARGETING::Target* l_pTarget = NULL;
TARGETING::targetService().masterProcChipTargetHandle(l_pTarget);
@@ -517,7 +529,7 @@ public:
uint8_t l_vpoMode = 0;
if (l_pTarget &&
- l_pTarget->tryGetAttr<TARGETING::ATTR_VPO_MODE>(l_vpoMode) &&
+ l_pTarget->tryGetAttr<TARGETING::ATTR_IS_SIMULATION>(l_vpoMode) &&
l_vpoMode == 0)
{
static const uint32_t NUM_OF_SCOMREGS = 6;
diff --git a/src/usr/i2c/test/eepromddtest.H b/src/usr/i2c/test/eepromddtest.H
index 11179afa9..6cb8adddc 100755
--- a/src/usr/i2c/test/eepromddtest.H
+++ b/src/usr/i2c/test/eepromddtest.H
@@ -89,7 +89,7 @@ class EEPROMTest: public CxxTest::TestSuite
TARGETING::Target* sys = TARGETING::targetService().toTarget(syspath);
uint8_t vpo_mode = 0;
if( sys
- && sys->tryGetAttr<TARGETING::ATTR_VPO_MODE>(vpo_mode)
+ && sys->tryGetAttr<TARGETING::ATTR_IS_SIMULATION>(vpo_mode)
&& (vpo_mode == 1) )
{
return;
diff --git a/src/usr/i2c/test/i2ctest.H b/src/usr/i2c/test/i2ctest.H
index b71d45427..80523c629 100755
--- a/src/usr/i2c/test/i2ctest.H
+++ b/src/usr/i2c/test/i2ctest.H
@@ -120,7 +120,7 @@ class I2CTest: public CxxTest::TestSuite
TARGETING::Target* sys = TARGETING::targetService().toTarget(syspath);
uint8_t vpo_mode = 0;
if( sys
- && sys->tryGetAttr<TARGETING::ATTR_VPO_MODE>(vpo_mode)
+ && sys->tryGetAttr<TARGETING::ATTR_IS_SIMULATION>(vpo_mode)
&& (vpo_mode == 1) )
{
return;
diff --git a/src/usr/initservice/istepdispatcher/istepdispatcher.C b/src/usr/initservice/istepdispatcher/istepdispatcher.C
index ee5380c21..6ee6c18f5 100644
--- a/src/usr/initservice/istepdispatcher/istepdispatcher.C
+++ b/src/usr/initservice/istepdispatcher/istepdispatcher.C
@@ -537,15 +537,15 @@ void IStepDispatcher::singleStepISteps( void * io_ptr ) const
TARGETING::Target* sys = TARGETING::targetService().toTarget(syspath);
uint8_t vpo_mode = 0;
if( sys
- && sys->tryGetAttr<TARGETING::ATTR_VPO_MODE>(vpo_mode)
- && (vpo_mode == 0) )
+ && sys->tryGetAttr<TARGETING::ATTR_IS_SIMULATION>(vpo_mode)
+ && (vpo_mode == 1) )
{
- nanosleep( SINGLESTEP_PAUSE_S, SINGLESTEP_PAUSE_NS );
+ // VBU delay per Patrick
+ nanosleep(0,TEN_CTX_SWITCHES_NS);
}
else
{
- // VBU delay per Patrick
- nanosleep(0,TEN_CTX_SWITCHES_NS);
+ nanosleep( SINGLESTEP_PAUSE_S, SINGLESTEP_PAUSE_NS );
}
} // endwhile
diff --git a/src/usr/targeting/xmltohb/attribute_types.xml b/src/usr/targeting/xmltohb/attribute_types.xml
index 56eccf2a0..b09981b72 100644
--- a/src/usr/targeting/xmltohb/attribute_types.xml
+++ b/src/usr/targeting/xmltohb/attribute_types.xml
@@ -762,8 +762,8 @@
</attribute>
<attribute>
- <id>VPO_MODE</id>
- <description>Are we running against the hardware simulator? 1=yes</description>
+ <id>IS_SIMULATION</id>
+ <description>env: 1 = Awan/HWSimulator. 0 = Simics/RealHW.</description>
<simpleType>
<uint8_t>
<default>0</default>
@@ -771,6 +771,10 @@
</simpleType>
<persistency>non-volatile</persistency>
<readable/>
+ <hwpfToHbAttrMap>
+ <id>ATTR_IS_SIMULATION</id>
+ <macro>DIRECT</macro>
+ </hwpfToHbAttrMap>
</attribute>
<attribute>
diff --git a/src/usr/targeting/xmltohb/target_types.xml b/src/usr/targeting/xmltohb/target_types.xml
index d2655574d..808637f05 100644
--- a/src/usr/targeting/xmltohb/target_types.xml
+++ b/src/usr/targeting/xmltohb/target_types.xml
@@ -78,7 +78,7 @@
<default>affinity:sys-0</default>
</attribute>
<attribute>
- <id>VPO_MODE</id>
+ <id>IS_SIMULATION</id>
<default>0</default>
</attribute>
<attribute>
diff --git a/src/usr/targeting/xmltohb/vbu.system.xml b/src/usr/targeting/xmltohb/vbu.system.xml
index ed8e7c23d..676565aca 100644
--- a/src/usr/targeting/xmltohb/vbu.system.xml
+++ b/src/usr/targeting/xmltohb/vbu.system.xml
@@ -40,7 +40,7 @@
<default>affinity:sys-0</default>
</attribute>
<attribute>
- <id>VPO_MODE</id>
+ <id>IS_SIMULATION</id>
<default>1</default>
</attribute>
</targetInstance>
diff --git a/src/usr/testcore/kernel/vmmbasetest.H b/src/usr/testcore/kernel/vmmbasetest.H
index 884a91373..c217717f4 100644
--- a/src/usr/testcore/kernel/vmmbasetest.H
+++ b/src/usr/testcore/kernel/vmmbasetest.H
@@ -128,7 +128,7 @@ class VmmBaseTest : public CxxTest::TestSuite
TARGETING::Target* sys = TARGETING::targetService().toTarget(syspath);
uint8_t vpo_mode = 0;
if( sys
- && sys->tryGetAttr<TARGETING::ATTR_VPO_MODE>(vpo_mode)
+ && sys->tryGetAttr<TARGETING::ATTR_IS_SIMULATION>(vpo_mode)
&& (vpo_mode == 0) )
{
nanosleep(1,0);
OpenPOWER on IntegriCloud