refactor(mm): return pointer from `arch_mm_table_from_pte`

Change-Id: I371f1b40a3d36d835e67198de203023bd0a32960
Signed-off-by: Karl Meakin <karl.meakin@arm.com>
diff --git a/inc/hf/addr.h b/inc/hf/addr.h
index 876b6ee..cd4e0bb 100644
--- a/inc/hf/addr.h
+++ b/inc/hf/addr.h
@@ -170,6 +170,11 @@
 	return (void *)va_addr(va);
 }
 
+static inline void *ptr_from_pa(paddr_t pa)
+{
+	return ptr_from_va(va_from_pa(pa));
+}
+
 /**
  * Advances a virtual address.
  */
diff --git a/inc/hf/arch/mm.h b/inc/hf/arch/mm.h
index 0ca0170..0c78561 100644
--- a/inc/hf/arch/mm.h
+++ b/inc/hf/arch/mm.h
@@ -99,9 +99,9 @@
 paddr_t arch_mm_block_from_pte(pte_t pte, mm_level_t level);
 
 /**
- * Extracts the address of the table referenced by the PTE.
+ * Extracts the table referenced by the PTE.
  */
-paddr_t arch_mm_table_from_pte(pte_t pte, mm_level_t level);
+struct mm_page_table *arch_mm_table_from_pte(pte_t pte, mm_level_t level);
 
 /**
  * Extracts the attributes of the PTE.