Move memory mapping of Xen node to Grant Table driver system init function. After moving mapping we don't need anymore records of xen-xen node into 'mmu_regions' array, so they were deleted from all SoCs: Rcar Gen3/Gen4 and XenVM. We need at least 16M of virtual address space to map memory of Xen node, so the virtual memory sized has been increased to 32 MB, it should be enough for basic use-cases and mapping of 16M mem region of Xen node. Unfortunately, after moving we also need to increase number of XLAT tables. The previous code was more efficient if we talking about usage of XLAT tables, because it mapped grant tables using a higher- order table that allows mapping blocks of 2MB. And after the changes is maps every 4KB page, so we need more XLAT tables. Increase number of grant frames, it is needed to sync stage 1 and stage 2 memory mappings, previously we map only one page on stage 2 and further usage of unmap regions can cause MMU translation errors. Perform mapping stage 1 before mapping for stage 2 (add to physmap), because right after stage 1 we can try to access memory and if it is unmap in stage 2, error will be received during translation. Note: Xen Grant Table driver doesn't use Zephyr Device Model. Authored-by: Mykola Kvach <mykola_kvach@epam.com> Co-authored-by: Oleksii Moisieiev <oleksii_moisieiev@epam.com> Signed-off-by: Mykola Kvach <mykola_kvach@epam.com>
17 lines
246 B
Text
17 lines
246 B
Text
CONFIG_SOC_XENVM=y
|
|
CONFIG_BOARD_XENVM=y
|
|
|
|
# Enable UART driver
|
|
CONFIG_SERIAL=y
|
|
|
|
CONFIG_MAX_XLAT_TABLES=24
|
|
|
|
# Enable console
|
|
CONFIG_CONSOLE=y
|
|
CONFIG_UART_CONSOLE=y
|
|
|
|
# Enable logging subsys
|
|
CONFIG_LOG=y
|
|
CONFIG_LOG_MODE_MINIMAL=n
|
|
|
|
CONFIG_USERSPACE=n
|