Index: kernel/arch/ppc32/src/mm/page.c
===================================================================
--- kernel/arch/ppc32/src/mm/page.c	(revision ae318d3535cba06a6996f270db31a961fae402ad)
+++ kernel/arch/ppc32/src/mm/page.c	(revision 00eace30da787ce4c1daedfb63575ce441cf65d9)
@@ -38,4 +38,8 @@
 #include <align.h>
 #include <config.h>
+#include <ddi/ddi.h>
+
+/** Physical memory area for devices. */
+static parea_t dev_area;
 
 void page_arch_init(void)
@@ -64,8 +68,9 @@
 }
 
-void hw_area(uintptr_t *physaddr, pfn_t *frames)
+void hw_area(void)
 {
-	*physaddr = end_frame;
-	*frames = ADDR2PFN(0xffffffff - end_frame);
+	dev_area.pbase = end_frame;
+	dev_area.frames = SIZE2FRAMES(0xffffffff - end_frame);
+	ddi_parea_register(&dev_area);
 }
 
