zephyr/drivers/ieee802154
Alberto Escolar Piedras 4df07224f8 drivers ieee802154_nrf5: Fix infinite loop for simulation on stop
With CSL enabled, when nrf5_stop is called,
nrf_802154_sleep_if_idle() will be called, and if the radio is
busy with another task, another IEEE802154_EVENT_RX_OFF event
will be pended right away, resulting in another call
to nrf5_stop(), effectively busy waiting until the
radio has reached idle.

In simulation, this whole operation (busy wait loop) is
done without letting the CPU sleep, in an infinite loop,
and therefore without letting any time pass
(note that in the POSIX architecture,
no time passes if the CPU does not go to sleep).
And therefore the radio will never be done with whatever
it is doing, resulting in the simulation being stuck
in this loop.

Let's add a very minor delay to this loop, which is
conditionally compiled only for the POSIX architecture.
Which effectively mimics the time it takes for the CPU
to loop thru, let's time pass, and allows the radio
to eventually be done.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-11-08 11:07:30 +01:00
..
CMakeLists.txt drivers: ieee802154: cmake: remove TI compile definitions 2022-07-28 20:51:55 +02:00
ieee802154_b91.c drivers: ieee802154: b91: buflen sanity check 2023-10-17 19:15:56 +03:00
ieee802154_b91.h drivers: ieee802154: b91: Fix Set Channel API and ACK detection 2021-12-14 13:47:25 -06:00
ieee802154_cc13xx_cc26xx.c random: Rename random header 2023-10-10 14:23:50 +03:00
ieee802154_cc13xx_cc26xx.h drivers: ieee802154: introduce channel pages 2023-09-27 12:44:15 -04:00
ieee802154_cc13xx_cc26xx_subg.c drivers: ieee802154: cc13xx_cc26xx_subg: buflen sanity check 2023-10-17 19:15:56 +03:00
ieee802154_cc13xx_cc26xx_subg.h drivers: ieee802154: cc13xx_cc26xx_subg: fix oper. state 2023-10-05 12:01:29 +03:00
ieee802154_cc1200.c drivers: ieee802154: fix thread function signatures 2023-10-30 12:24:34 +01:00
ieee802154_cc1200.h net: l2: ieee802154: standardize RSSI value 2023-06-17 07:16:32 -04:00
ieee802154_cc1200_regs.h headers: Fix headers across the project 2018-09-17 15:49:26 -04:00
ieee802154_cc1200_rf.h drivers: ieee802154: cc1200: SUN-FSK compatibility 2023-09-27 12:44:15 -04:00
ieee802154_cc2520.c drivers: ieee802154: fix thread function signatures 2023-10-30 12:24:34 +01:00
ieee802154_cc2520.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_cc2520_regs.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
ieee802154_dw1000.c random: Rename random header 2023-10-10 14:23:50 +03:00
ieee802154_dw1000_regs.h everywhere: fix typos 2022-03-18 13:24:08 -04:00
ieee802154_kw41z.c random: Rename random header 2023-10-10 14:23:50 +03:00
ieee802154_mcr20a.c drivers: ieee802154: fix thread function signatures 2023-10-30 12:24:34 +01:00
ieee802154_mcr20a.h drivers: ieee802154: mcr20a: Remove unused variable 2022-06-29 06:02:28 -05:00
ieee802154_mcr20a_regs.h headers: Fix headers across the project 2018-09-17 15:49:26 -04:00
ieee802154_nrf5.c drivers ieee802154_nrf5: Fix infinite loop for simulation on stop 2023-11-08 11:07:30 +01:00
ieee802154_nrf5.h drivers: ieee802154: nrf5: set security enabled bit value 2023-11-03 09:57:53 +01:00
ieee802154_rf2xx.c drivers: ieee802154: fix thread function signatures 2023-10-30 12:24:34 +01:00
ieee802154_rf2xx.h drivers: ieee802154: introduce channel pages 2023-09-27 12:44:15 -04:00
ieee802154_rf2xx_iface.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_rf2xx_iface.h everywhere: fix typos 2022-03-14 20:22:24 -04:00
ieee802154_rf2xx_regs.h drivers: ieee802154: rf2xx: Fix rf231 invalid frame 2023-09-25 09:52:28 +02:00
ieee802154_uart_pipe.c random: Rename random header 2023-10-10 14:23:50 +03:00
ieee802154_uart_pipe.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
Kconfig net: openthread: allow to configure CSL debugging 2023-06-17 07:48:25 -04:00
Kconfig.b91 drivers: ieee802154: IEEE802154 depends on NETWORKING 2022-08-05 12:56:47 +02:00
Kconfig.cc13xx_cc26xx drivers: ieee802154: introduce channel pages 2023-09-27 12:44:15 -04:00
Kconfig.cc1200 drivers: ieee802154: introduce channel pages 2023-09-27 12:44:15 -04:00
Kconfig.cc2520 drivers: ieee802154: IEEE802154 depends on NETWORKING 2022-08-05 12:56:47 +02:00
Kconfig.dw1000 drivers: ieee802154: Move to using select in Kconfig for SPI bus 2022-08-12 11:33:02 +02:00
Kconfig.kw41z drivers: ieee802154: IEEE802154 depends on NETWORKING 2022-08-05 12:56:47 +02:00
Kconfig.mcr20a drivers: ieee802154: Move to using select in Kconfig for SPI bus 2022-08-12 11:33:02 +02:00
Kconfig.nrf5 drivers: ieee802154: nrf5: multiple CCA support 2023-07-25 09:13:41 +02:00
Kconfig.rf2xx drivers: ieee802154: introduce channel pages 2023-09-27 12:44:15 -04:00
Kconfig.uart_pipe drivers: ieee802154: IEEE802154 depends on NETWORKING 2022-08-05 12:56:47 +02:00