On Thursday, January 30, 2020 at 8:25:16 PM UTC+5:30, Jan Kiszka wrote:
>
> On 30.01.20 15:50, Jan Kiszka wrote:
> > On 30.01.20 11:52, vijai kumar wrote:
> >> Hi All,
> >>
> >> I see that there are two RAM regions defined in ARM linux demos. One
> >> mapped to virtual address 0 and the other 1:1.
> >>
> >> I am not sure what the first region is for. Can anyone please help me
> >> understand that?
> >>
> >> For Example in qemu-arm64-linux-demo.c
> >>
> >> I am not sure what the below region is for.
> >>
> >> /* RAM */ {
> >> .phys_start = 0x7f900000,
> >> .virt_start = 0,
> >> .size = 0x10000,
> >> .flags = JAILHOUSE_MEM_READ |
> >> JAILHOUSE_MEM_WRITE |
> >> JAILHOUSE_MEM_EXECUTE |
> >> JAILHOUSE_MEM_LOADABLE,
> >> },
> >>
> >> Thanks,
> >> Vijai Kumar K
> >>
> > That first region is for bootstrapping. "jailhouse cell linux" loads
> > linux-loader.bin at address 0 in the cell because that is the default
> > start address of cell cores. The loader performs a few additional
> > initializations and then jumps to the kernel start address that is
> > located in the second, larger region.
> >
> > HTH,
> > Jan
> >
>
> Oh, and that 1:1 mapping for the second region is needed for systems
> that do not have an SMMU (quite a few) or where we lack the driver
> upstream (SMMUv2).
>
> Jan
>
>
Ah. I see. Thanks for the explanation Jan. That really helped.
Best,
Vijai Kumar K
> --
> Siemens AG, Corporate Technology, CT RDA IOT SES-DE
> Corporate Competence Center Embedded Linux
>
--
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/78a37635-aa5e-4614-8c26-6dd02dca03c2%40googlegroups.com.