zephyr/drivers/flash/Kconfig
Henrik Brix Andersen c0c8952739 shell: do not enable subsystem/driver shell modules by default
Do not enable subsystem/driver shell modules by default and stop abusing
CONFIG_SHELL_MINIMAL, which is internal to the shell subsystem, to decide
when to enable a driver shell.

The list of shell modules has grown considerably through the
years. Enabling CONFIG_SHELL for doing e.g. an interactive debug session
leads to a large number of shell modules also being enabled unless
explicitly disabled, which again leads to non-negligible increases in
RAM/ROM usage.

This commit attempts to establish a policy of subsystem/driver shell
modules being disabled by default, requiring the user/application to
explicitly enable only those needed.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2023-11-20 09:21:40 +01:00

164 lines
3.7 KiB
Plaintext

# Flash driver configuration options
# Copyright (c) 2016 Intel Corporation
# SPDX-License-Identifier: Apache-2.0
#
# Flash driver
#
config FLASH_HAS_DRIVER_ENABLED
bool
help
This option is enabled when any flash driver is enabled.
config FLASH_HAS_EX_OP
bool
help
This option is selected by drivers that support flash extended
operations.
config FLASH_HAS_PAGE_LAYOUT
bool
help
This option is enabled when the SoC flash driver supports
retrieving the layout of flash memory pages.
config FLASH_JESD216
bool
help
Selected by drivers that support JESD216-compatible flash
devices to enable building a common support module.
menuconfig FLASH
bool "Flash drivers"
help
Enable support for the flash hardware.
if FLASH
module = FLASH
module-str = flash
source "subsys/logging/Kconfig.template.log_config"
config FLASH_JESD216_API
bool "Provide API to read JESD216 flash parameters"
depends on FLASH_JESD216
help
This option extends the Zephyr flash API with the ability
to access the Serial Flash Discoverable Parameter section
allowing runtime determination of serial flash parameters
for flash drivers that expose this capability.
config FLASH_SHELL
bool "Flash shell"
depends on SHELL && FLASH_PAGE_LAYOUT
select MPU_ALLOW_FLASH_WRITE if ARM_MPU
help
Enable the flash shell with flash related commands such as test,
write, read and erase.
if FLASH_SHELL
config FLASH_SHELL_TEST_COMMANDS
bool "Flash read/write/erase test commands"
select CBPRINTF_FP_SUPPORT
help
Enable additional flash shell commands for performing
read/write/erase tests with speed output.
config FLASH_SHELL_BUFFER_SIZE
hex "Flash shell buffer size"
default 0x4000 if FLASH_SHELL_TEST_COMMANDS
default 0x1000
range 0x400 0x1000000
help
Size of the buffer used for flash commands, will determine the
maximum size that can be used with a read/write test.
endif # FLASH_SHELL
config FLASH_PAGE_LAYOUT
bool "API for retrieving the layout of pages"
depends on FLASH_HAS_PAGE_LAYOUT
default y
help
Enables API for retrieving the layout of flash memory pages.
config FLASH_EX_OP_ENABLED
bool "API for extended flash operations"
depends on FLASH_HAS_EX_OP
default n
help
Enables flash extended operations API. It can be used to perform
non-standard operations e.g. manipulating flash protection.
config FLASH_INIT_PRIORITY
int "Flash init priority"
default KERNEL_INIT_PRIORITY_DEVICE
help
Flash driver device initialization priority. This initialization
priority is used unless the driver implementation has its own
initialization priority
source "drivers/flash/Kconfig.b91"
source "drivers/flash/Kconfig.cc13xx_cc26xx"
source "drivers/flash/Kconfig.at45"
source "drivers/flash/Kconfig.esp32"
source "drivers/flash/Kconfig.it8xxx2"
source "drivers/flash/Kconfig.nrf"
source "drivers/flash/Kconfig.lpc"
source "drivers/flash/Kconfig.mcux"
source "drivers/flash/Kconfig.nios2_qspi"
source "drivers/flash/Kconfig.npcx_fiu"
source "drivers/flash/Kconfig.gecko"
source "drivers/flash/Kconfig.nor"
source "drivers/flash/Kconfig.rpi_pico"
source "drivers/flash/Kconfig.stm32"
source "drivers/flash/Kconfig.stm32_qspi"
source "drivers/flash/Kconfig.stm32_ospi"
source "drivers/flash/Kconfig.sam0"
source "drivers/flash/Kconfig.sam"
source "drivers/flash/Kconfig.simulator"
source "drivers/flash/Kconfig.rv32m1"
source "drivers/flash/Kconfig.nordic_qspi_nor"
source "drivers/flash/Kconfig.smartbond"
source "drivers/flash/Kconfig.cadence_qspi_nor"
source "drivers/flash/Kconfig.gd32"
source "drivers/flash/Kconfig.xmc4xxx"
source "drivers/flash/Kconfig.ifx_cat1"
source "drivers/flash/Kconfig.numaker"
source "drivers/flash/Kconfig.nxp_s32"
source "drivers/flash/Kconfig.andes"
source "drivers/flash/Kconfig.ambiq"
endif # FLASH