[Skiboot] [PATCH v6 10/22] fadump: Define FADUMP structure
Vasant Hegde
hegdevasant at linux.vnet.ibm.com
Wed Nov 28 22:02:32 AEDT 2018
This structure is shared between OPAL and payload. During fadump registration
payload will use this structure to pass kernel memory reservation details to
OPAL. OPAL will use this structure to fill MDST, MDDT table. After fadump,
OPAL uses MDRT table to fill this structure and passes this to payload via
device tree.
Signed-off-by: Vasant Hegde <hegdevasant at linux.vnet.ibm.com>
---
include/opal-api.h | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/include/opal-api.h b/include/opal-api.h
index 5f397c8e6..9cb952e43 100644
--- a/include/opal-api.h
+++ b/include/opal-api.h
@@ -1314,6 +1314,37 @@ enum {
OPAL_PCI_P2P_TARGET = 1,
};
+/*
+ * FADUMP memory region ID usable by kernel
+ * 0x80 - 0xff -> Payload
+ */
+#define FADUMP_REGION_HOST_START 0x80
+#define FADUMP_REGION_HOST_END 0xff
+
+/*
+ * fadump section details. This structure is shared between OPAL and payload.
+ * During fadump registration payload will use this structure to pass kernel
+ * memory reservation details to OPAL. OPAL will use this structure to fill
+ * MDST, MDDT table. After fadump, OPAL uses MDRT table to fill this structure.
+ * And passes this to payload via device tree.
+ */
+struct fadump_section {
+ u8 source_type; /* FADUMP_REGION_* */
+ u8 reserved[7];
+ u64 source_addr;
+ u64 source_size;
+ u64 dest_addr;
+ u64 dest_size;
+} __packed;
+
+struct fadump {
+ u16 fadump_section_size; /* sizeof(struct fadump_section) */
+ u16 section_count;
+ u32 crashing_cpu;
+ u64 reserved;
+ struct fadump_section section[];
+};
+
#endif /* __ASSEMBLY__ */
#endif /* __OPAL_API_H */
--
2.14.3
More information about the Skiboot
mailing list