Hi Jan, Ralf,

On 06/12/2019 03:27 PM, 'Vitaly Andrianov' via Jailhouse wrote:
Hi Ralf,
Thanks you for the quick response.


[skip]


so, I have to implement the corresponding am57xx_init() and
am57xx_cell_exit().

Here is the old mach_cell_exit function, but many of the functions it
uses disappeared in the v0.10 version.

void mach_cell_exit(struct cell *cell)
{
        unsigned int cpu;

        for_each_cpu(cpu, cell->cpu_set) {
                per_cpu(cpu)->cpu_on_entry =
                        mmio_read32(wkupgen_base + OMAP_AUX_CORE_BOOT_0 +
                                    cpu * 4);
                per_cpu(cpu)->cpu_on_context = 0;
                arch_suspend_cpu(cpu);
                arch_reset_cpu(cpu);
        }
}


I have implemented the am57xx unit. At the am57xx_cell_exit() I set cpu_on_entry to omap5_secondary_hyp_startup() - physical address. That was in the working v0.8 mach_cell_exit().
But I'm not sure what shall I do with the remaining 3 calls:

                 per_cpu(cpu)->cpu_on_context = 0;
                 arch_suspend_cpu(cpu);
                 arch_reset_cpu(cpu);

When I execute "jailhouse cell destroy 1" the kernel cannot bring cpu1 online and it still in the hypervisor's WFI loop.

Any advise?

Thanks,
-Vitaly


[skip]



In v0.10 there is no arch_suspend_cpu(). Does my am57xx_cell_exit() need to call some equivalent of that function @v0.10? If yes, than what is it?

Thanks,
-Vitaly


   Ralf


Thanks,
-Vitaly





--
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/eae01b0c-3e7b-04ac-4ae0-24c407e85bd1%40ti.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to