1.The synchronization operation of async is essentially a trick, so it is not enabled by default。 2.Optimize the inter-lock operation. For instance, before operating on a linked list, it is necessary to first determine whether the linked list is in use (during active operation, the probability of not using it is too low, resulting in invalid judgments and prolonging the lock time).
95 lines
1.8 KiB
Plaintext
95 lines
1.8 KiB
Plaintext
menu "Kernel options"
|
|
|
|
# ==================================
|
|
# ENTRY
|
|
# ==================================
|
|
config MR_USE_ENTRY
|
|
bool "Use entry"
|
|
default n
|
|
|
|
# ==================================
|
|
# CLOCK
|
|
# ==================================
|
|
config MR_CFG_CLOCK_HOOK_SIZE
|
|
int "Clock hook size"
|
|
default 2
|
|
range 2 128
|
|
|
|
# ==================================
|
|
# PRINTF
|
|
# ==================================
|
|
config MR_USE_PRINTF
|
|
bool "Use printf"
|
|
default y
|
|
|
|
config MR_CFG_PRINTF_BUF_SIZE
|
|
depends on MR_USE_PRINTF
|
|
int "Printf buffer size"
|
|
default 64
|
|
range 8 65535
|
|
|
|
config MR_USE_PRINTF_SAFE
|
|
depends on MR_USE_PRINTF
|
|
bool "Use printf safe"
|
|
default n
|
|
|
|
# ==================================
|
|
# TIMER
|
|
# ==================================
|
|
config MR_USE_TIMER
|
|
bool "Use timer"
|
|
default y
|
|
|
|
# ==================================
|
|
# WORKQUEUE
|
|
# ==================================
|
|
config MR_USE_WORKQUEUE
|
|
select MR_USE_TIMER
|
|
bool "Use workqueue"
|
|
default y
|
|
|
|
config MR_USE_WORKQUEUE_HOOK
|
|
depends on MR_USE_WORKQUEUE
|
|
bool "Use workqueue hook"
|
|
default n
|
|
|
|
# ==================================
|
|
# IRQ
|
|
# ==================================
|
|
config MR_USE_IRQ
|
|
bool "Use irq"
|
|
default y
|
|
|
|
config MR_CFG_IRQ_TABLE_SIZE
|
|
depends on MR_USE_IRQ
|
|
int "Irq table size"
|
|
default 32
|
|
range 4 1024
|
|
|
|
config MR_USE_IRQ_DEFER
|
|
depends on MR_USE_IRQ
|
|
select MR_USE_WORKQUEUE
|
|
bool "Use irq defer"
|
|
default y
|
|
|
|
config MR_USE_IRQ_DEFER_HOOK
|
|
depends on MR_USE_IRQ_DEFER
|
|
select MR_USE_WORKQUEUE_HOOK
|
|
bool "Use irq defer hook"
|
|
default n
|
|
|
|
# ==================================
|
|
# ASYNC
|
|
# ==================================
|
|
config MR_USE_ASYNC
|
|
select MR_USE_WORKQUEUE
|
|
bool "Use async"
|
|
default y
|
|
|
|
config MR_USE_ASYNC_SYNC
|
|
depends on MR_USE_ASYNC
|
|
bool "Use async sync"
|
|
default n
|
|
|
|
endmenu
|