diff mbox series

[v4,41/44] spl: Add C-based runtime detection of SPL

Message ID 20230926141514.2101787-42-sjg@chromium.org
State Accepted
Commit 9031ba824209166444d5abea2064c23015883705
Delegated to: Tom Rini
Headers show
Series spl: Preparation for Universal Payload | expand

Commit Message

Simon Glass Sept. 26, 2023, 2:14 p.m. UTC
The spl_phase() function indicates whether U-Boot is in SPL and before
or after relocation. But sometimes it is useful to check for SPL with
zero code-size impact. Since spl_phase() checks the global_data flags,
it does add a few bytes.

Add a new spl_in_proper() function to check if U-Boot proper is
running, regardless of the relocation status.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v4:
- Add new patch with C-based runtime detection of SPL

 include/spl.h | 10 ++++++++++
 1 file changed, 10 insertions(+)
diff mbox series

Patch

diff --git a/include/spl.h b/include/spl.h
index e958ace2cc62..a3510edecf24 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -132,6 +132,16 @@  static inline enum u_boot_phase spl_phase(void)
 #endif
 }
 
+/* returns true if in U-Boot proper, false if in SPL */
+static inline bool spl_in_proper(void)
+{
+#ifdef CONFIG_SPL_BUILD
+	return false;
+#endif
+
+	return true;
+}
+
 /**
  * spl_prev_phase() - Figure out the previous U-Boot phase
  *