From: Jan Kiszka <[email protected]> At this chance, the inmate demo is moved to the second core for jetson-tx1, miriac, ultra96 and zynqmp-zcu102.
Signed-off-by: Jan Kiszka <[email protected]> [ralf: rebase to next, catch missing configs] Signed-off-by: Ralf Ramsauer <[email protected]> --- configs/arm64/amd-seattle-inmate-demo.c | 8 ++- configs/arm64/amd-seattle-linux-demo.c | 11 +++- configs/arm64/amd-seattle.c | 29 +++++++++- configs/arm64/espressobin-inmate-demo.c | 10 ++-- configs/arm64/espressobin-linux-demo.c | 10 ++-- configs/arm64/espressobin.c | 13 +++-- configs/arm64/foundation-v8-inmate-demo.c | 8 ++- configs/arm64/foundation-v8-linux-demo.c | 11 +++- configs/arm64/foundation-v8.c | 17 +++++- configs/arm64/hikey-inmate-demo.c | 10 ++-- configs/arm64/hikey-linux-demo.c | 13 +++-- configs/arm64/hikey.c | 31 +++++++++-- configs/arm64/imx8dxl-inmate-demo.c | 8 ++- configs/arm64/imx8dxl.c | 13 +++-- configs/arm64/imx8mm-inmate-demo.c | 8 ++- configs/arm64/imx8mm-linux-demo.c | 11 +++- configs/arm64/imx8mm.c | 19 +++++-- configs/arm64/imx8mn-inmate-demo.c | 8 ++- configs/arm64/imx8mn-linux-demo.c | 11 +++- configs/arm64/imx8mn.c | 19 +++++-- configs/arm64/imx8mp-inmate-demo.c | 8 ++- configs/arm64/imx8mp-linux-demo.c | 11 +++- configs/arm64/imx8mp.c | 19 +++++-- configs/arm64/imx8mq-inmate-demo.c | 8 ++- configs/arm64/imx8mq-linux-demo.c | 11 +++- configs/arm64/imx8mq.c | 19 +++++-- configs/arm64/imx8qm-inmate-demo.c | 8 ++- configs/arm64/imx8qm-linux-demo.c | 11 +++- configs/arm64/imx8qm.c | 25 +++++++-- configs/arm64/jetson-tx1-inmate-demo.c | 8 ++- configs/arm64/jetson-tx1-linux-demo.c | 11 +++- configs/arm64/jetson-tx1.c | 17 +++++- configs/arm64/jetson-tx2-inmate-demo.c | 8 ++- configs/arm64/jetson-tx2.c | 17 +++++- configs/arm64/k3-am625-sk-inmate-demo.c | 8 ++- configs/arm64/k3-am625-sk-linux-demo.c | 14 ++++- configs/arm64/k3-am625-sk.c | 17 +++++- configs/arm64/k3-am654-idk-linux-demo.c | 11 +++- configs/arm64/k3-am654-idk.c | 17 +++++- configs/arm64/k3-am654-inmate-demo.c | 8 ++- configs/arm64/k3-j7200-evm-inmate-demo.c | 8 ++- configs/arm64/k3-j7200-evm-linux-demo.c | 8 ++- configs/arm64/k3-j7200-evm.c | 11 +++- configs/arm64/k3-j721e-evm-inmate-demo.c | 8 ++- configs/arm64/k3-j721e-evm-linux-demo.c | 8 ++- configs/arm64/k3-j721e-evm.c | 11 +++- configs/arm64/ls1028a-rdb-inmate-demo.c | 8 ++- configs/arm64/ls1028a-rdb-linux-demo.c | 8 ++- configs/arm64/ls1028a-rdb.c | 13 +++-- configs/arm64/ls1043a-rdb-dpaa-linux-demo.c | 11 +++- configs/arm64/ls1043a-rdb-inmate-demo.c | 8 ++- configs/arm64/ls1043a-rdb-linux-demo.c | 11 +++- configs/arm64/ls1043a-rdb.c | 19 +++++-- configs/arm64/ls1046a-rdb-inmate-demo.c | 8 ++- configs/arm64/ls1046a-rdb-linux-demo.c | 11 +++- configs/arm64/ls1046a-rdb.c | 19 +++++-- configs/arm64/ls1088a-rdb-inmate-demo.c | 8 ++- configs/arm64/ls1088a-rdb-linux-demo.c | 11 +++- configs/arm64/ls1088a-rdb.c | 29 +++++++++- configs/arm64/ls2088a-rdb-inmate-demo.c | 8 ++- configs/arm64/ls2088a-rdb-linux-demo.c | 11 +++- configs/arm64/ls2088a-rdb.c | 29 +++++++++- configs/arm64/macchiatobin-inmate-demo.c | 10 ++-- configs/arm64/macchiatobin-linux-demo.c | 13 +++-- configs/arm64/macchiatobin.c | 19 +++++-- .../arm64/miriac-sbc-ls1046a-inmate-demo.c | 8 ++- configs/arm64/miriac-sbc-ls1046a-linux-demo.c | 11 +++- configs/arm64/miriac-sbc-ls1046a.c | 17 +++++- configs/arm64/pine64-plus-inmate-demo.c | 8 ++- configs/arm64/pine64-plus-linux-demo.c | 11 +++- configs/arm64/pine64-plus.c | 17 +++++- configs/arm64/qemu-arm64-inmate-demo.c | 10 ++-- configs/arm64/qemu-arm64-linux-demo.c | 13 +++-- configs/arm64/qemu-arm64-zephyr-demo.c | 11 +++- configs/arm64/qemu-arm64.c | 55 +++++++++++++++++-- configs/arm64/rpi4-inmate-demo.c | 10 ++-- configs/arm64/rpi4-linux-demo.c | 13 +++-- configs/arm64/rpi4.c | 19 +++++-- configs/arm64/ultra96-inmate-demo.c | 10 ++-- configs/arm64/ultra96-linux-demo.c | 13 +++-- configs/arm64/ultra96.c | 19 +++++-- configs/arm64/zynqmp-zcu102-inmate-demo.c | 10 ++-- configs/arm64/zynqmp-zcu102-linux-demo-2.c | 10 ++-- configs/arm64/zynqmp-zcu102-linux-demo.c | 13 +++-- configs/arm64/zynqmp-zcu102.c | 19 +++++-- 85 files changed, 843 insertions(+), 286 deletions(-) diff --git a/configs/arm64/amd-seattle-inmate-demo.c b/configs/arm64/amd-seattle-inmate-demo.c index d920804c..e74cc21a 100644 --- a/configs/arm64/amd-seattle-inmate-demo.c +++ b/configs/arm64/amd-seattle-inmate-demo.c @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -27,7 +27,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 0, .num_pci_devices = 0, @@ -41,7 +41,9 @@ struct { }, .cpus = { - 0x10, + { + .phys_id = 0x0200, + }, }, .mem_regions = { diff --git a/configs/arm64/amd-seattle-linux-demo.c b/configs/arm64/amd-seattle-linux-demo.c index f4ed12d7..2b42e640 100644 --- a/configs/arm64/amd-seattle-linux-demo.c +++ b/configs/arm64/amd-seattle-linux-demo.c @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[12]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[1]; @@ -29,7 +29,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -43,7 +43,12 @@ struct { }, .cpus = { - 0xc0, + { + .phys_id = 0x0300, + }, + { + .phys_id = 0x0301, + }, }, .mem_regions = { diff --git a/configs/arm64/amd-seattle.c b/configs/arm64/amd-seattle.c index 6409d934..2d764b8d 100644 --- a/configs/arm64/amd-seattle.c +++ b/configs/arm64/amd-seattle.c @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[8]; struct jailhouse_memory mem_regions[20]; struct jailhouse_irqchip irqchips[3]; struct jailhouse_pci_device pci_devices[3]; @@ -52,7 +52,7 @@ struct { .root_cell = { .name = "amd-seattle", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -60,7 +60,30 @@ struct { }, .cpus = { - 0xff, + { + .phys_id = 0x0000, + }, + { + .phys_id = 0x0001, + }, + { + .phys_id = 0x0100, + }, + { + .phys_id = 0x0101, + }, + { + .phys_id = 0x0200, + }, + { + .phys_id = 0x0201, + }, + { + .phys_id = 0x0300, + }, + { + .phys_id = 0x0301, + }, }, .mem_regions = { diff --git a/configs/arm64/espressobin-inmate-demo.c b/configs/arm64/espressobin-inmate-demo.c index 921b93b0..32cdc48e 100644 --- a/configs/arm64/espressobin-inmate-demo.c +++ b/configs/arm64/espressobin-inmate-demo.c @@ -4,7 +4,7 @@ * Configuration for demo inmate on Marvell ESPRESSObin board: * 1 CPU, 64K RAM, 1 serial port * - * Copyright (c) Siemens AG, 2017 + * Copyright (c) Siemens AG, 2017-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -27,7 +27,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 0, .num_pci_devices = 0, @@ -41,7 +41,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/espressobin-linux-demo.c b/configs/arm64/espressobin-linux-demo.c index c326b6d5..3a7dbb96 100644 --- a/configs/arm64/espressobin-linux-demo.c +++ b/configs/arm64/espressobin-linux-demo.c @@ -4,7 +4,7 @@ * Configuration for linux-demo inmate on ESPRESSObin: * 1 CPU, 128M RAM, serial port * - * Copyright (c) Siemens AG, 2014-2017 + * Copyright (c) Siemens AG, 2014-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -29,7 +29,7 @@ struct { .name = "ESPRESSObin-linux-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -45,7 +45,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/espressobin.c b/configs/arm64/espressobin.c index 1b75f6d7..92ecac98 100644 --- a/configs/arm64/espressobin.c +++ b/configs/arm64/espressobin.c @@ -3,7 +3,7 @@ * * Configuration for Marvell ESPRESSObin board * - * Copyright (c) Siemens AG, 2017 + * Copyright (c) Siemens AG, 2017-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -19,7 +19,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[7]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -54,7 +54,7 @@ struct { .root_cell = { .name = "ESPRESSObin", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -64,7 +64,12 @@ struct { }, .cpus = { - 0x3, + { + .phys_id = 1, + }, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/foundation-v8-inmate-demo.c b/configs/arm64/foundation-v8-inmate-demo.c index 2dda3adf..2cf52d3f 100644 --- a/configs/arm64/foundation-v8-inmate-demo.c +++ b/configs/arm64/foundation-v8-inmate-demo.c @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -27,7 +27,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 0, .num_pci_devices = 0, @@ -41,7 +41,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/foundation-v8-linux-demo.c b/configs/arm64/foundation-v8-linux-demo.c index 842afe9f..92b2bff9 100644 --- a/configs/arm64/foundation-v8-linux-demo.c +++ b/configs/arm64/foundation-v8-linux-demo.c @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[3]; struct jailhouse_irqchip irqchips[1]; } __attribute__((packed)) config = { @@ -28,7 +28,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 1, .num_pci_devices = 0, @@ -42,7 +42,12 @@ struct { }, .cpus = { - 0xc, /* 2nd and 3rd CPUs */ + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, /* Physical memory map: diff --git a/configs/arm64/foundation-v8.c b/configs/arm64/foundation-v8.c index 7a632491..5c963a3b 100644 --- a/configs/arm64/foundation-v8.c +++ b/configs/arm64/foundation-v8.c @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[9]; struct jailhouse_irqchip irqchips[3]; } __attribute__((packed)) config = { @@ -53,14 +53,25 @@ struct { .root_cell = { .name = "foundation-v8", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), }, }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/hikey-inmate-demo.c b/configs/arm64/hikey-inmate-demo.c index ce5eb91b..53f7c56e 100644 --- a/configs/arm64/hikey-inmate-demo.c +++ b/configs/arm64/hikey-inmate-demo.c @@ -4,7 +4,7 @@ * Configuration for demo inmate on LeMaker HiKey board, 2GiB: * 1 CPU, 64K RAM, 1 serial port * - * Copyright (c) Siemens AG, 2016 + * Copyright (c) Siemens AG, 2016-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -27,7 +27,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 0, .num_pci_devices = 0, @@ -41,7 +41,9 @@ struct { }, .cpus = { - 0x10, + { + .phys_id = 0x0100, + }, }, .mem_regions = { diff --git a/configs/arm64/hikey-linux-demo.c b/configs/arm64/hikey-linux-demo.c index cb6e101c..3368947b 100644 --- a/configs/arm64/hikey-linux-demo.c +++ b/configs/arm64/hikey-linux-demo.c @@ -4,7 +4,7 @@ * Configuration for linux-demo inmate on HiKey: * 1 CPU, 128M RAM, serial port 3 * - * Copyright (c) Siemens AG, 2014-2016 + * Copyright (c) Siemens AG, 2014-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -29,7 +29,7 @@ struct { .name = "hikey-linux-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -45,7 +45,12 @@ struct { }, .cpus = { - 0xc0, + { + .phys_id = 0x0102, + }, + { + .phys_id = 0x0103, + }, }, .mem_regions = { diff --git a/configs/arm64/hikey.c b/configs/arm64/hikey.c index 4aadfaae..353d8a7e 100644 --- a/configs/arm64/hikey.c +++ b/configs/arm64/hikey.c @@ -3,7 +3,7 @@ * * Configuration for LeMaker HiKey board, 2 GB * - * Copyright (c) Siemens AG, 2016 + * Copyright (c) Siemens AG, 2016-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[8]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -53,7 +53,7 @@ struct { .root_cell = { .name = "HiKey", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -63,7 +63,30 @@ struct { }, .cpus = { - 0xff, + { + .phys_id = 0x0000, + }, + { + .phys_id = 0x0001, + }, + { + .phys_id = 0x0002, + }, + { + .phys_id = 0x0003, + }, + { + .phys_id = 0x0100, + }, + { + .phys_id = 0x0101, + }, + { + .phys_id = 0x0102, + }, + { + .phys_id = 0x0103, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8dxl-inmate-demo.c b/configs/arm64/imx8dxl-inmate-demo.c index 089a0b8d..011070ef 100644 --- a/configs/arm64/imx8dxl-inmate-demo.c +++ b/configs/arm64/imx8dxl-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -27,7 +27,7 @@ struct { #else .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, #endif - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 0, .num_pci_devices = 0, @@ -40,7 +40,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8dxl.c b/configs/arm64/imx8dxl.c index f70826b1..7e18afc3 100644 --- a/configs/arm64/imx8dxl.c +++ b/configs/arm64/imx8dxl.c @@ -15,7 +15,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[15]; struct jailhouse_irqchip irqchips[3]; struct jailhouse_pci_device pci_devices[2]; @@ -49,16 +49,21 @@ struct { }, .root_cell = { .name = "imx8dxl", - .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(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 = 2, /* Not include 32 base */ }, }, .cpus = { - 0x3, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mm-inmate-demo.c b/configs/arm64/imx8mm-inmate-demo.c index 5791b945..0d7123e5 100644 --- a/configs/arm64/imx8mm-inmate-demo.c +++ b/configs/arm64/imx8mm-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -26,7 +26,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -41,7 +41,9 @@ struct { }, .cpus = { - 0x8, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mm-linux-demo.c b/configs/arm64/imx8mm-linux-demo.c index 49272607..b83a110a 100644 --- a/configs/arm64/imx8mm-linux-demo.c +++ b/configs/arm64/imx8mm-linux-demo.c @@ -20,7 +20,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[15]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -31,7 +31,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -39,7 +39,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mm.c b/configs/arm64/imx8mm.c index 2556ac31..6f832131 100644 --- a/configs/arm64/imx8mm.c +++ b/configs/arm64/imx8mm.c @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[16]; struct jailhouse_irqchip irqchips[3]; struct jailhouse_pci_device pci_devices[2]; @@ -58,16 +58,27 @@ struct { .root_cell = { .name = "imx8mm", - .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(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 = 51, /* Not include 32 base */ }, }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mn-inmate-demo.c b/configs/arm64/imx8mn-inmate-demo.c index 6f04a5b3..7171e47d 100644 --- a/configs/arm64/imx8mn-inmate-demo.c +++ b/configs/arm64/imx8mn-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -26,7 +26,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -42,7 +42,9 @@ struct { }, .cpus = { - 0x8, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mn-linux-demo.c b/configs/arm64/imx8mn-linux-demo.c index 3644b6d1..6799bb3f 100644 --- a/configs/arm64/imx8mn-linux-demo.c +++ b/configs/arm64/imx8mn-linux-demo.c @@ -20,7 +20,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[15]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -31,7 +31,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -39,7 +39,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mn.c b/configs/arm64/imx8mn.c index 91d088ae..52b643a0 100644 --- a/configs/arm64/imx8mn.c +++ b/configs/arm64/imx8mn.c @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[16]; struct jailhouse_irqchip irqchips[3]; struct jailhouse_pci_device pci_devices[2]; @@ -53,16 +53,27 @@ struct { .root_cell = { .name = "imx8mm", - .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(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 = 123, /* Not include 32 base */ }, }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mp-inmate-demo.c b/configs/arm64/imx8mp-inmate-demo.c index 127392df..7c9a37bd 100644 --- a/configs/arm64/imx8mp-inmate-demo.c +++ b/configs/arm64/imx8mp-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -26,7 +26,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -42,7 +42,9 @@ struct { }, .cpus = { - 0x8, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mp-linux-demo.c b/configs/arm64/imx8mp-linux-demo.c index 22793c2a..8f14ed5d 100644 --- a/configs/arm64/imx8mp-linux-demo.c +++ b/configs/arm64/imx8mp-linux-demo.c @@ -20,7 +20,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[23]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[4]; @@ -31,7 +31,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -39,7 +39,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mp.c b/configs/arm64/imx8mp.c index 7fbf6ef7..9fbcddc3 100644 --- a/configs/arm64/imx8mp.c +++ b/configs/arm64/imx8mp.c @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[23]; struct jailhouse_irqchip irqchips[3]; struct jailhouse_pci_device pci_devices[4]; @@ -53,17 +53,28 @@ struct { .root_cell = { .name = "imx8mp", - .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), + .num_pci_devices = ARRAY_SIZE(config.pci_devices), /* gpt5/4/3/2 not used by root cell */ .vpci_irq_base = 51, /* Not include 32 base */ }, }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mq-inmate-demo.c b/configs/arm64/imx8mq-inmate-demo.c index d1d518df..6ff57473 100644 --- a/configs/arm64/imx8mq-inmate-demo.c +++ b/configs/arm64/imx8mq-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -26,7 +26,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -41,7 +41,9 @@ struct { }, .cpus = { - 0x8, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mq-linux-demo.c b/configs/arm64/imx8mq-linux-demo.c index 03e67a94..df1090ab 100644 --- a/configs/arm64/imx8mq-linux-demo.c +++ b/configs/arm64/imx8mq-linux-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[15]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -26,7 +26,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -34,7 +34,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8mq.c b/configs/arm64/imx8mq.c index e853e5f2..c3fec6c9 100644 --- a/configs/arm64/imx8mq.c +++ b/configs/arm64/imx8mq.c @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[14]; struct jailhouse_irqchip irqchips[3]; struct jailhouse_pci_device pci_devices[2]; @@ -53,16 +53,27 @@ struct { .root_cell = { .name = "imx8mq", - .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(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 = 51, /* Not include 32 base */ }, }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8qm-inmate-demo.c b/configs/arm64/imx8qm-inmate-demo.c index 1170a35f..770e9d99 100644 --- a/configs/arm64/imx8qm-inmate-demo.c +++ b/configs/arm64/imx8qm-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -26,7 +26,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -41,7 +41,9 @@ struct { }, .cpus = { - 0x8, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8qm-linux-demo.c b/configs/arm64/imx8qm-linux-demo.c index 0d2d91c9..9d21d114 100644 --- a/configs/arm64/imx8qm-linux-demo.c +++ b/configs/arm64/imx8qm-linux-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[18]; struct jailhouse_irqchip irqchips[4]; struct jailhouse_pci_device pci_devices[2]; @@ -27,7 +27,7 @@ struct { .name = "imx8qm-linux-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_stream_ids = ARRAY_SIZE(config.stream_ids), .num_irqchips = ARRAY_SIZE(config.irqchips), @@ -36,7 +36,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/imx8qm.c b/configs/arm64/imx8qm.c index 052a58d4..297fc53c 100644 --- a/configs/arm64/imx8qm.c +++ b/configs/arm64/imx8qm.c @@ -16,7 +16,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[6]; struct jailhouse_memory mem_regions[15]; struct jailhouse_irqchip irqchips[3]; struct jailhouse_pci_device pci_devices[2]; @@ -67,11 +67,11 @@ struct { .root_cell = { .name = "imx8qm", - .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_stream_ids = ARRAY_SIZE(config.stream_ids), .num_irqchips = ARRAY_SIZE(config.irqchips), + .num_pci_devices = ARRAY_SIZE(config.pci_devices), /* * vpci_irq_base not include base 32 */ @@ -80,7 +80,24 @@ struct { }, .cpus = { - 0x3f, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, + { + .phys_id = 4, + }, + { + .phys_id = 5, + }, }, .mem_regions = { diff --git a/configs/arm64/jetson-tx1-inmate-demo.c b/configs/arm64/jetson-tx1-inmate-demo.c index 1cfbe7f7..3fbb2a3b 100644 --- a/configs/arm64/jetson-tx1-inmate-demo.c +++ b/configs/arm64/jetson-tx1-inmate-demo.c @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -27,7 +27,7 @@ struct { .name = "jetson-tx1-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .console = { @@ -39,7 +39,9 @@ struct { }, .cpus = { - 0x8, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/jetson-tx1-linux-demo.c b/configs/arm64/jetson-tx1-linux-demo.c index c5f2d811..e5c9abd2 100644 --- a/configs/arm64/jetson-tx1-linux-demo.c +++ b/configs/arm64/jetson-tx1-linux-demo.c @@ -24,7 +24,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[1]; @@ -36,7 +36,7 @@ struct { .flags = JAILHOUSE_CELL_PASSIVE_COMMREG | JAILHOUSE_CELL_VIRTUAL_CONSOLE_PERMITTED, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -54,7 +54,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/jetson-tx1.c b/configs/arm64/jetson-tx1.c index c9dbec87..d63b15b9 100644 --- a/configs/arm64/jetson-tx1.c +++ b/configs/arm64/jetson-tx1.c @@ -20,7 +20,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[46]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[1]; @@ -57,7 +57,7 @@ struct { }, .root_cell = { .name = "Jetson-TX1", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -67,7 +67,18 @@ struct { }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, diff --git a/configs/arm64/jetson-tx2-inmate-demo.c b/configs/arm64/jetson-tx2-inmate-demo.c index ed1a7d97..58058291 100644 --- a/configs/arm64/jetson-tx2-inmate-demo.c +++ b/configs/arm64/jetson-tx2-inmate-demo.c @@ -13,7 +13,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -22,7 +22,7 @@ struct { .name = "jetson-tx2-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .console = { @@ -34,7 +34,9 @@ struct { }, .cpus = { - 0x1, + { + .phys_id = 0x0101, + }, }, .mem_regions = { diff --git a/configs/arm64/jetson-tx2.c b/configs/arm64/jetson-tx2.c index 58f7d488..86ae2f8f 100644 --- a/configs/arm64/jetson-tx2.c +++ b/configs/arm64/jetson-tx2.c @@ -23,7 +23,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[61]; struct jailhouse_irqchip irqchips[3]; } __attribute__((packed)) config = { @@ -55,14 +55,25 @@ struct { }, .root_cell = { .name = "Jetson-TX2", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), }, }, .cpus = { - 0x39, + { + .phys_id = 0x0100, + }, + { + .phys_id = 0x0101, + }, + { + .phys_id = 0x0102, + }, + { + .phys_id = 0x0103, + }, }, diff --git a/configs/arm64/k3-am625-sk-inmate-demo.c b/configs/arm64/k3-am625-sk-inmate-demo.c index 49edd62d..f65456d1 100644 --- a/configs/arm64/k3-am625-sk-inmate-demo.c +++ b/configs/arm64/k3-am625-sk-inmate-demo.c @@ -20,7 +20,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -29,7 +29,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 0, .num_pci_devices = 0, @@ -44,7 +44,9 @@ struct { }, .cpus = { - 0x4, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-am625-sk-linux-demo.c b/configs/arm64/k3-am625-sk-linux-demo.c index a3385efc..4dff124a 100644 --- a/configs/arm64/k3-am625-sk-linux-demo.c +++ b/configs/arm64/k3-am625-sk-linux-demo.c @@ -22,7 +22,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[3]; struct jailhouse_memory mem_regions[18]; struct jailhouse_irqchip irqchips[3]; struct jailhouse_pci_device pci_devices[2]; @@ -33,7 +33,7 @@ struct { .name = "k3-am625-sk-linux-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -50,7 +50,15 @@ struct { }, .cpus = { - 0xe, + { + .phys_id = 1 + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-am625-sk.c b/configs/arm64/k3-am625-sk.c index 2e5c3aef..dc1353de 100644 --- a/configs/arm64/k3-am625-sk.c +++ b/configs/arm64/k3-am625-sk.c @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[31]; struct jailhouse_irqchip irqchips[5]; struct jailhouse_pci_device pci_devices[2]; @@ -52,7 +52,7 @@ struct { .root_cell = { .name = "k3-am625-sk", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -61,7 +61,18 @@ struct { }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-am654-idk-linux-demo.c b/configs/arm64/k3-am654-idk-linux-demo.c index 3937dff3..419cdeea 100644 --- a/configs/arm64/k3-am654-idk-linux-demo.c +++ b/configs/arm64/k3-am654-idk-linux-demo.c @@ -22,7 +22,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[19]; struct jailhouse_irqchip irqchips[3]; struct jailhouse_pci_device pci_devices[2]; @@ -33,7 +33,7 @@ struct { .name = "k3-am654-idk-linux-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -50,7 +50,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 0x0100, + }, + { + .phys_id = 0x0101, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-am654-idk.c b/configs/arm64/k3-am654-idk.c index 48b8f867..209e8285 100644 --- a/configs/arm64/k3-am654-idk.c +++ b/configs/arm64/k3-am654-idk.c @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[25]; struct jailhouse_irqchip irqchips[5]; struct jailhouse_pci_device pci_devices[2]; @@ -52,7 +52,7 @@ struct { .root_cell = { .name = "k3-am654-idk", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -61,7 +61,18 @@ struct { }, .cpus = { - 0xf, + { + .phys_id = 0x0000, + }, + { + .phys_id = 0x0001, + }, + { + .phys_id = 0x0100, + }, + { + .phys_id = 0x0101, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-am654-inmate-demo.c b/configs/arm64/k3-am654-inmate-demo.c index 00367471..d3a7e250 100644 --- a/configs/arm64/k3-am654-inmate-demo.c +++ b/configs/arm64/k3-am654-inmate-demo.c @@ -19,7 +19,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -28,7 +28,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 0, .num_pci_devices = 0, @@ -43,7 +43,9 @@ struct { }, .cpus = { - 0x4, + { + .phys_id = 0x0001, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-j7200-evm-inmate-demo.c b/configs/arm64/k3-j7200-evm-inmate-demo.c index c916b439..df6bf832 100644 --- a/configs/arm64/k3-j7200-evm-inmate-demo.c +++ b/configs/arm64/k3-j7200-evm-inmate-demo.c @@ -19,7 +19,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[7]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -30,7 +30,7 @@ struct { .name = "k3-j7200 inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 1, .num_pci_devices = 1, @@ -47,7 +47,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-j7200-evm-linux-demo.c b/configs/arm64/k3-j7200-evm-linux-demo.c index 1fc98bf8..697a8e7c 100644 --- a/configs/arm64/k3-j7200-evm-linux-demo.c +++ b/configs/arm64/k3-j7200-evm-linux-demo.c @@ -22,7 +22,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[19]; struct jailhouse_irqchip irqchips[3]; struct jailhouse_pci_device pci_devices[2]; @@ -34,7 +34,7 @@ struct { .name = "k3-j7200-evm-linux-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -51,7 +51,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-j7200-evm.c b/configs/arm64/k3-j7200-evm.c index cc452157..d7b71e19 100644 --- a/configs/arm64/k3-j7200-evm.c +++ b/configs/arm64/k3-j7200-evm.c @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[32]; struct jailhouse_irqchip irqchips[6]; struct jailhouse_pci_device pci_devices[2]; @@ -70,7 +70,7 @@ struct { .root_cell = { .name = "k3-j7200-evm", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -80,7 +80,12 @@ struct { }, .cpus = { - 0x3, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-j721e-evm-inmate-demo.c b/configs/arm64/k3-j721e-evm-inmate-demo.c index 45a9202f..85bb41e6 100644 --- a/configs/arm64/k3-j721e-evm-inmate-demo.c +++ b/configs/arm64/k3-j721e-evm-inmate-demo.c @@ -19,7 +19,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[7]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -30,7 +30,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 1, .num_pci_devices = 1, @@ -47,7 +47,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-j721e-evm-linux-demo.c b/configs/arm64/k3-j721e-evm-linux-demo.c index af6a5a2f..6d6fe61c 100644 --- a/configs/arm64/k3-j721e-evm-linux-demo.c +++ b/configs/arm64/k3-j721e-evm-linux-demo.c @@ -23,7 +23,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[22]; struct jailhouse_irqchip irqchips[4]; struct jailhouse_pci_device pci_devices[2]; @@ -35,7 +35,7 @@ struct { .name = "k3-j721e-evm-linux-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -52,7 +52,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/k3-j721e-evm.c b/configs/arm64/k3-j721e-evm.c index 19f9d967..12f9cf49 100644 --- a/configs/arm64/k3-j721e-evm.c +++ b/configs/arm64/k3-j721e-evm.c @@ -18,7 +18,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[40]; struct jailhouse_irqchip irqchips[6]; struct jailhouse_pci_device pci_devices[2]; @@ -83,7 +83,7 @@ struct { .root_cell = { .name = "k3-j721e-evm", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -93,7 +93,12 @@ struct { }, .cpus = { - 0x3, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1028a-rdb-inmate-demo.c b/configs/arm64/ls1028a-rdb-inmate-demo.c index 8b45a9ed..6f825cb0 100644 --- a/configs/arm64/ls1028a-rdb-inmate-demo.c +++ b/configs/arm64/ls1028a-rdb-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[7]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[1]; @@ -26,7 +26,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -42,7 +42,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1028a-rdb-linux-demo.c b/configs/arm64/ls1028a-rdb-linux-demo.c index e2cb01af..8c39bdbb 100644 --- a/configs/arm64/ls1028a-rdb-linux-demo.c +++ b/configs/arm64/ls1028a-rdb-linux-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[13]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -26,7 +26,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -34,7 +34,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1028a-rdb.c b/configs/arm64/ls1028a-rdb.c index 6027772b..00597bf9 100644 --- a/configs/arm64/ls1028a-rdb.c +++ b/configs/arm64/ls1028a-rdb.c @@ -15,7 +15,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[76]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -50,16 +50,21 @@ struct { }, .root_cell = { .name = "ls1028a", - .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(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 = 50 - 32, }, }, .cpus = { - 0x3, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1043a-rdb-dpaa-linux-demo.c b/configs/arm64/ls1043a-rdb-dpaa-linux-demo.c index 89552b16..b6bef553 100644 --- a/configs/arm64/ls1043a-rdb-dpaa-linux-demo.c +++ b/configs/arm64/ls1043a-rdb-dpaa-linux-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[23]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -26,7 +26,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -34,7 +34,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1043a-rdb-inmate-demo.c b/configs/arm64/ls1043a-rdb-inmate-demo.c index 25645745..3f7847f1 100644 --- a/configs/arm64/ls1043a-rdb-inmate-demo.c +++ b/configs/arm64/ls1043a-rdb-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[1]; @@ -26,7 +26,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -42,7 +42,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1043a-rdb-linux-demo.c b/configs/arm64/ls1043a-rdb-linux-demo.c index afc10ede..f648bd12 100644 --- a/configs/arm64/ls1043a-rdb-linux-demo.c +++ b/configs/arm64/ls1043a-rdb-linux-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[16]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -26,7 +26,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -34,7 +34,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1043a-rdb.c b/configs/arm64/ls1043a-rdb.c index 892dc444..f28e323f 100644 --- a/configs/arm64/ls1043a-rdb.c +++ b/configs/arm64/ls1043a-rdb.c @@ -15,7 +15,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[61]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -52,16 +52,27 @@ struct { }, .root_cell = { .name = "ls1043a", - .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(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 = 67 - 32, /* Not include 32 base */ }, }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1046a-rdb-inmate-demo.c b/configs/arm64/ls1046a-rdb-inmate-demo.c index 6c992caa..64eb7196 100644 --- a/configs/arm64/ls1046a-rdb-inmate-demo.c +++ b/configs/arm64/ls1046a-rdb-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[1]; @@ -26,7 +26,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -42,7 +42,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1046a-rdb-linux-demo.c b/configs/arm64/ls1046a-rdb-linux-demo.c index 6bba61fb..42411b16 100644 --- a/configs/arm64/ls1046a-rdb-linux-demo.c +++ b/configs/arm64/ls1046a-rdb-linux-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[16]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -26,7 +26,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -34,7 +34,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1046a-rdb.c b/configs/arm64/ls1046a-rdb.c index d05c1628..c9fcdc9e 100644 --- a/configs/arm64/ls1046a-rdb.c +++ b/configs/arm64/ls1046a-rdb.c @@ -15,7 +15,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[64]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -52,16 +52,27 @@ struct { }, .root_cell = { .name = "ls1046a", - .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(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 = 67 - 32, /* Not include 32 base */ }, }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1088a-rdb-inmate-demo.c b/configs/arm64/ls1088a-rdb-inmate-demo.c index 3caee05d..c22e6519 100644 --- a/configs/arm64/ls1088a-rdb-inmate-demo.c +++ b/configs/arm64/ls1088a-rdb-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -26,7 +26,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -42,7 +42,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 0x1, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1088a-rdb-linux-demo.c b/configs/arm64/ls1088a-rdb-linux-demo.c index ee8b18e9..793a4200 100644 --- a/configs/arm64/ls1088a-rdb-linux-demo.c +++ b/configs/arm64/ls1088a-rdb-linux-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[14]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -26,7 +26,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -34,7 +34,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 0x2, + }, + { + .phys_id = 0x3, + }, }, .mem_regions = { diff --git a/configs/arm64/ls1088a-rdb.c b/configs/arm64/ls1088a-rdb.c index cb93df1e..692d30f5 100644 --- a/configs/arm64/ls1088a-rdb.c +++ b/configs/arm64/ls1088a-rdb.c @@ -15,7 +15,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[8]; struct jailhouse_memory mem_regions[63]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -53,8 +53,8 @@ struct { }, .root_cell = { .name = "ls1088a", + .num_cpus = ARRAY_SIZE(config.cpus), .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .vpci_irq_base = 114 - 32, @@ -62,7 +62,30 @@ struct { }, .cpus = { - 0xff, + { + .phys_id = 0x0, + }, + { + .phys_id = 0x1, + }, + { + .phys_id = 0x2, + }, + { + .phys_id = 0x3, + }, + { + .phys_id = 0x100, + }, + { + .phys_id = 0x101, + }, + { + .phys_id = 0x102, + }, + { + .phys_id = 0x103, + }, }, .mem_regions = { diff --git a/configs/arm64/ls2088a-rdb-inmate-demo.c b/configs/arm64/ls2088a-rdb-inmate-demo.c index bbc6812c..4c9dc888 100644 --- a/configs/arm64/ls2088a-rdb-inmate-demo.c +++ b/configs/arm64/ls2088a-rdb-inmate-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[7]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[1]; @@ -26,7 +26,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -42,7 +42,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 0x1, + }, }, .mem_regions = { diff --git a/configs/arm64/ls2088a-rdb-linux-demo.c b/configs/arm64/ls2088a-rdb-linux-demo.c index b20e6f17..01c54096 100644 --- a/configs/arm64/ls2088a-rdb-linux-demo.c +++ b/configs/arm64/ls2088a-rdb-linux-demo.c @@ -15,7 +15,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[13]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -26,7 +26,7 @@ struct { .name = "linux-inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -34,7 +34,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 0x100, + }, + { + .phys_id = 0x101, + }, }, .mem_regions = { diff --git a/configs/arm64/ls2088a-rdb.c b/configs/arm64/ls2088a-rdb.c index 421ac7da..3a9c4b8e 100644 --- a/configs/arm64/ls2088a-rdb.c +++ b/configs/arm64/ls2088a-rdb.c @@ -15,7 +15,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[8]; struct jailhouse_memory mem_regions[70]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -53,8 +53,8 @@ struct { }, .root_cell = { .name = "ls2088a", + .num_cpus = ARRAY_SIZE(config.cpus), .num_pci_devices = ARRAY_SIZE(config.pci_devices), - .cpu_set_size = sizeof(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .vpci_irq_base = 160 - 32, @@ -62,7 +62,30 @@ struct { }, .cpus = { - 0xff, + { + .phys_id = 0x0, + }, + { + .phys_id = 0x1, + }, + { + .phys_id = 0x100, + }, + { + .phys_id = 0x101, + }, + { + .phys_id = 0x200, + }, + { + .phys_id = 0x201, + }, + { + .phys_id = 0x300, + }, + { + .phys_id = 0x301, + }, }, .mem_regions = { diff --git a/configs/arm64/macchiatobin-inmate-demo.c b/configs/arm64/macchiatobin-inmate-demo.c index 9c76f606..90d4885f 100644 --- a/configs/arm64/macchiatobin-inmate-demo.c +++ b/configs/arm64/macchiatobin-inmate-demo.c @@ -4,7 +4,7 @@ * Configuration for demo inmate on Marvell MACCHIATObin board: * 1 CPU, 64K RAM, 1 serial port * - * Copyright (c) Siemens AG, 2017-2018 + * Copyright (c) Siemens AG, 2017-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -27,7 +27,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 0, .num_pci_devices = 0, @@ -41,7 +41,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 0x0001, + }, }, .mem_regions = { diff --git a/configs/arm64/macchiatobin-linux-demo.c b/configs/arm64/macchiatobin-linux-demo.c index ad29bbd5..726242b8 100644 --- a/configs/arm64/macchiatobin-linux-demo.c +++ b/configs/arm64/macchiatobin-linux-demo.c @@ -4,7 +4,7 @@ * Configuration for linux-demo inmate on MACCHIATObin: * 2 CPUs, 128M RAM, serial port * - * Copyright (c) Siemens AG, 2014-2018 + * Copyright (c) Siemens AG, 2014-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[9]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -30,7 +30,7 @@ struct { .flags = JAILHOUSE_CELL_PASSIVE_COMMREG | JAILHOUSE_CELL_VIRTUAL_CONSOLE_PERMITTED, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -46,7 +46,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 0x0100, + }, + { + .phys_id = 0x0101, + }, }, .mem_regions = { diff --git a/configs/arm64/macchiatobin.c b/configs/arm64/macchiatobin.c index db158824..1233ec58 100644 --- a/configs/arm64/macchiatobin.c +++ b/configs/arm64/macchiatobin.c @@ -3,7 +3,7 @@ * * Configuration for Marvell MACCHIATObin board * - * Copyright (c) Siemens AG, 2017-2018 + * Copyright (c) Siemens AG, 2017-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -19,7 +19,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -56,7 +56,7 @@ struct { .root_cell = { .name = "MACCHIATObin", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -66,7 +66,18 @@ struct { }, .cpus = { - 0xf, + { + .phys_id = 0x0000, + }, + { + .phys_id = 0x0001, + }, + { + .phys_id = 0x0100, + }, + { + .phys_id = 0x0101, + }, }, .mem_regions = { diff --git a/configs/arm64/miriac-sbc-ls1046a-inmate-demo.c b/configs/arm64/miriac-sbc-ls1046a-inmate-demo.c index 39e97888..ca72c7a2 100644 --- a/configs/arm64/miriac-sbc-ls1046a-inmate-demo.c +++ b/configs/arm64/miriac-sbc-ls1046a-inmate-demo.c @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -27,7 +27,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 0, .num_pci_devices = 0, @@ -41,7 +41,9 @@ struct { }, .cpus = { - 0x8, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/miriac-sbc-ls1046a-linux-demo.c b/configs/arm64/miriac-sbc-ls1046a-linux-demo.c index 841c21a4..f49881e6 100644 --- a/configs/arm64/miriac-sbc-ls1046a-linux-demo.c +++ b/configs/arm64/miriac-sbc-ls1046a-linux-demo.c @@ -19,7 +19,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[1]; @@ -31,7 +31,7 @@ struct { .flags = JAILHOUSE_CELL_PASSIVE_COMMREG | JAILHOUSE_CELL_VIRTUAL_CONSOLE_PERMITTED, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -47,7 +47,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/miriac-sbc-ls1046a.c b/configs/arm64/miriac-sbc-ls1046a.c index 96a7139e..4a23e52c 100644 --- a/configs/arm64/miriac-sbc-ls1046a.c +++ b/configs/arm64/miriac-sbc-ls1046a.c @@ -19,7 +19,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[55]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[1]; @@ -58,7 +58,7 @@ struct { .root_cell = { .name = "miriac SBC-LS1046A", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -68,7 +68,18 @@ struct { }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/pine64-plus-inmate-demo.c b/configs/arm64/pine64-plus-inmate-demo.c index 73cde95c..18c5f8ad 100644 --- a/configs/arm64/pine64-plus-inmate-demo.c +++ b/configs/arm64/pine64-plus-inmate-demo.c @@ -17,7 +17,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -28,7 +28,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_pci_devices = ARRAY_SIZE(config.pci_devices), .num_irqchips = ARRAY_SIZE(config.irqchips), @@ -43,7 +43,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/pine64-plus-linux-demo.c b/configs/arm64/pine64-plus-linux-demo.c index 1d099906..3d11fd9a 100644 --- a/configs/arm64/pine64-plus-linux-demo.c +++ b/configs/arm64/pine64-plus-linux-demo.c @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[13]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -30,7 +30,7 @@ struct { .flags = JAILHOUSE_CELL_PASSIVE_COMMREG | JAILHOUSE_CELL_VIRTUAL_CONSOLE_PERMITTED, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -46,7 +46,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/pine64-plus.c b/configs/arm64/pine64-plus.c index c824ca78..24c9b981 100644 --- a/configs/arm64/pine64-plus.c +++ b/configs/arm64/pine64-plus.c @@ -19,7 +19,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[43]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -55,7 +55,7 @@ struct { .root_cell = { .name = "Pine64-Plus", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_pci_devices = ARRAY_SIZE(config.pci_devices), .num_irqchips = ARRAY_SIZE(config.irqchips), @@ -65,7 +65,18 @@ struct { }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/qemu-arm64-inmate-demo.c b/configs/arm64/qemu-arm64-inmate-demo.c index 6863ce24..528a74f4 100644 --- a/configs/arm64/qemu-arm64-inmate-demo.c +++ b/configs/arm64/qemu-arm64-inmate-demo.c @@ -4,7 +4,7 @@ * Configuration for demo inmate on QEMU arm64 virtual target * 1 CPU, 64K RAM, 1 serial port * - * Copyright (c) Siemens AG, 2017 + * Copyright (c) Siemens AG, 2017-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -29,7 +29,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -45,7 +45,9 @@ struct { }, .cpus = { - 0b0010, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/qemu-arm64-linux-demo.c b/configs/arm64/qemu-arm64-linux-demo.c index d8096e8e..86b99000 100644 --- a/configs/arm64/qemu-arm64-linux-demo.c +++ b/configs/arm64/qemu-arm64-linux-demo.c @@ -4,7 +4,7 @@ * Configuration for linux-demo inmate on QEMU arm64: * 2 CPUs, 128M RAM, serial port * - * Copyright (c) Siemens AG, 2014-2017 + * Copyright (c) Siemens AG, 2014-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[13]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -30,7 +30,7 @@ struct { .flags = JAILHOUSE_CELL_PASSIVE_COMMREG | JAILHOUSE_CELL_VIRTUAL_CONSOLE_PERMITTED, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -46,7 +46,12 @@ struct { }, .cpus = { - 0b1100, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/qemu-arm64-zephyr-demo.c b/configs/arm64/qemu-arm64-zephyr-demo.c index e5e36237..dbc72f6a 100644 --- a/configs/arm64/qemu-arm64-zephyr-demo.c +++ b/configs/arm64/qemu-arm64-zephyr-demo.c @@ -20,7 +20,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[13]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -32,7 +32,7 @@ struct { .flags = JAILHOUSE_CELL_PASSIVE_COMMREG | JAILHOUSE_CELL_VIRTUAL_CONSOLE_PERMITTED, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -49,7 +49,12 @@ struct { }, .cpus = { - 0x3, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/qemu-arm64.c b/configs/arm64/qemu-arm64.c index 2e9fcde6..bb3e079f 100644 --- a/configs/arm64/qemu-arm64.c +++ b/configs/arm64/qemu-arm64.c @@ -3,7 +3,7 @@ * * Configuration for QEMU arm64 virtual target, 1G RAM, 16 cores * - * Copyright (c) Siemens AG, 2017 + * Copyright (c) Siemens AG, 2017-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -19,7 +19,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[16]; struct jailhouse_memory mem_regions[12]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -54,7 +54,7 @@ struct { .root_cell = { .name = "qemu-arm64", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -64,7 +64,54 @@ struct { }, .cpus = { - 0xffff, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, + { + .phys_id = 4, + }, + { + .phys_id = 5, + }, + { + .phys_id = 6, + }, + { + .phys_id = 7, + }, + { + .phys_id = 8, + }, + { + .phys_id = 9, + }, + { + .phys_id = 10, + }, + { + .phys_id = 11, + }, + { + .phys_id = 12, + }, + { + .phys_id = 13, + }, + { + .phys_id = 14, + }, + { + .phys_id = 15, + }, }, .mem_regions = { diff --git a/configs/arm64/rpi4-inmate-demo.c b/configs/arm64/rpi4-inmate-demo.c index 1bc244f5..68030d81 100644 --- a/configs/arm64/rpi4-inmate-demo.c +++ b/configs/arm64/rpi4-inmate-demo.c @@ -4,7 +4,7 @@ * Configuration for demo inmate on Raspberry Pi 4: * 1 CPU, 64K RAM, serial port 0 * - * Copyright (c) Siemens AG, 2020 + * Copyright (c) Siemens AG, 2020-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -29,7 +29,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -45,7 +45,9 @@ struct { }, .cpus = { - 0b0010, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/rpi4-linux-demo.c b/configs/arm64/rpi4-linux-demo.c index f93c564a..7e7070fa 100644 --- a/configs/arm64/rpi4-linux-demo.c +++ b/configs/arm64/rpi4-linux-demo.c @@ -4,7 +4,7 @@ * Configuration for linux-demo inmate on Raspberry Pi 4: * 2 CPUs, 128M RAM, serial port * - * Copyright (c) Siemens AG, 2014-2020 + * Copyright (c) Siemens AG, 2014-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[13]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -30,7 +30,7 @@ struct { .flags = JAILHOUSE_CELL_PASSIVE_COMMREG | JAILHOUSE_CELL_VIRTUAL_CONSOLE_PERMITTED, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -46,7 +46,12 @@ struct { }, .cpus = { - 0b1100, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/rpi4.c b/configs/arm64/rpi4.c index 68bb1a24..e1dd8769 100644 --- a/configs/arm64/rpi4.c +++ b/configs/arm64/rpi4.c @@ -3,7 +3,7 @@ * * Test configuration for Raspberry Pi 4 (quad-core Cortex-A72, 1GB, 2GB, 4GB or 8GB RAM) * - * Copyright (c) Siemens AG, 2020 + * Copyright (c) Siemens AG, 2020-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -19,7 +19,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[14]; struct jailhouse_irqchip irqchips[2]; struct jailhouse_pci_device pci_devices[2]; @@ -56,7 +56,7 @@ struct { .root_cell = { .name = "Raspberry-Pi4", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -66,7 +66,18 @@ struct { }, .cpus = { - 0b1111, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/ultra96-inmate-demo.c b/configs/arm64/ultra96-inmate-demo.c index c61130a1..533687c8 100644 --- a/configs/arm64/ultra96-inmate-demo.c +++ b/configs/arm64/ultra96-inmate-demo.c @@ -4,7 +4,7 @@ * Configuration for demo inmate on Avnet Ultra96 board: * 1 CPU, 64K RAM, 1 serial port * - * Copyright (c) Siemens AG, 2016-2020 + * Copyright (c) Siemens AG, 2016-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[8]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[1]; @@ -29,7 +29,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -45,7 +45,9 @@ struct { }, .cpus = { - 0b0010, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/ultra96-linux-demo.c b/configs/arm64/ultra96-linux-demo.c index f1f32fd2..a93aca29 100644 --- a/configs/arm64/ultra96-linux-demo.c +++ b/configs/arm64/ultra96-linux-demo.c @@ -4,7 +4,7 @@ * Configuration for linux-demo inmate on Avnet Ultra96 board: * 2 CPUs, 128M RAM, serial port 2 * - * Copyright (c) Siemens AG, 2014-2020 + * Copyright (c) Siemens AG, 2014-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[13]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -29,7 +29,7 @@ struct { .name = "Ultra96-linux-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -45,7 +45,12 @@ struct { }, .cpus = { - 0b1100, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/ultra96.c b/configs/arm64/ultra96.c index 93e2ee83..ab18f178 100644 --- a/configs/arm64/ultra96.c +++ b/configs/arm64/ultra96.c @@ -3,7 +3,7 @@ * * Configuration for Avnet Ultra96 board * - * Copyright (c) Siemens AG, 2016-2020 + * Copyright (c) Siemens AG, 2016-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -17,7 +17,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[11]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -63,7 +63,7 @@ struct { .root_cell = { .name = "Ultra96", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -74,7 +74,18 @@ struct { }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/zynqmp-zcu102-inmate-demo.c b/configs/arm64/zynqmp-zcu102-inmate-demo.c index 304b4cda..c4d8dae8 100644 --- a/configs/arm64/zynqmp-zcu102-inmate-demo.c +++ b/configs/arm64/zynqmp-zcu102-inmate-demo.c @@ -4,7 +4,7 @@ * Configuration for demo inmate on Xilinx ZynqMP ZCU102 eval board: * 1 CPU, 64K RAM, 1 serial port * - * Copyright (c) Siemens AG, 2016 + * Copyright (c) Siemens AG, 2016-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[3]; } __attribute__((packed)) config = { .cell = { @@ -27,7 +27,7 @@ struct { .name = "inmate-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = 0, .num_pci_devices = 0, @@ -41,7 +41,9 @@ struct { }, .cpus = { - 0x8, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/zynqmp-zcu102-linux-demo-2.c b/configs/arm64/zynqmp-zcu102-linux-demo-2.c index 76ed8064..d6f42ca8 100644 --- a/configs/arm64/zynqmp-zcu102-linux-demo-2.c +++ b/configs/arm64/zynqmp-zcu102-linux-demo-2.c @@ -4,7 +4,7 @@ * Configuration for 2nd linux-demo inmate on ZynqMP ZCU102: * 1 CPU, 112M RAM * - * Copyright (c) Siemens AG, 2014-2016 + * Copyright (c) Siemens AG, 2014-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[1]; struct jailhouse_memory mem_regions[11]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -30,7 +30,7 @@ struct { .flags = JAILHOUSE_CELL_PASSIVE_COMMREG | JAILHOUSE_CELL_VIRTUAL_CONSOLE_PERMITTED, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -46,7 +46,9 @@ struct { }, .cpus = { - 0x2, + { + .phys_id = 1, + }, }, .mem_regions = { diff --git a/configs/arm64/zynqmp-zcu102-linux-demo.c b/configs/arm64/zynqmp-zcu102-linux-demo.c index 32e38089..91a6e2b4 100644 --- a/configs/arm64/zynqmp-zcu102-linux-demo.c +++ b/configs/arm64/zynqmp-zcu102-linux-demo.c @@ -4,7 +4,7 @@ * Configuration for linux-demo inmate on ZynqMP ZCU102: * 2 CPUs, 128M RAM, serial port 2 * - * Copyright (c) Siemens AG, 2014-2016 + * Copyright (c) Siemens AG, 2014-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -18,7 +18,7 @@ struct { struct jailhouse_cell_desc cell; - __u64 cpus[1]; + struct jailhouse_cpu cpus[2]; struct jailhouse_memory mem_regions[12]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -29,7 +29,7 @@ struct { .name = "ZynqMP-linux-demo", .flags = JAILHOUSE_CELL_PASSIVE_COMMREG, - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -45,7 +45,12 @@ struct { }, .cpus = { - 0xc, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { diff --git a/configs/arm64/zynqmp-zcu102.c b/configs/arm64/zynqmp-zcu102.c index 492dc566..1f88d6db 100644 --- a/configs/arm64/zynqmp-zcu102.c +++ b/configs/arm64/zynqmp-zcu102.c @@ -3,7 +3,7 @@ * * Configuration for Xilinx ZynqMP ZCU102 eval board * - * Copyright (c) Siemens AG, 2016 + * Copyright (c) Siemens AG, 2016-2022 * * Authors: * Jan Kiszka <[email protected]> @@ -19,7 +19,7 @@ struct { struct jailhouse_system header; - __u64 cpus[1]; + struct jailhouse_cpu cpus[4]; struct jailhouse_memory mem_regions[12]; struct jailhouse_irqchip irqchips[1]; struct jailhouse_pci_device pci_devices[2]; @@ -64,7 +64,7 @@ struct { .root_cell = { .name = "ZynqMP-ZCU102", - .cpu_set_size = sizeof(config.cpus), + .num_cpus = ARRAY_SIZE(config.cpus), .num_memory_regions = ARRAY_SIZE(config.mem_regions), .num_irqchips = ARRAY_SIZE(config.irqchips), .num_pci_devices = ARRAY_SIZE(config.pci_devices), @@ -75,7 +75,18 @@ struct { }, .cpus = { - 0xf, + { + .phys_id = 0, + }, + { + .phys_id = 1, + }, + { + .phys_id = 2, + }, + { + .phys_id = 3, + }, }, .mem_regions = { -- 2.36.1 -- 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/20220627131329.3659-19-ralf.ramsauer%40oth-regensburg.de.
