Skip to content

Commit 27f863e

Browse files
committed
[nrf fromlist] mbox: temporary workaround for missing ic-msg
When a LD sends an ic-msg to SCFW - it happens that sometimes that SCFW does not handle the request. For the moment the problem is solved by sending a second vevif event shortly after the initial request. Upstream PR #: 86455 Signed-off-by: Maciej Meijer <[email protected]>
1 parent b70deaa commit 27f863e

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

drivers/mbox/mbox_nrf_vevif_task_tx.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,14 @@
55

66
#define DT_DRV_COMPAT nordic_nrf_vevif_task_tx
77

8+
#include <zephyr/kernel.h>
89
#include <zephyr/devicetree.h>
910
#include <zephyr/drivers/mbox.h>
1011

1112
#include <haly/nrfy_vpr.h>
1213

1314
#define TASKS_IDX_MAX NRF_VPR_TASKS_TRIGGER_MAX
15+
#define VEVIF_RETRIGGER_DELAY 12
1416

1517
struct mbox_vevif_task_tx_conf {
1618
NRF_VPR_Type *vpr;
@@ -39,6 +41,10 @@ static int vevif_task_tx_send(const struct device *dev, uint32_t id, const struc
3941

4042
nrfy_vpr_task_trigger(config->vpr, nrfy_vpr_trigger_task_get(id));
4143

44+
k_busy_wait(VEVIF_RETRIGGER_DELAY);
45+
46+
nrfy_vpr_task_trigger(config->vpr, nrfy_vpr_trigger_task_get(id));
47+
4248
return 0;
4349
}
4450

0 commit comments

Comments
 (0)