diff --git a/src/libcamera/pipeline/raspberrypi/dma_heaps.cpp b/src/libcamera/pipeline/raspberrypi/dma_heaps.cpp
index 739f05d3d4d8..500f1eac2eb8 100644
--- a/src/libcamera/pipeline/raspberrypi/dma_heaps.cpp
+++ b/src/libcamera/pipeline/raspberrypi/dma_heaps.cpp
@@ -45,9 +45,14 @@ int DmaHeap::open()
 {
 	dmaHeapHandle_ = ::open(DMA_HEAP_CMA_NAME, O_RDWR, 0);
 	if (dmaHeapHandle_ == -1) {
+		LOG(RPI, Error) << "Could not open dmaHeap device "
+				<< DMA_HEAP_CMA_NAME << ": "
+				<< strerror(errno);
 		dmaHeapHandle_ = ::open(DMA_HEAP_CMA_ALT_NAME, O_RDWR, 0);
 		if (dmaHeapHandle_ == -1) {
-			LOG(RPI, Error) << "Could not open dmaHeap device";
+			LOG(RPI, Error) << "Could not open dmaHeap device "
+					<< DMA_HEAP_CMA_ALT_NAME << ": "
+					<< strerror(errno);
 			return dmaHeapHandle_;
 		}
 	}
