aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorCédric Le Goater <clg@kaod.org>2018-04-03 08:57:23 +0200
committerStewart Smith <stewart@linux.vnet.ibm.com>2018-04-03 03:30:46 -0500
commit19335bbf77d85bcaf74c037efef9f0e7e76cf227 (patch)
treeb3392817721d2b497757b6bff75c5bb3660ed593 /include
parent6bfe04890f094bf38824fc3e445a4fee7aa6bece (diff)
downloadskiboot-19335bbf77d85bcaf74c037efef9f0e7e76cf227.zip
skiboot-19335bbf77d85bcaf74c037efef9f0e7e76cf227.tar.gz
skiboot-19335bbf77d85bcaf74c037efef9f0e7e76cf227.tar.bz2
xive: disable store EOI support
Hardware has limitations which would require to put a sync after each store EOI to make sure the MMIO operations that change the ESB state are ordered. This is a killer for performance and the PHBs do not support the sync. So remove the store EOI for the moment, until hardware is improved. Also, while we are at changing the XIVE source flags, let's fix the settings for the PHB4s which should follow these rules : - SHIFT_BUG for DD10 - STORE_EOI for DD20 and if enabled - TRIGGER_PAGE for DDx0 and if not STORE_EOI Signed-off-by: Cédric Le Goater <clg@kaod.org> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'include')
-rw-r--r--include/xive.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/xive.h b/include/xive.h
index 47dc2c2..acc696a 100644
--- a/include/xive.h
+++ b/include/xive.h
@@ -492,6 +492,9 @@ uint32_t xive_alloc_ipi_irqs(uint32_t chip_id, uint32_t count, uint32_t align);
uint64_t xive_get_notify_port(uint32_t chip_id, uint32_t ent);
uint32_t xive_get_notify_base(uint32_t girq);
+/* XIVE feature flag to de/activate store EOI */
+#define XIVE_STORE_EOI_ENABLED 0
+
/* Internal IRQ flags */
#define XIVE_SRC_TRIGGER_PAGE 0x01 /* Trigger page exist (either separate
* or not, so different from the OPAL