Hi Prabhakar, Just wanted to say "thank you" for sharing your experience - your messages have been helping me to get non-root Linux cell configuration.
Best Regards, Yelena On Monday, June 6, 2022 at 6:42:26 PM UTC+1 [email protected] wrote: > On Thu, Jun 2, 2022 at 9:41 AM Lad, Prabhakar > <[email protected]> wrote: > > > > On Tue, May 31, 2022 at 8:13 PM Lad, Prabhakar > > <[email protected]> wrote: > > > > > > On Tue, May 31, 2022 at 1:52 PM Prabhakar Lad > > > <[email protected]> wrote: > > > > > > > > > > > <snip> > > > > * Looking at some of the linux inmate configs there are two regions > of RAM specified is this a strict requirement? > > > > * For the inmate RAM should the virt_start = CONFIG_INMATE_BASE? > > > > > > > After updating my memory layout, i.e. after creating one region for > > > loading the linux another for DDR RAM and lastly the communication > > > region in my inmate I no longer see the unhandled read error. > > > > > > /* linux-loader space */ { > > > .phys_start = 0x59000000, > > > .virt_start = 0x0, > > > .size = 0x6400000, > > > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > > > JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_LOADABLE, > > > }, > > > /* RAM */ { > > > .phys_start = 0x5F400000, > > > .virt_start = 0x5F400000, > > > .size = 0x19C00000, > > > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > > > JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA | > > > JAILHOUSE_MEM_LOADABLE, > > > }, > > > /* communication region */ { > > > .virt_start = 0x80000000, > > > .size = 0x00001000, > > > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > > > JAILHOUSE_MEM_COMM_REGION, > > > }, > > > > > > I am able to load the linux on one of the CPUs but I cannot see any > > > console output on the serial. > > > > > > root@hihope-rzg2m:~# jailhouse cell linux > > > renesas-r8a774a1-linux-demo.cell Image.gz -d > > > inmate-r8a774a1-hihope.dtb -c "clk_ignore_unused rootwait rw" > > > Started cell "renesas-r8a774a1-linux-demo" > > > root@hihope-rzg2m:~# > > > root@hihope-rzg2m:~# jailhouse cell list > > > ID Name State Assigned CPUs > > > Failed CPUs > > > 0 Renesas HopeRun HiHope RZ/G2Mrunning 0,2-5 > > > 1 renesas-r8a774a1-linux-demorunning 1 > > > root@hihope-rzg2m:~# > > > > > > Any pointers on debugging this? (jailhouse cell stat 1 doesn't seem to > > > updating the number so I assume it's panicked somewhere) > > > > > I was able to get the console output on the root cell for debugging by > > setting "console=jailhouse earlycon..." > > > > I'm seeing that when trying to initialize the GIC its causing a panic: > > > > [ 0.000000] ------------[ cut here ]------------ > > [ 0.000000] unable to map gic dist registers > > [ 0.000000] WARNING: CPU: 0 PID: 0 at > > drivers/irqchip/irq-gic.c:1393 gic_of_setup+0xa8/0xf0 > > [ 0.000000] Modules linked in: > > [ 0.000000] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W > > 5.10.31+ #37 > > [ 0.000000] Hardware name: Jailhouse cell on HopeRun HiHope RZ/G2M > > R8A774A1 (DT) > > [ 0.000000] pstate: 60000085 (nZCv daIf -PAN -UAO -TCO BTYPE=--) > > [ 0.000000] pc : gic_of_setup+0xa8/0xf0 > > [ 0.000000] lr : gic_of_setup+0xa8/0xf0 > > [ 0.000000] sp : ffff800011203dd0 > > [ 0.000000] x29: ffff800011203dd0 x28: ffff800010f936c0 > > [ 0.000000] x27: ffff80001120cc18 x26: ffff80001120cc18 > > [ 0.000000] x25: 0000000000000000 x24: ffff800011209000 > > [ 0.000000] x23: ffff000077c36460 x22: ffff80001120c000 > > [ 0.000000] x21: ffff800010f93000 x20: ffff000077c36460 > > [ 0.000000] x19: ffff80001120cc18 x18: ffffffffffffffff > > [ 0.000000] x17: 00000000000000c0 x16: fffffdffffe00340 > > [ 0.000000] x15: ffff800011209948 x14: 0000000000000056 > > [ 0.000000] x13: ffff800011203a70 x12: 00000000ffffffea > > [ 0.000000] x11: ffff8000112914c0 x10: ffff800011279480 > > [ 0.000000] x9 : ffff8000112794d8 x8 : 0000000000017fe8 > > [ 0.000000] x7 : c0000000ffffefff x6 : 0000000000000001 > > [ 0.000000] x5 : 0000000000000000 x4 : 0000000000000000 > > [ 0.000000] x3 : 00000000ffffffff x2 : ffff800011221450 > > [ 0.000000] x1 : 0000000000000000 x0 : 0000000000000000 > > [ 0.000000] Call trace: > > [ 0.000000] gic_of_setup+0xa8/0xf0 > > [ 0.000000] gic_of_init+0x88/0x390 > > [ 0.000000] of_irq_init+0x194/0x33c > > [ 0.000000] irqchip_init+0x18/0x40 > > [ 0.000000] init_IRQ+0xc8/0xfc > > [ 0.000000] start_kernel+0x2ec/0x4f8 > > [ 0.000000] ---[ end trace f68728a0d3053b52 ]--- > > [ 0.000000] OF: of_irq_init: children remain, but no parents > > [ 0.000000] Kernel panic - not syncing: No interrupt controller found. > > [ 0.000000] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W > > 5.10.31+ #37 > > [ 0.000000] Hardware name: Jailhouse cell on HopeRun HiHope RZ/G2M > > R8A774A1 (DT) > > [ 0.000000] Call trace: > > [ 0.000000] dump_backtrace+0x0/0x1c0 > > [ 0.000000] show_stack+0x18/0x68 > > [ 0.000000] dump_stack+0xd8/0x134 > > [ 0.000000] panic+0x188/0x3a8 > > [ 0.000000] init_IRQ+0xe0/0xfc > > [ 0.000000] start_kernel+0x2ec/0x4f8 > > [ 0.000000] ---[ end Kernel panic - not syncing: No interrupt > > controller found. ]--- > > > I was able to resolve the issue by fixing the DT. > > Cheers, > Prabhakar > > > I have the below GIC node in the inmate dts: > > > > gic: interrupt-controller@f1010000 { > > compatible = "arm,gic-400"; > > #interrupt-cells = <3>; > > #address-cells = <0>; > > interrupt-controller; > > reg = <0x0 0xf1010000 0 0x1000>, > > <0x0 0xf1020000 0 0x20000>, > > <0x0 0xf1040000 0 0x20000>, > > <0x0 0xf1060000 0 0x20000>; > > interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_HIGH)>; > > }; > > > > In the inmate cell file for GIC configuration, do we need to enable > > pin_bitmap mask just for the peripherals which are only enabled in DT > > (For now I have the pin_bitmap mask in the inmate cell same as the > > root cell) ? > > > > Cheers, > > Prabhakar > -- 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/22820838-b99f-4a2e-9c87-d634c7d376e5n%40googlegroups.com.
