The SMMU driver needs access to guest paging structures, so they need to
be initialized before we can initialize the driver.
---
 hypervisor/setup.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/hypervisor/setup.c b/hypervisor/setup.c
index e3b1b3c8..c4032f5b 100644
--- a/hypervisor/setup.c
+++ b/hypervisor/setup.c
@@ -174,13 +174,6 @@ static void init_late(void)
                return;
        }
 
-       for_each_unit(unit) {
-               printk("Initializing unit: %s\n", unit->name);
-               error = unit->init();
-               if (error)
-                       return;
-       }
-
        for_each_mem_region(mem, root_cell.config, n) {
                if (JAILHOUSE_MEMORY_IS_SUBPAGE(mem))
                        error = mmio_subpage_register(&root_cell, mem);
@@ -190,6 +183,13 @@ static void init_late(void)
                        return;
        }
 
+       for_each_unit(unit) {
+               printk("Initializing unit: %s\n", unit->name);
+               error = unit->init();
+               if (error)
+                       return;
+       }
+
        config_commit(&root_cell);
 
        paging_dump_stats("after late setup");
-- 
2.17.1

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jailhouse-dev/20190702143607.16525-6-p-yadav1%40ti.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to