# SPDX-FileCopyrightText: 2023 - 2024 Ledger SAS
# SPDX-License-Identifier: Apache-2.0
comment "Task configuration"
config TASK_LABEL
hex "Label"
help
Task unique label identifier
config TASK_MAGIC
hex "task magic"
default 0xdeadcafe
help
Default tasks magic to be set for all tasks. this value is specific to
each project so that when building tasks for a given project, only these
tasks can be added to the kernel bin.
config TASK_PRIORITY
int "Priority"
range 0 255
help
Task priority, bigger is higher
config TASK_QUANTUM
int "Quantum"
range 0 255
help
Task quantum, number of HZ allowed contigous periods
config TASK_AUTO_START
bool "Auto start"
default n
help
Task started automatically at system startup, default 'n'
choice TASK_EXIT_POLICY
prompt "At exit policy"
help
Kernel behavior if a task reaches exit point
config TASK_EXIT_NORESTART
bool "norestart"
help
**DO NOT** restart the task automatically.
If another task has permission to start this task, it can be restarted by this one.
config TASK_EXIT_RESTART
bool "restart"
help
Automatically restarts the stack
config TASK_EXIT_PANIC
bool "panic"
help
If this task reach exist point, the system will panic.
Use this for security/critical feature that **MUST NTO** exits
# TODO
# config TASK_EXIT_PERIODICRESTART
# bool "periodic"
endchoice
config TASK_STACK_SIZE
hex "stack_size"
config TASK_HEAP_SIZE
hex "heap_size"
menu "Capabilities"
config CAP_DEV_BUSES
bool "dev_buses"
default n
config CAP_DEV_IO
bool "dev_io"
default n
config CAP_DEV_DMA
bool "dev_dma"
default n
config CAP_DEV_ANALOG
bool "dev_analog"
default n
config CAP_DEV_TIMER
bool "dev_timer"
default n
config CAP_DEV_STORAGE
bool "dev_storage"
default n
config CAP_DEV_CRYPTO
bool "dev_crypto"
default n
config CAP_DEV_CLOCK
bool "dev_clock"
default n
config CAP_DEV_POWER
bool "dev_power"
default n
config CAP_DEV_NEURAL
bool "dev_neural"
default n
config CAP_SYS_UPGRADE
bool "sys_upgrade"
default n
config CAP_SYS_POWER
bool "sys_power"
default n
config CAP_SYS_PROCSTART
bool "sys_procstart"
default n
config CAP_MEM_SHM_OWN
bool "mem_shm_own"
default n
config CAP_MEM_SHM_USE
bool "mem_shm_use"
default n
config CAP_MEM_SHM_TRANSFER
bool "mem_shm_transfer"
default n
config CAP_TIM_HP_CHRONO
bool "tim_hp_chrono"
default n
config CAP_CRY_KRNG
bool "cry_krng"
default n
endmenu