aboutsummaryrefslogtreecommitdiffstats
path: root/roms/u-boot/include/handoff.h
diff options
context:
space:
mode:
Diffstat (limited to 'roms/u-boot/include/handoff.h')
-rw-r--r--roms/u-boot/include/handoff.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/roms/u-boot/include/handoff.h b/roms/u-boot/include/handoff.h
new file mode 100644
index 000000000..070a79c1b
--- /dev/null
+++ b/roms/u-boot/include/handoff.h
@@ -0,0 +1,47 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Passing basic information from SPL to U-Boot proper
+ *
+ * Copyright 2018 Google, Inc
+ */
+
+#ifndef __HANDOFF_H
+#define __HANDOFF_H
+
+#if CONFIG_IS_ENABLED(HANDOFF)
+
+#include <asm/handoff.h>
+
+/**
+ * struct spl_handoff - information passed from SPL to U-Boot proper
+ *
+ * @ram_size: Value to use for gd->ram_size
+ */
+struct spl_handoff {
+ struct arch_spl_handoff arch;
+ u64 ram_size;
+ struct {
+ u64 start;
+ u64 size;
+ } ram_bank[CONFIG_NR_DRAM_BANKS];
+};
+
+void handoff_save_dram(struct spl_handoff *ho);
+void handoff_load_dram_size(struct spl_handoff *ho);
+void handoff_load_dram_banks(struct spl_handoff *ho);
+
+/**
+ * handoff_arch_save() - Save arch-specific info into the handoff area
+ *
+ * This is defined to an empty function by default, but arch-specific code can
+ * define it to write to spi_handoff->arch. It is called from
+ * write_spl_handoff().
+ *
+ * @ho: Handoff area to fill in
+ * @return 0 if OK, -ve on error
+ */
+int handoff_arch_save(struct spl_handoff *ho);
+
+#endif
+
+#endif