From 30634334a811f38e2e0a694447af58b35e0f940e Mon Sep 17 00:00:00 2001 From: Vinayak Kariappa Chettimada Date: Thu, 28 Jan 2021 20:35:31 +0530 Subject: [PATCH] Bluetooth: controller: Fix ULL_HIGH priority to be lower than LLL Fix the default ULL_HIGH execution priority to be lower than LLL execution priority to reduce Radio ISR service latency. Also, default to Zero Latency IRQ for Radio ISR if enabled in the kernel. Fixes #29994. Signed-off-by: Vinayak Kariappa Chettimada --- subsys/bluetooth/controller/Kconfig.ll_sw_split | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/subsys/bluetooth/controller/Kconfig.ll_sw_split b/subsys/bluetooth/controller/Kconfig.ll_sw_split index 27f26ac64de..0184009fca8 100644 --- a/subsys/bluetooth/controller/Kconfig.ll_sw_split +++ b/subsys/bluetooth/controller/Kconfig.ll_sw_split @@ -211,6 +211,7 @@ config BT_CTLR_SCAN_ENABLE_STRICT config BT_CTLR_ZLI bool "Use Zero Latency IRQs" depends on ZERO_LATENCY_IRQS + default y help Enable support for use of Zero Latency IRQ feature. Note, applications shall not use Zero Latency IRQ themselves when this option is selected, @@ -273,7 +274,7 @@ config BT_CTLR_SCHED_ADVANCED leading to skipped events amongst active roles. config BT_CTLR_LLL_PRIO - int "Lower Link Layer (Radio) IRQ priority" + int "Lower Link Layer (Radio) IRQ priority" if !BT_CTLR_ZLI range 0 3 if SOC_SERIES_NRF51X range 0 6 if (SOC_SERIES_NRF52X || SOC_SERIES_NRF53X) default 0 @@ -284,7 +285,8 @@ config BT_CTLR_ULL_HIGH_PRIO int "Upper Link Layer High IRQ priority" range BT_CTLR_LLL_PRIO 3 if SOC_SERIES_NRF51X range BT_CTLR_LLL_PRIO 6 if (SOC_SERIES_NRF52X || SOC_SERIES_NRF53X) - default BT_CTLR_LLL_PRIO + default BT_CTLR_LLL_PRIO if (BT_CTLR_ZLI || BT_CTLR_LOW_LAT_ULL) + default 1 help The interrupt priority for Ticker's Worker IRQ and Upper Link Layer higher priority functions.