summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMike Jones <mjjones@us.ibm.com>2013-10-22 13:00:06 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2013-10-28 12:37:02 -0500
commitf5e1ea44add82f16f94a7f068bc8a4a8e0f3677c (patch)
treeee35f6a87fa08c208bc3e38ea7fe16f4d393f9ba /src
parentc529c391001736f4a55a71d30ea7a8c9dabfa0ed (diff)
downloadtalos-hostboot-f5e1ea44add82f16f94a7f068bc8a4a8e0f3677c.tar.gz
talos-hostboot-f5e1ea44add82f16f94a7f068bc8a4a8e0f3677c.zip
Remove unit test usage of hardcoded core addresses
Change-Id: I26cca4a3b09cc5486741507be33961ab41986216 RTC: 60769 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/6801 Tested-by: Jenkins Server Reviewed-by: Brian H. Horton <brianh@linux.ibm.com> Reviewed-by: Donald E. Dahle <dedahle@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src')
-rw-r--r--src/usr/hwpf/hwp/fapiTestHwp.C7
-rwxr-xr-xsrc/usr/hwpf/hwp/initfiles/sample.initfile79
-rw-r--r--src/usr/hwpf/test/hwpftest.H91
-rw-r--r--src/usr/xscom/runtime/test/testxscom_rt.H4
-rw-r--r--src/usr/xscom/test/xscomtest.H7
5 files changed, 61 insertions, 127 deletions
diff --git a/src/usr/hwpf/hwp/fapiTestHwp.C b/src/usr/hwpf/hwp/fapiTestHwp.C
index 4f63e8c02..57f1818dc 100644
--- a/src/usr/hwpf/hwp/fapiTestHwp.C
+++ b/src/usr/hwpf/hwp/fapiTestHwp.C
@@ -5,7 +5,7 @@
/* */
/* IBM CONFIDENTIAL */
/* */
-/* COPYRIGHT International Business Machines Corp. 2011,2012 */
+/* COPYRIGHT International Business Machines Corp. 2011,2013 */
/* */
/* p1 */
/* */
@@ -72,9 +72,8 @@ fapi::ReturnCode hwpInitialTest(const std::vector<fapi::Target> & i_target)
do
{
- // Use this SCOM register for testing
- //@TODO via RTC: 60769 -- base 15XXXXXX addr on master core
- const uint64_t l_addr = 0x15010002;
+ // Use PORE_GPE0_SCRATCH2_0x0006000C Scom register for testing
+ const uint64_t l_addr = 0x0006000C;
ecmdDataBufferBase l_ScomData(64);
uint64_t l_originalScomData = 0;
diff --git a/src/usr/hwpf/hwp/initfiles/sample.initfile b/src/usr/hwpf/hwp/initfiles/sample.initfile
index 124f3e16f..ce1e89294 100755
--- a/src/usr/hwpf/hwp/initfiles/sample.initfile
+++ b/src/usr/hwpf/hwp/initfiles/sample.initfile
@@ -63,36 +63,32 @@ define def_not_equal_test = (SYS.ATTR_SCRATCH_UINT64_1 != SYS.ATTR_SCRATCH_UINT
define MBA0 = TGT1;
define MBA1 = TGT2;
-
-#@TODO via RTC: 60769 -- base 15XXXXXX addr on master core
-
#--******************************************************************************
-#-- Basic SCOM
+#-- Basic SCOM to PORE_GPE0_SCRATCH0_0x0006000A
#--******************************************************************************
-scom 0x0000000015010002 {
+scom 0x000000000006000A {
scom_data ;
- 0xAABBC00000000000 ;
+ 0x0ABBC00000000000 ;
}
#--******************************************************************************
-#-- SCOM with Address and Data of Array Type, Range of Index, Bit Support
+#-- SCOM with Address and Data of Array Type, Range of Index, Bit Support to
+#-- PORE_GPE0_SCRATCH1_0x0006000B and PORE_GPE0_SCRATCH2_0x0006000C
#-- The following Scom is equivalent to:
-#scom 0x000000000006002B {
+#scom 0x000000000006000B {
# bits, scom_data , expr;
# 0:7, SYS.ATTR_SCRATCH_UINT8_ARRAY_1[2], SYS.ATTR_SCRATCH_UINT8_ARRAY_1[2] > SYS.ATTR_SCRATCH_UINT8_1;
# 24:31, SYS.ATTR_SCRATCH_UINT8_ARRAY_1[2], SYS.ATTR_SCRATCH_UINT8_1 == SYS.ATTR_SCRATCH_UINT8_ARRAY_1[3];
# 32:39, SYS.ATTR_SCRATCH_UINT8_ARRAY_2[0][1][2], SYS.ATTR_SCRATCH_UINT8_ARRAY_1[0] < SYS.ATTR_SCRATCH_UINT8_ARRAY_1[1];
#}
#
-#scom 0x000000000006002C {
+#scom 0x000000000006000C {
# bits, scom_data , expr;
# 0:7, SYS.ATTR_SCRATCH_UINT8_ARRAY_1[2], SYS.ATTR_SCRATCH_UINT8_ARRAY_1[31] > SYS.ATTR_SCRATCH_UINT8_1;
# 24:31, SYS.ATTR_SCRATCH_UINT8_ARRAY_1[31], SYS.ATTR_SCRATCH_UINT8_1 == SYS.ATTR_SCRATCH_UINT8_ARRAY_1[7];
# 32:39, SYS.ATTR_SCRATCH_UINT8_ARRAY_2[1][2][3], SYS.ATTR_SCRATCH_UINT8_ARRAY_1[17] < SYS.ATTR_SCRATCH_UINT8_ARRAY_1[18];
#}
-#--******************************************************************************
-
-scom 0x000000000006002(B,C) {
+scom 0x000000000006000(B,C) {
bits, scom_data , expr;
0:7, SYS.ATTR_SCRATCH_UINT8_ARRAY_1[2], SYS.ATTR_SCRATCH_UINT8_ARRAY_1[2,31] > SYS.ATTR_SCRATCH_UINT8_1;
24:31, SYS.ATTR_SCRATCH_UINT8_ARRAY_1[2,31], SYS.ATTR_SCRATCH_UINT8_1 == SYS.ATTR_SCRATCH_UINT8_ARRAY_1[3,7];
@@ -100,19 +96,17 @@ scom 0x000000000006002(B,C) {
}
#--******************************************************************************
-#-- Basic SCOM with define used
+#-- Basic SCOM with define used to PORE_GPE1_SCRATCH0_0x0006002A
#--******************************************************************************
-
-scom 0x000000000006800b {
+scom 0x000000000006002A {
scom_data, expr ;
0x0000000000000184, def_equal_test ;
}
#--******************************************************************************
-#-- Basic SCOM with a single bit set
+#-- Basic SCOM with a single bit set to PORE_GPE1_SCRATCH1_0x0006002B
#--******************************************************************************
-
-scom 0x000000000006800c {
+scom 0x000000000006002B {
bits , scom_data ;
23 , 0b1 ;
}
@@ -121,8 +115,7 @@ scom 0x000000000006800c {
#-- Basic SCOM with same address but different bits set & Scom data of Attr type
#-- Simple operations on Scom data
#--******************************************************************************
-
-scom 0x000000000006800c {
+scom 0x000000000006002B {
bits , scom_data , expr ;
24:31, (MBA1.ATTR_CHIP_UNIT_POS + SYS.ATTR_SCRATCH_UINT8_ARRAY_2[1][2][3]) , (SYS.ATTR_SCRATCH_UINT8_1 | 0b00000001) != 1;
24:31, ((MBA1.ATTR_CHIP_UNIT_POS | SYS.ATTR_SCRATCH_UINT8_ARRAY_2[1][2][3]) + 1) / 2, !(SYS.ATTR_SCRATCH_UINT8_1 == 3);
@@ -130,11 +123,11 @@ scom 0x000000000006800c {
}
#--******************************************************************************
-#-- Basic SCOM with bits
+#-- Basic SCOM with bits to PORE_GPE1_SCRATCH2_0x0006002C
#--******************************************************************************
-scom 0x0000000015013283 {
+scom 0x000000000006002C {
bits , scom_data ;
- 0:11 , 0b001111001001 ;
+ 0:11 , 0b000011001001 ;
12 , 0b1 ;
13 , 0x1 ;
14:59, 0x00c190010480 ;
@@ -142,12 +135,12 @@ scom 0x0000000015013283 {
}
#--******************************************************************************
-#-- Complext SCOM with Bit Support, define, and attributes
+#-- Complex SCOM with Bit Support, define, and attributes to
+#-- PORE_SLW_SCRATCH0_0x0006800A
#--******************************************************************************
-
-scom 0x0000000015013284 {
+scom 0x000000000006800A {
bits , scom_data, expr ;
- 0:11 , 0b001111001001, ANY ;
+ 0:11 , 0b000011001001, ANY ;
12 , 0b1, def_equal_test ;
12 , 0b0, def_not_equal_test ;
13 , 0b1, def_uint8_greater_test ;
@@ -155,10 +148,10 @@ scom 0x0000000015013284 {
}
#--******************************************************************************
-#-- Complex SCOM with Bit Support, and logical operators
+#-- Complex SCOM with Bit Support, and logical operators to
+#-- PORE_SLW_SCRATCH1_0x0006800B
#--******************************************************************************
-
-scom 0x0000000015013285 {
+scom 0x000000000006800B {
bits , scom_data, expr ;
12 , 0b1, def_equal_test && def_not_equal_test ;
12 , 0b0, def_equal_test || def_not_equal_test ;
@@ -174,40 +167,42 @@ scom 0x0000000015013285 {
#--******************************************************************************
#-- SCOM with 'ec' column - Use scratch for now since all attributes work
+#-- To PORE_SLW_SCRATCH2_0x0006800C
#--******************************************************************************
-
-scom 0x0000000015013286 {
+scom 0x000000000006800C {
scom_data, SYS.ATTR_SCRATCH_UINT32_1, SYS.ATTR_SCRATCH_UINT32_2 ;
0x0000000000000192, != 0, >= ENUM_ATTR_SCRATCH_UINT64_ARRAY_2_VAL_B ;
}
#--******************************************************************************
-#-- Basic SCOM with an array
+#-- Basic SCOM with an array to PORE_SBE_SCRATCH0_0x000E000A
#--******************************************************************************
-scom 0x0000000015013287 {
+scom 0x00000000000E000A {
scom_data, expr ;
0x0000000000000182, SYS.ATTR_SCRATCH_UINT8_ARRAY_1[2] == SYS.ATTR_SCRATCH_UINT8_1 ;
}
#--******************************************************************************
#-- SCOM with 'ec' & expr column - Use scratch for now since all attributes work
+#-- To PORE_SBE_SCRATCH1_0x000E000B
#--******************************************************************************
-scom 0x0000000015013288 {
+scom 0x00000000000E000B {
scom_data, SYS.ATTR_SCRATCH_UINT32_1, expr;
0x0000000000000192, 3, SYS.ATTR_SCRATCH_UINT8_ARRAY_2[1][2][3] == 0x00000000000000BE;
}
#--******************************************************************************
#-- Complex SCOM with Bit Support, associated attributes and logical operators
+#-- To PORE_SBE_SCRATCH2_0x000E000C
#--******************************************************************************
# TODO: RTC:Issue 66579 remove this register as it is now being used by dump
-#scom 0x0000000015013289 {
-# bits, scom_data, MBA1.ATTR_CHIP_UNIT_POS, expr;
-# 23, 0b0, 1, MBA0.ATTR_CHIP_UNIT_POS == 1;
-# 23, MBA1.ATTR_CHIP_UNIT_POS, 1, MBA0.ATTR_CHIP_UNIT_POS == 0;
-# 24:25, 0b10, 0, any;
-# 24:25, 0b01, 1, SYS.ATTR_SCRATCH_UINT8_ARRAY_1[2] == SYS.ATTR_SCRATCH_UINT8_1;
-#}
+scom 0x00000000000E000C {
+ bits, scom_data, MBA1.ATTR_CHIP_UNIT_POS, expr;
+ 23, 0b0, 1, MBA0.ATTR_CHIP_UNIT_POS == 1;
+ 23, MBA1.ATTR_CHIP_UNIT_POS, 1, MBA0.ATTR_CHIP_UNIT_POS == 0;
+ 24:25, 0b10, 0, any;
+ 24:25, 0b01, 1, SYS.ATTR_SCRATCH_UINT8_ARRAY_1[2] == SYS.ATTR_SCRATCH_UINT8_1;
+}
#--******************************************************************************
#-- Basic SCOM with Multiple Arrays/Address Ranges
diff --git a/src/usr/hwpf/test/hwpftest.H b/src/usr/hwpf/test/hwpftest.H
index c1f2a8157..97a51387b 100644
--- a/src/usr/hwpf/test/hwpftest.H
+++ b/src/usr/hwpf/test/hwpftest.H
@@ -273,43 +273,26 @@ public:
//Note: this data is based on the sample.initfile.
//If the initfile changes, this data will also need to be changed.
- //@TODO via RTC: 60769 -- base 15XXXXXX addr on master core
ifScom_t l_ifScomData[] =
{
- {0x000000000006002b, 0, 0x0000000000000000 |
- (0x00000000000000C4ll << (64 - (32 + 8)))},
- {0x000000000006002c, 0, (0x0000000000000001ll << (64 - 8)) |
- (0x0000000000000008ll << (64 - (24 + 8)))},
- {0x000000000006800b, 0, 0},
- {0x000000000006800c, 0, (0x8000000000000000 >> 0x17) |
- (0x0000000000000060ll << (64 - (24 + 8))) |
- 0x0000000000003000},
- {0x0000000015010002, 0, 0xAABBC00000000000},
- {0x0000000015013283, 0, 0x3c90000000000000 |
- (0x8000000000000000 >> 0x0c) |
- (0x8000000000000000 >> 0x0d) |
- (0x0306400412000000 >> 0x0e) |
- 0x000000000000000D},
- {0x0000000015013284, 0, 0x3c90000000000000},
- {0x0000000015013285, 0, (0x8000000000000000 >> 0x0f) |
- (0x8000000000000000 >> 0x10) |
- (0x8000000000000000 >> 0x13) |
- (0x0306400412000000 >> 0x15) },
- {0x0000000015013286, 0, 0x0000000000000192},
- {0x0000000015013287, 0, 0x0000000000000182},
- {0x0000000015013288, 0, 0x0000000000000192},
- // TODO: RTC:Issue 66579 Removed as this register is now being
- // used by dump
-
- /*{0x0000000015013289, 0, (0x8000000000000000 >> 0x17) |
- (0x4000000000000000 >> 0x18)}*/
+ {/*PORE_GPE0_SCRATCH0_*/0x0006000A, 0, 0x0ABBC00000000000},
+ {/*PORE_GPE0_SCRATCH1_*/0x0006000B, 0, 0x00000000C4000000},
+ {/*PORE_GPE0_SCRATCH2_*/0x0006000C, 0, 0x0100000800000000},
+ {/*PORE_GPE1_SCRATCH0_*/0x0006002A, 0, 0x0000000000000000},
+ {/*PORE_GPE1_SCRATCH1_*/0x0006002B, 0, 0x0000016000003000},
+ {/*PORE_GPE1_SCRATCH2_*/0x0006002C, 0, 0x0c9c0c190010480d},
+ {/*PORE_SLW_SCRATCH0_*/0x0006800A, 0, 0x0c90000000000000},
+ {/*PORE_SLW_SCRATCH1_*/0x0006800B, 0, 0x0001901832002090},
+ {/*PORE_SLW_SCRATCH2_*/0x0006800C, 0, 0x0000000000000192},
+ {/*PORE_SBE_SCRATCH1_*/0x000E000B, 0, 0x0000000000000192},
+ {/*PORE_SBE_SCRATCH2_*/0x000E000C, 0, 0x0000014000000000}
};
- fapi::ReturnCode l_rc = fapi::FAPI_RC_SUCCESS;
+ fapi::ReturnCode l_rc;
ecmdDataBufferBase l_ScomData(64);
do {
- // Set up some attributes for testing
+ // Set up some attributes used by sample.initfile
uint8_t l_uint8 = 1;
l_rc = FAPI_ATTR_SET(ATTR_SCRATCH_UINT8_1, NULL, l_uint8);
if (l_rc != fapi::FAPI_RC_SUCCESS)
@@ -387,19 +370,6 @@ public:
break;
}
- // Test ATTR_IS_SIMULATION access through FAPI
- uint8_t l_flag;
- l_rc = FAPI_ATTR_GET(ATTR_IS_SIMULATION, NULL, l_flag);
- if (l_rc != fapi::FAPI_RC_SUCCESS)
- {
- TS_FAIL("testHwpf5: ATTR_IS_SIMULATION. Error from GET");
- break;
- }
- else
- {
- //printk("ATTR_IS_SIMULATION = %d\n", l_flag);
- }
-
//Set the targets
std::vector<fapi::Target> l_target;
@@ -463,32 +433,6 @@ public:
break;
}
- // Test ATTR_EC attribute access through FAPI
- uint8_t l_EC_R = 0xFF;
-
- l_rc = FAPI_ATTR_GET_PRIVILEGED(ATTR_EC, &l_fapiTarget, l_EC_R);
- if (l_rc != fapi::FAPI_RC_SUCCESS)
- {
- TS_FAIL("testHwpf5: ATTR_EC. Error from GET");
- break;
- }
-
- // Test ATTR_FUNCTIONAL attribute access through FAPI
- uint8_t l_functional = 0xff;
- l_rc = FAPI_ATTR_GET(ATTR_FUNCTIONAL, &l_fapiTarget, l_functional);
- if (l_rc != fapi::FAPI_RC_SUCCESS)
- {
- TS_FAIL("testHwpf5: ATTR_FUNCTIONAL. Error from GET");
- break;
- }
- else
- {
- FAPI_INF("testHwpf5: Master chip ATTR_FUNCTIONAL: %d", l_functional);
- }
-
- //printk("EC = %d\n", l_EC_R);
-
- /*
// Save original scom data to restore at end of test
for (uint32_t i = 0; i < sizeof(l_ifScomData)/sizeof(ifScom_t); i++)
{
@@ -507,7 +451,6 @@ public:
{
break;
}
- */
// Set scom data to 0 to start from known state for bit ops
l_ScomData.setDoubleWord(0, 0ll);
@@ -563,9 +506,8 @@ public:
break;
}
- /*
// Restore the original Scom data
- //uint32_t l_ecmdRc = ECMD_DBUF_SUCCESS;
+ uint32_t l_ecmdRc = ECMD_DBUF_SUCCESS;
for (uint32_t i = 0; i < sizeof(l_ifScomData)/sizeof(ifScom_t); i++)
{
l_ecmdRc = l_ScomData.setDoubleWord(0,l_ifScomData[i].origData);
@@ -591,7 +533,6 @@ public:
{
break;
}
- */
} while (0);
@@ -625,15 +566,13 @@ public:
l_pTarget->tryGetAttr<TARGETING::ATTR_IS_SIMULATION>(l_vpoMode) &&
l_vpoMode == 0)
{
- static const uint32_t NUM_OF_SCOMREGS = 6;
+ static const uint32_t NUM_OF_SCOMREGS = 4;
ifScom_t l_ifScom[NUM_OF_SCOMREGS] =
{
{0x000000000006002b, 0x0000000000000183},
{0x000000000006002c, 0x0000000000000183},
{0x000000000006800b, 0},
{0x000000000006800c, 0x8000000000000000 >> 0x17},
- {0x0000000015010002, 0xAABBC00000000000},
- {0x0000000015013288, 0x00000CDE00000000},
};
// Get the master processor chip
diff --git a/src/usr/xscom/runtime/test/testxscom_rt.H b/src/usr/xscom/runtime/test/testxscom_rt.H
index 943d6381e..e451f53d8 100644
--- a/src/usr/xscom/runtime/test/testxscom_rt.H
+++ b/src/usr/xscom/runtime/test/testxscom_rt.H
@@ -41,8 +41,8 @@ struct testXscomAddrData
const testXscomAddrData g_xscomAddrTable[] =
{
// Write data to be ORed with read value
- {0x15013288, 0x0000040000000000},
- {0x15010002, 0xC000000000000000},
+ {0x0006000B, 0x0000040000000000}, // PORE_GPE0_SCRATCH1_0x0006000B
+ {0x0006000C, 0xC000000000000000}, // PORE_GPE0_SCRATCH2_0x0006000C
{0x00040001, 0xE000000000000000}, //TP Chiplet
// TODO - more tests
};
diff --git a/src/usr/xscom/test/xscomtest.H b/src/usr/xscom/test/xscomtest.H
index b350c4e41..f18cc331d 100644
--- a/src/usr/xscom/test/xscomtest.H
+++ b/src/usr/xscom/test/xscomtest.H
@@ -50,9 +50,10 @@ struct testXscomAddrData
const testXscomAddrData g_xscomAddrTable[] =
{
// Write data to be ORed with read value
- //@TODO via RTC: 60769 -- base addr on master core
- {0x15013288, 0x0000040000000000},
- {0x15010002, 0xC000000000000000},
+ // Use PORE_GPE0_SCRATCH1_0x0006000B and PORE_GPE0_SCRATCH2_0x0006000C
+ // Scom registers for testing
+ {0x0006000B, 0x0000040000000000},
+ {0x0006000C, 0xC000000000000000},
};
const uint32_t g_xscomAddrTableSz =
sizeof(g_xscomAddrTable)/sizeof(testXscomAddrData);
OpenPOWER on IntegriCloud