zephyr/drivers/ieee802154
Jedrzej Ciupis 8ed202b43d drivers: ieee802154: fix freeing Rx buffer
This commit fixes a bug where an already received Rx frame could not be
processed by the IEEE 802.15.4 driver.

In the current implementation, buffer is marked as free and released to
the buffer pool after `nrf_802154_buffer_free_raw` finishes executing.
However, delays caused by thread scheduling might result in a new frame
being already received and provided to the driver before
`nrf_802154_buffer_free_raw` returns. Such a situation ends in an
assertion now.

This commit changes that behavior by marking the buffer as free before
calling `nrf_802154_buffer_free_raw`.

Signed-off-by: Jedrzej Ciupis <jedrzej.ciupis@nordicsemi.no>
2022-07-04 16:39:14 +02:00
..
CMakeLists.txt
Kconfig net: pkt: add IEEE 802.15.4 TX power field 2022-06-14 09:30:43 +02:00
Kconfig.b91
Kconfig.cc13xx_cc26xx
Kconfig.cc1200
Kconfig.cc2520 kconfig: remove Enable from boolean prompts 2022-03-09 15:35:54 +01:00
Kconfig.dw1000
Kconfig.kw41z kconfig: remove Enable from boolean prompts 2022-03-09 15:35:54 +01:00
Kconfig.mcr20a drivers: ieee802154: mcr20a: define as DT device 2022-02-21 22:16:10 -05:00
Kconfig.nrf5 drivers: ieee802154_nrf5: add log for rx failure 2022-04-08 09:31:17 +02:00
Kconfig.rf2xx
ieee802154_b91.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_b91.h
ieee802154_cc13xx_cc26xx.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_cc13xx_cc26xx.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_cc13xx_cc26xx_subg.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_cc13xx_cc26xx_subg.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_cc1200.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_cc1200.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_cc1200_regs.h
ieee802154_cc1200_rf.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_cc2520.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_cc2520.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_cc2520_regs.h
ieee802154_dw1000.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_dw1000_regs.h everywhere: fix typos 2022-03-18 13:24:08 -04:00
ieee802154_kw41z.c drivers: remove redundant <zephyr/zephyr.h> includes 2022-06-15 09:13:11 +02:00
ieee802154_mcr20a.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_mcr20a.h drivers: ieee802154: mcr20a: Remove unused variable 2022-06-29 06:02:28 -05:00
ieee802154_mcr20a_regs.h
ieee802154_nrf5.c drivers: ieee802154: fix freeing Rx buffer 2022-07-04 16:39:14 +02:00
ieee802154_nrf5.h drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_rf2xx.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_rf2xx.h drivers: ieee802154: rf2xx: use gpio_dt_spec 2022-02-21 22:16:10 -05: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 everywhere: fix typos 2022-03-14 20:22:24 -04:00
ieee802154_uart_pipe.c drivers: migrate includes to <zephyr/...> 2022-05-06 19:58:21 +02:00
ieee802154_uart_pipe.h