zephyr/subsys/demand_paging/backing_store/Kconfig

53 lines
1.8 KiB
Plaintext
Raw Normal View History

# 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