Hello !
I can use ZERO latency IRQ with both methods of define interrupts :
IRQ_DIRECT_CONNECT(TIMER2_IRQn, CONFIG_TIMER_IRQ_PRIORITY,
timer2_isr_wrapper,
IS_ENABLED(CONFIG_ZERO_LATENCY_IRQS) ?
IRQ_ZERO_LATENCY : 0);
or
IRQ_CONNECT(TIMER2_IRQn, CONFIG_TIMER_IRQ_PRIORITY, TIMER2_IRQHandler, NULL,
IS_ENABLED(CONFIG_ZERO_LATENCY_IRQS) ? IRQ_ZERO_LATENCY : 0);
And it is mentioned that not all services can be used in ISR :
"
Since Zero-latency ISRs will run in the same priority or possibly at higher priority than the rest of the kernel they cannot use any kernel functionality.
"
What services they talking about ?
Can I use k_sem_give() for example ?
I can see all ZERO latency interrupts have priority 0.
I have try to define CONFIG_ZERO_LATENCY_LEVELS=2 or 3 but there some compilation errors.
Regards,
Eugene