diff options
author | Dean Sanner <dsanner@us.ibm.com> | 2017-03-02 11:28:39 -0600 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2017-03-02 15:32:19 -0500 |
commit | a0437b216feaa77f81cfa3738844a0b761a9e99d (patch) | |
tree | 3b0d0699151e9e072b7065b8bec70d0ba99193ad /src/kernel | |
parent | 490f862dce24ca0978dd1b61eeb38f91fef3a495 (diff) | |
download | talos-hostboot-a0437b216feaa77f81cfa3738844a0b761a9e99d.tar.gz talos-hostboot-a0437b216feaa77f81cfa3738844a0b761a9e99d.zip |
Enable STOP wakeup on Hypervisor External Interrupt
- Latest HCODE image change requirements
now need to enable LPCR[17] prior to issuing STOP
Change-Id: I21488e0795b5dcd710b026ebbace2d158fdf9694
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/37374
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/kernel')
-rw-r--r-- | src/kernel/misc.C | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/kernel/misc.C b/src/kernel/misc.C index 0d81d98be..2a4889b48 100644 --- a/src/kernel/misc.C +++ b/src/kernel/misc.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2011,2016 */ +/* Contributors Listed Below - COPYRIGHT 2011,2017 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -286,7 +286,8 @@ namespace KernelMisc // Clear LPCR values that wakes up from winkle. LPCR[49, 50, 51] // Otherwise, there may be an interrupt pending or something that // prevents us from fully entering winkle. - setLPCR(getLPCR() & (~0x0000000000007000)); + // Turn on LPCR[17] to enable Hypervisor External Interrupts + setLPCR((getLPCR() & (~0x0000000000007000)) | 0x0000400000000000) ; // Deactivate CPU from kernel. cpu->winkled = true; @@ -387,7 +388,8 @@ namespace KernelMisc // Clear LPCR values that wakes up from winkle. LPCR[49, 50, 51] // Otherwise, there may be an interrupt pending or something that // prevents us from fully entering winkle. - setLPCR(getLPCR() & (~0x0000000000007000)); + // Turn on LPCR[17] to enable Hypervisor External Interrupts + setLPCR((getLPCR() & (~0x0000000000007000)) | 0x0000400000000000) ; // Deactivate CPU from kernel. cpu->winkled = true; |