From cf9d170610549a41e0466eee3d071795784b426b Mon Sep 17 00:00:00 2001 From: Mike Baiocchi Date: Fri, 28 Jun 2013 17:10:13 -0500 Subject: Use SBE Setting of Thread Count or Fail This commit takes out the workaround of using a default setting of a thread count if the SBE didn't set the right value in a scratch register. The current SBE code now does this, and we will now fail if for some reason the value isn't set. This commit also includes sim action file updates to model this behavior. Change-Id: I83608c402fac675c0287fa3ce38cf75237bcff26 RTC: 63991 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/5255 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III --- .../etc/patches/p8.act_sbe_thread_count_patch | 30 ++++++++++++++++++++++ src/build/citest/etc/patches/patchlist.txt | 10 ++++++++ .../etc/patches/s1.act_sbe_thread_count_patch | 12 +++++++++ 3 files changed, 52 insertions(+) create mode 100644 src/build/citest/etc/patches/p8.act_sbe_thread_count_patch create mode 100644 src/build/citest/etc/patches/s1.act_sbe_thread_count_patch (limited to 'src/build/citest/etc/patches') diff --git a/src/build/citest/etc/patches/p8.act_sbe_thread_count_patch b/src/build/citest/etc/patches/p8.act_sbe_thread_count_patch new file mode 100644 index 000000000..0a229eb19 --- /dev/null +++ b/src/build/citest/etc/patches/p8.act_sbe_thread_count_patch @@ -0,0 +1,30 @@ +*** ORIG/p8.act 2013-06-28 15:09:38.397876370 -0500 +--- NEW/p8.act 2013-06-28 16:36:03.653781869 -0500 +*************** +*** 157,168 **** + EFFECT: TARGET=[PROCREG(msr, 4, 6)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,D0000000 00000000)]# MSR to default + EFFECT: TARGET=[PROCREG(nia, 4, 7)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,00000000 00000100)]# NIA to default + EFFECT: TARGET=[PROCREG(msr, 4, 7)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,D0000000 00000000)]# MSR to default + + #ds01 Discover the secure state and save it away + EFFECT: TARGET=[LOGIC(0xFF0CC004)] OP=[EQUALTO,BUF,MASK,SHIFT] DATA=[REG(0x00010005)] MASK=[LITERAL(64,80000000 00000000)] SHIFT=[63] + # ds01 ch128 Load Hostboot base image from offset in MBOX SCRATCH3 reg (0x3A) + EFFECT: TARGET=[MODULE(sbeStart, FSIMBOX(0x3A), LOGIC(0xFF0CC004), 4)] OP=[MODULECALL] #dds129 +! + ############################################################################## + # Phase 2: Start SBE + ############################################################################## +--- 157,169 ---- + EFFECT: TARGET=[PROCREG(msr, 4, 6)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,D0000000 00000000)]# MSR to default + EFFECT: TARGET=[PROCREG(nia, 4, 7)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,00000000 00000100)]# NIA to default + EFFECT: TARGET=[PROCREG(msr, 4, 7)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,D0000000 00000000)]# MSR to default ++ EFFECT: TARGET=[PROCREG(scratch, 4,7)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,0000FF00 00000000)]# Thread Count + + #ds01 Discover the secure state and save it away + EFFECT: TARGET=[LOGIC(0xFF0CC004)] OP=[EQUALTO,BUF,MASK,SHIFT] DATA=[REG(0x00010005)] MASK=[LITERAL(64,80000000 00000000)] SHIFT=[63] + # ds01 ch128 Load Hostboot base image from offset in MBOX SCRATCH3 reg (0x3A) + EFFECT: TARGET=[MODULE(sbeStart, FSIMBOX(0x3A), LOGIC(0xFF0CC004), 4)] OP=[MODULECALL] #dds129 +! + ############################################################################## + # Phase 2: Start SBE + ############################################################################## diff --git a/src/build/citest/etc/patches/patchlist.txt b/src/build/citest/etc/patches/patchlist.txt index 538335cb5..456724f60 100644 --- a/src/build/citest/etc/patches/patchlist.txt +++ b/src/build/citest/etc/patches/patchlist.txt @@ -30,3 +30,13 @@ Add POR setting for TBROM scom register Indirectly: p8_slave.por, s1_master.por, s1_slave.por -Coreq: None +Add action for SBE to set Thread Count +-RTC: 76712 +-CMVC: 889344 +- Files + src/build/citest/etc/workarounds.postsimsetup + src/build/citest/etc/patches/patchlist.txt + src/build/citest/etc/patches/p8.act_sbe_thread_count_patch + src/build/citest/etc/patches/s1.act_sbe_thread_count_patch +-Coreq: None + diff --git a/src/build/citest/etc/patches/s1.act_sbe_thread_count_patch b/src/build/citest/etc/patches/s1.act_sbe_thread_count_patch new file mode 100644 index 000000000..2d21f27ac --- /dev/null +++ b/src/build/citest/etc/patches/s1.act_sbe_thread_count_patch @@ -0,0 +1,12 @@ +*** ORIG/s1.act 2013-06-28 14:54:22.409519345 -0500 +--- NEW/s1.act 2013-06-28 16:36:15.777409068 -0500 +*************** +*** 118,123 **** +--- 118,124 ---- + EFFECT: TARGET=[PROCREG(msr, 4, 6)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,D0000000 00000000)]# MSR to default + EFFECT: TARGET=[PROCREG(nia, 4, 7)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,00000000 00000100)]# NIA to default + EFFECT: TARGET=[PROCREG(msr, 4, 7)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,D0000000 00000000)]# MSR to default ++ EFFECT: TARGET=[PROCREG(scratch, 4,7)] OP=[EQUALTO,BUF] DATA=[LITERAL(64,0000FF00 00000000)]# Thread Count + + #ds01 Discover the secure state and save it away + EFFECT: TARGET=[LOGIC(0xFF0CC004)] OP=[EQUALTO,BUF,MASK,SHIFT] DATA=[REG(0x00010005)] MASK=[LITERAL(64,80000000 00000000)] SHIFT=[63] -- cgit v1.2.1