diff --git a/payloads/libpayload/include/delay.h b/payloads/libpayload/include/delay.h
new file mode 100644
index 0000000..126bee6
--- /dev/null
+++ b/payloads/libpayload/include/delay.h
@@ -0,0 +1,59 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+
+#ifndef LIBPAYLOAD_DELAY_H
+#define LIBPAYLOAD_DELAY_H
+
+#include <stdint.h>
+
+#define NSECS_PER_SEC 1000000000
+#define USECS_PER_SEC 1000000
+#define MSECS_PER_SEC 1000
+#define NSECS_PER_MSEC (NSECS_PER_SEC / MSECS_PER_SEC)
+#define NSECS_PER_USEC (NSECS_PER_SEC / USECS_PER_SEC)
+#define USECS_PER_MSEC (USECS_PER_SEC / MSECS_PER_SEC)
+
+unsigned int get_cpu_speed(void);
+
+void arch_ndelay(uint64_t n);
+
+/**
+ * Delay for a specified number of nanoseconds.
+ *
+ * @param ns Number of nanoseconds to delay for.
+ */
+static inline void ndelay(unsigned int ns)
+{
+	arch_ndelay((uint64_t)ns);
+}
+
+/**
+ * Delay for a specified number of microseconds.
+ *
+ * @param us Number of microseconds to delay for.
+ */
+static inline void udelay(unsigned int us)
+{
+	arch_ndelay((uint64_t)us * NSECS_PER_USEC);
+}
+
+/**
+ * Delay for a specified number of milliseconds.
+ *
+ * @param ms Number of milliseconds to delay for.
+ */
+static inline void mdelay(unsigned int ms)
+{
+	arch_ndelay((uint64_t)ms * NSECS_PER_MSEC);
+}
+
+/**
+ * Delay for a specified number of seconds.
+ *
+ * @param s Number of seconds to delay for.
+ */
+static inline void delay(unsigned int s)
+{
+	arch_ndelay((uint64_t)s * NSECS_PER_SEC);
+}
+
+#endif /* LIBPAYLOAD_DELAY_H */
diff --git a/payloads/libpayload/include/libpayload.h b/payloads/libpayload/include/libpayload.h
index 1587118..19ba671 100644
--- a/payloads/libpayload/include/libpayload.h
+++ b/payloads/libpayload/include/libpayload.h
@@ -68,6 +68,7 @@
 #include <sysinfo.h>
 #include <pci.h>
 #include <archive.h>
+#include <delay.h>
 
 #define BIT(x)	(1ul << (x))
 
@@ -510,54 +511,12 @@
 
 /* Timer functions. */
 /* Defined by each architecture. */
-unsigned int get_cpu_speed(void);
 uint64_t timer_hz(void);
 uint64_t timer_raw_value(void);
 uint64_t timer_us(uint64_t base);
-void arch_ndelay(uint64_t n);
 /* Generic. */
 
 /**
- * Delay for a specified number of nanoseconds.
- *
- * @param ns Number of nanoseconds to delay for.
- */
-static inline void ndelay(unsigned int ns)
-{
-	arch_ndelay((uint64_t)ns);
-}
-
-/**
- * Delay for a specified number of microseconds.
- *
- * @param us Number of microseconds to delay for.
- */
-static inline void udelay(unsigned int us)
-{
-	arch_ndelay((uint64_t)us * NSECS_PER_USEC);
-}
-
-/**
- * Delay for a specified number of milliseconds.
- *
- * @param ms Number of milliseconds to delay for.
- */
-static inline void mdelay(unsigned int ms)
-{
-	arch_ndelay((uint64_t)ms * NSECS_PER_MSEC);
-}
-
-/**
- * Delay for a specified number of seconds.
- *
- * @param s Number of seconds to delay for.
- */
-static inline void delay(unsigned int s)
-{
-	arch_ndelay((uint64_t)s * NSECS_PER_SEC);
-}
-
-/**
  * @defgroup readline Readline functions
  * This interface provides a simple implementation of the standard readline()
  * and getline() functions. They read a line of input from the console.
diff --git a/payloads/libpayload/include/stddef.h b/payloads/libpayload/include/stddef.h
index 9003ac9..81aaa17 100644
--- a/payloads/libpayload/include/stddef.h
+++ b/payloads/libpayload/include/stddef.h
@@ -26,11 +26,4 @@
 typedef __SIZE_TYPE__ ssize_t;
 #undef unsigned
 
-#define NSECS_PER_SEC 1000000000
-#define USECS_PER_SEC 1000000
-#define MSECS_PER_SEC 1000
-#define NSECS_PER_MSEC (NSECS_PER_SEC / MSECS_PER_SEC)
-#define NSECS_PER_USEC (NSECS_PER_SEC / USECS_PER_SEC)
-#define USECS_PER_MSEC (USECS_PER_SEC / MSECS_PER_SEC)
-
 #endif
