diff --git a/include/libcamera/base/utils.h b/include/libcamera/base/utils.h
index f21c6dc016ece00e9842ad17ae4dd036fb5683c2..a0d3ffc27804d27c6b225d7da8c74feb3c261f3d 100644
--- a/include/libcamera/base/utils.h
+++ b/include/libcamera/base/utils.h
@@ -33,6 +33,9 @@
 
 #endif
 
+#define ALIGN_TO(val, alignment) \
+    (((uintptr_t)(val) + ((alignment) - 1)) & ~((alignment) - 1))
+
 namespace libcamera {
 
 namespace utils {
diff --git a/src/android/metadata/camera_metadata.c b/src/android/metadata/camera_metadata.c
index b86586a7e6857a0920234ea312eb5181b27c3ac0..4fafb54076a4a4be41a31f5ce3bd8c74bf649f59 100644
--- a/src/android/metadata/camera_metadata.c
+++ b/src/android/metadata/camera_metadata.c
@@ -24,6 +24,7 @@
  */
 #define ALOGE(...) fprintf(stderr, LOG_TAG __VA_ARGS__)
 
+#include <libcamera/base/utils.h>
 #include <system/camera_metadata.h>
 #include <camera_metadata_hidden.h>
 
@@ -39,9 +40,6 @@
 #define NOT_FOUND       (-ENOENT)
 #define SN_EVENT_LOG_ID 0x534e4554
 
-#define ALIGN_TO(val, alignment) \
-    (((uintptr_t)(val) + ((alignment) - 1)) & ~((alignment) - 1))
-
 /**
  * A single metadata entry, storing an array of values of a given type. If the
  * array is no larger than 4 bytes in size, it is stored in the data.value[]
