53 lines
1.8 KiB
Plaintext
53 lines
1.8 KiB
Plaintext
# Copyright (c) 2020 Intel Corporation
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
choice BACKING_STORE_CHOICE
|
|
prompt "Backing store algorithms"
|
|
default BACKING_STORE_CUSTOM
|
|
|
|
config BACKING_STORE_CUSTOM
|
|
bool "Custom backing store implementation"
|
|
help
|
|
This option is chosen when the backing store will be implemented in
|
|
the application. This will be typical as these tend to be very
|
|
hardware-dependent.
|
|
|
|
config BACKING_STORE_RAM
|
|
bool "RAM-based test backing store"
|
|
help
|
|
This implements a backing store using physical RAM pages that the
|
|
Zephyr kernel is otherwise unaware of. It is intended for
|
|
demonstration and testing of the demand paging feature.
|
|
|
|
config BACKING_STORE_QEMU_X86_TINY_FLASH
|
|
bool "Flash-based backing store on qemu_x86_tiny"
|
|
depends on BOARD_QEMU_X86_TINY
|
|
help
|
|
This uses the "flash" memory area (in DTS) as the backing store
|
|
for demand paging. The qemu_x86_tiny.ld linker script puts
|
|
the symbols outside of boot and pinned sections into the flash
|
|
area, allowing testing of the demand paging mechanism on
|
|
code and data.
|
|
|
|
config BACKING_STORE_ONDEMAND_SEMIHOST
|
|
bool "Backing store for on-demand linker section using semihosting"
|
|
depends on SEMIHOST && LINKER_USE_ONDEMAND_SECTION
|
|
help
|
|
This is used to do on-demand paging of code and data marked with
|
|
__ondemand_func and __ondemand_rodata tags respectively. The compiled
|
|
zephyr.bin on the host is used to retrieve needed data with the
|
|
semihosting I/O facility.
|
|
|
|
endchoice
|
|
|
|
if BACKING_STORE_RAM
|
|
config BACKING_STORE_RAM_PAGES
|
|
int "Number of pages for RAM backing store"
|
|
default 16
|
|
help
|
|
Number of pages of backing store memory to reserve in RAM. All test
|
|
cases for demand paging assume that there are at least 16 pages of
|
|
backing store storage available.
|
|
|
|
endif # BACKING_STORE_RAM
|