diff --git a/utils/ipc/generators/mojom_libcamera_generator.py b/utils/ipc/generators/mojom_libcamera_generator.py
index effdfed6..25cacf9a 100644
--- a/utils/ipc/generators/mojom_libcamera_generator.py
+++ b/utils/ipc/generators/mojom_libcamera_generator.py
@@ -129,6 +129,10 @@ def GetAllAttrs(element):
 
 def NeedsControlSerializer(element):
     types = GetAllTypes(element)
+    if 'x:ControlList' in types:
+        raise Exception(f'Unknown type "ControlList" in {element.mojom_name}, did you mean "libcamera.ControlList"?')
+    if 'x:ControlInfoMap' in types:
+        raise Exception(f'Unknown type "ControlInfoMap" in {element.mojom_name}, did you mean "libcamera.ControlInfoMap"?')
     return "ControlList" in types or "ControlInfoMap" in types
 
 def HasFd(element):
