Re: Jetson TX2 - access to peripherals from inmate
On 02/04/2022 10:14, Jan Kiszka wrote: On 25.03.22 16:11, 'johannes lex' via Jailhouse wrote: Hello everybody, i'm investigating the jailhouse hypervisor for a research project of an automotive company. As a first step, i want to set up the Jetson TX2 Board and add an inmate which toggels one GPIO Pin. I used the VM from the ERIKA V3 (https://www.erika-enterprise.com/index.php/download/virtual-machines.html) as a base development platform. So far, Jailhouse is running and my configs seem to work. However, I can't access (not even read) the registers of the GPIO or any other peripheral which i assign to my cell, except the already configured UART. The cell config and assignment of the registers themself seems to work: i can, for example, read the register 0x02210890 from the Linux host before creating the cell. After creating the cell, a read attempt from the Linux host leads to a system crash. Unfortunately, i can't read that register from the inmate as well :/ Do you have a clue why i can't read the register in my setup? I've attached my configs and the source code for the bare metal application of the inmate. Or do you have any examples in which you access the GPIOs (or other peripherals) of the Jetson TX2 from an inmate which you could share? Already checked your configs for undesired overlaps (jailhouse config check)? Looking at the jetson-tx2-demo.c config you shared, the GPIO range is exclusively assigned from the root cell to the non-root demo. So, any further accesses from the Linux root cell should indeed trigger a violation. But accesses from the demo cell must be possible. However, I'm not seeing any violation reports regarding that cell. We had a offlist converstation - map_range in inmate + ROOTSHARED solved the issue. Thanks Ralf Jan -- Ralf Ramsauer PGP: 0xC85252CC -- 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 jailhouse-dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jailhouse-dev/bd0cbbc1-7abb-8924-5228-da22e2aa51c5%40vmexit.de.
Re: [PATCH] configs: arm64: resolve overlapping memory regions in k3-am654-idk cell
On 24.03.22 02:23, 'Matt Ranostay' via Jailhouse wrote: > There were several memory regions overlapping in current k3-am654-idk > configuration including GICD/GICR regions for the interrupt controller. > > These issues have been resolved by changing region sizes and adding > addition regions to avoid conflicts. > > Signed-off-by: Matt Ranostay > --- > configs/arm64/k3-am654-idk.c | 20 +--- > 1 file changed, 17 insertions(+), 3 deletions(-) > > diff --git a/configs/arm64/k3-am654-idk.c b/configs/arm64/k3-am654-idk.c > index ddd770fe..4e6857f8 100644 > --- a/configs/arm64/k3-am654-idk.c > +++ b/configs/arm64/k3-am654-idk.c > @@ -18,7 +18,7 @@ > struct { > struct jailhouse_system header; > __u64 cpus[1]; > - struct jailhouse_memory mem_regions[18]; > + struct jailhouse_memory mem_regions[20]; > struct jailhouse_irqchip irqchips[5]; > struct jailhouse_pci_device pci_devices[1]; > } __attribute__((packed)) config = { > @@ -112,7 +112,21 @@ struct { > /* Most MAIN domain peripherals */ { > .phys_start = 0x0100, > .virt_start = 0x0100, > - .size = 0x0af04000, > + .size = 0x0080, > + .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > + JAILHOUSE_MEM_IO, > + }, > + { > + .phys_start = 0x0181, > + .virt_start = 0x0181, > + .size = 0x0007, > + .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > + JAILHOUSE_MEM_IO, > + }, > + { > + .phys_start = 0x018a, > + .virt_start = 0x018a, > + .size = 0xa664000, > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > JAILHOUSE_MEM_IO, > }, > @@ -140,7 +154,7 @@ struct { > /* MCUSS */ { > .phys_start = 0x4204, > .virt_start = 0x4204, > - .size = 0x03ac3000, > + .size = 0x030c, > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > JAILHOUSE_MEM_IO, > }, Thanks, rebased and applied over next. Jan -- 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 jailhouse-dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jailhouse-dev/6f2a091c-4617-4ffc-86c4-0c9b121349be%40web.de.
Re: Jetson TX2 - access to peripherals from inmate
On 25.03.22 16:11, 'johannes lex' via Jailhouse wrote: > Hello everybody, > > i'm investigating the jailhouse hypervisor for a research project of an > automotive company. > > As a first step, i want to set up the Jetson TX2 Board and add an inmate > which toggels one GPIO Pin. I used the VM from the ERIKA V3 > (https://www.erika-enterprise.com/index.php/download/virtual-machines.html) > as a base development platform. > So far, Jailhouse is running and my configs seem to work. > > However, I can't access (not even read) the registers of the GPIO or any > other peripheral which i assign to my cell, except the already > configured UART. > The cell config and assignment of the registers themself seems to work: > i can, for example, read the register 0x02210890 from the Linux host > before creating the cell. After creating the cell, a read attempt from > the Linux host leads to a system crash. > Unfortunately, i can't read that register from the inmate as well :/ > > Do you have a clue why i can't read the register in my setup? I've > attached my configs and the source code for the bare metal application > of the inmate. > > Or do you have any examples in which you access the GPIOs (or other > peripherals) of the Jetson TX2 from an inmate which you could share? Already checked your configs for undesired overlaps (jailhouse config check)? Looking at the jetson-tx2-demo.c config you shared, the GPIO range is exclusively assigned from the root cell to the non-root demo. So, any further accesses from the Linux root cell should indeed trigger a violation. But accesses from the demo cell must be possible. However, I'm not seeing any violation reports regarding that cell. Jan -- 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 jailhouse-dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jailhouse-dev/27e635ef-500f-6f19-a461-9a5e88d12c8d%40web.de.