summaryrefslogtreecommitdiffstats
path: root/src/include/usr/intr
diff options
context:
space:
mode:
authorMike Baiocchi <mbaiocch@us.ibm.com>2016-11-04 11:30:17 -0500
committerWilliam G. Hoffa <wghoffa@us.ibm.com>2017-03-08 11:06:34 -0500
commitc3d233bbaf7a2f274147d16edbc080bae0ffd714 (patch)
tree8058bc8e764135eecc21cdcd1177814dd4e180c8 /src/include/usr/intr
parent1301e43641f7d3f315a0abc8112fa88927c9fa9a (diff)
downloadtalos-hostboot-c3d233bbaf7a2f274147d16edbc080bae0ffd714.tar.gz
talos-hostboot-c3d233bbaf7a2f274147d16edbc080bae0ffd714.zip
Hostboot Base TCE Support
This commit adds the base support for hostboot to enable/disable the use of TCEs. It allows for the creation and managment of a TCE table and also initializes the P9 processors to use this table. Change-Id: Idb40f9df5a90d8b7e87b2f5b745cbe7e66109df2 RTC:145071 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/32562 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Stephen M. Cprek <smcprek@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src/include/usr/intr')
-rw-r--r--src/include/usr/intr/interrupt.H30
1 files changed, 29 insertions, 1 deletions
diff --git a/src/include/usr/intr/interrupt.H b/src/include/usr/intr/interrupt.H
index 38d0fa473..aa0e8cdab 100644
--- a/src/include/usr/intr/interrupt.H
+++ b/src/include/usr/intr/interrupt.H
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2011,2016 */
+/* Contributors Listed Below - COPYRIGHT 2011,2017 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -144,6 +144,34 @@ namespace INTR
MSG_INTR_ENABLE_PSI_INTR, //!< Enable PSIHB Interrupts
};
+
+ //Derived from 15.8 PSIHB Software Interfaces of the p9_cn_psi_hb_regs.pdf
+ // (splintered off from the P9 Pervasive Workbook)
+ // -- shared with other code (like utiltce)
+ struct PSIHB_SW_INTERFACES_t
+ {
+ uint64_t psihbbar; //Host Bridge Base Address Register - 0x0
+ uint64_t fspbar; //FSP Base Address Register - 0x8
+ uint64_t fspmmr; //FSP Memory Mask Register - 0x10
+ uint64_t tceaddr; //TAR - TCE Address Register - 0x18
+ uint64_t psihbcr; //PSI Host Bridge Ctrl/Status Register - 0x20
+ uint64_t psisemr; //PSIHB Status / Error Mask Register - 0x28
+ uint64_t reserved2; //Unused / Reserved
+ uint64_t phbdsr; //PSIHB Debug Setting register - 0x38
+ uint64_t phbscr; //PSI Host Bridge Ctrl/Status Register - 0x40
+ uint64_t phbccr; //PSI Host Bridge clear ctl/status reg - 0x48
+ uint64_t dmaupaddr; //DMA Upper Address Register - 0x50
+ uint64_t icr; //Interrupt Control Register - 0x58
+ uint64_t esbciaddr; //ESB CI Base Address - 0x60
+ uint64_t esbnotifyaddr; //ESB Notification Address - 0x68
+ uint64_t ivtofforig; //IVT Offset Origin Register - 0x70
+ uint64_t lsiintlevel; //LSI Intr Level Register (lab use - 0x78
+ uint64_t lsiintstatus; //LSI Interrupt Status register - 0x80
+ uint64_t reserved3; //Unused / Reserved - 0x88
+ uint64_t phbsecure; //PSI Host Bridge Secure Control reg - 0x90
+ };
+
+
/**
* Register a message queue for an interrupt type
* @param[in] i_msgQ The message queue
OpenPOWER on IntegriCloud