On 2018-02-12 05:53, bharat gohil wrote: > Hello Jan, > > Please find attached root cell config file.
> /* > * Jailhouse, a Linux-based partitioning hypervisor > * > * Test configuration for XXXXX (2-Cortex-A72, 4-Cortex-A35, 2GB RAM) > * > * Copyright (c) Siemens AG, 2014-2016 > * > * Authors: > * Jan Kiszka <jan.kis...@siemens.com> > * > * This work is licensed under the terms of the GNU GPL, version 2. See > * the COPYING file in the top-level directory. > */ > > #include <jailhouse/types.h> > #include <jailhouse/cell-config.h> > > #define ARRAY_SIZE(a) sizeof(a) / sizeof(a[0]) > > struct { > struct jailhouse_system header; > __u64 cpus[1]; > struct jailhouse_memory mem_regions[8]; You are preparing for 8 regions here, but only 6 are initialized below. First thing to fix. > struct jailhouse_irqchip irqchips[1]; > struct jailhouse_pci_device pci_devices[1]; > } __attribute__((packed)) config = { > .header = { > .signature = JAILHOUSE_SYSTEM_SIGNATURE, > .revision = JAILHOUSE_CONFIG_REVISION, > .hypervisor_memory = { > .phys_start = 0x7C000000, > .size = 0x4000000, > }, > .debug_console = { > .address = 0x11002000, > .size = 0x1000, > .flags = JAILHOUSE_CON1_TYPE_8250 | > JAILHOUSE_CON1_ACCESS_MMIO | > JAILHOUSE_CON1_REGDIST_4 | > JAILHOUSE_CON2_TYPE_ROOTPAGE, > }, > .platform_info = { > .pci_mmconfig_base = 0x2000000, > .pci_mmconfig_end_bus = 0, > .pci_is_virtual = 1, > .arm = { > .gic_version = 2, > .gicd_base = 0x10510000, > .gicc_base = 0x10520000, > .gich_base = 0x10540000, > .gicv_base = 0x10560000, > .maintenance_irq = 25, > }, > }, > .root_cell = { > .name = "XXXXX", > > .cpu_set_size = sizeof(config.cpus), > .num_memory_regions = ARRAY_SIZE(config.mem_regions), > .num_irqchips = ARRAY_SIZE(config.irqchips), > .num_pci_devices = ARRAY_SIZE(config.pci_devices), > > .vpci_irq_base = 108, > }, > }, > > .cpus = { > 0x3F, > }, > > .mem_regions = { > /* CCU */ { > .phys_start = 0x10000000, > .virt_start = 0x10000000, > .size = 0x2000000, > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > JAILHOUSE_MEM_IO | JAILHOUSE_MEM_IO_32, > }, > /* MMIO 1 (permissive) */ { > .phys_start = 0x13000000, > .virt_start = 0x13000000, > .size = 0x4000000, > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > JAILHOUSE_MEM_IO, > }, > /* pinctrl PA */ { > .phys_start = 0x18000000, > .virt_start = 0x18000000, > .size = 0x2000000, > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > JAILHOUSE_MEM_IO | JAILHOUSE_MEM_IO_32, > }, > /* RAM */ { > .phys_start = 0x40000000, > .virt_start = 0x40000000, > .size = 0x02FFFFFF, This switches the region in to sub-page mode, and that may cause this surprising behavior. Just do size + 1, as it is correct. > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > JAILHOUSE_MEM_EXECUTE, > }, > /* RAM*/ /*{ > .phys_start = 0x40EC0000, > .virt_start = 0x40EC0000, > .size = 0x0213FFFF, > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > JAILHOUSE_MEM_EXECUTE, > },*/ > /**THIS HOLE FOR ARM TRUSTED FIRMWARE**/ > > /* RAM*/ { > .phys_start = 0x43040000, > .virt_start = 0x43040000, > .size = 0x38EC0000, > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE | > JAILHOUSE_MEM_EXECUTE, > }, > > /* IVSHMEM shared memory region */ { > .phys_start = 0x7BF00000, > .virt_start = 0x7BF00000, > .size = 0x100000, > .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE, > }, > }, > > .irqchips = { > /* GIC */ { > .address = 0x10510000, > .pin_base = 32, > .pin_bitmap = { > 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff > }, > }, > }, > > .pci_devices = { > { > .type = JAILHOUSE_PCI_TYPE_IVSHMEM, > .bdf = 0x00, > .bar_mask = { > 0xffffff00, 0xffffffff, 0x00000000, > 0x00000000, 0x00000000, 0x00000000, > }, > .shmem_region = 7, Keep this up-to-date when disabling a region. Should be 6 now. > .shmem_protocol = JAILHOUSE_SHMEM_PROTO_VETH, > }, > }, > }; > 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. For more options, visit https://groups.google.com/d/optout.