summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/include/usr/hwpf/hwp/occ/occ_common.H7
-rw-r--r--src/usr/hwpf/hwp/occ/occ_common.C11
2 files changed, 17 insertions, 1 deletions
diff --git a/src/include/usr/hwpf/hwp/occ/occ_common.H b/src/include/usr/hwpf/hwp/occ/occ_common.H
index 7aa7d6ae5..d8151776a 100644
--- a/src/include/usr/hwpf/hwp/occ/occ_common.H
+++ b/src/include/usr/hwpf/hwp/occ/occ_common.H
@@ -37,13 +37,18 @@ namespace HBOCC
{
uint32_t version;
uint32_t nestFrequency;
+ uint32_t interruptType;
};
enum
{
- OccHostDataVersion = 1,
+ OccHostDataVersion = 2,
OCC_LIDID = 0x81e00430,
OCC_IBSCOM_RANGE_IN_MB = MEGABYTE,
+
+ // Interrupt Types
+ USE_FSI2HOST_MAILBOX = 0x00000000,
+ USE_PSIHB_COMPLEX = 0x00000001
};
enum occAction_t
diff --git a/src/usr/hwpf/hwp/occ/occ_common.C b/src/usr/hwpf/hwp/occ/occ_common.C
index b2768873d..e059fe23a 100644
--- a/src/usr/hwpf/hwp/occ/occ_common.C
+++ b/src/usr/hwpf/hwp/occ/occ_common.C
@@ -50,6 +50,7 @@
#include <vfs/vfs.H>
#include <util/utillidmgr.H>
+#include <initservice/initserviceif.H>
// Procedures
#include <p8_pba_init.H>
@@ -150,6 +151,16 @@ namespace HBOCC
config_data->version = HBOCC::OccHostDataVersion;
config_data->nestFrequency = nestFreq;
+ // Figure out the interrupt type
+ if( INITSERVICE::spBaseServicesEnabled() )
+ {
+ config_data->interruptType = USE_FSI2HOST_MAILBOX;
+ }
+ else
+ {
+ config_data->interruptType = USE_PSIHB_COMPLEX;
+ }
+
TRACUCOMP( g_fapiTd,
EXIT_MRK"loadHostDataToHomer");
OpenPOWER on IntegriCloud