drivers: ipm: nrfx: align implementation to nrfx 2.10 API

New API version changes the signature of user callback
in the nrfx_ipc driver.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
This commit is contained in:
Nikodem Kastelik 2022-11-07 12:26:42 +01:00 committed by Carles Cufí
parent 67718641bf
commit 54941e055c

View file

@ -28,22 +28,17 @@ static void gipm_send(uint32_t id);
#if IS_ENABLED(CONFIG_IPM_NRF_SINGLE_INSTANCE)
static void nrfx_ipc_handler(uint32_t event_mask, void *p_context)
static void nrfx_ipc_handler(uint8_t event_idx, void *p_context)
{
if (nrfx_ipm_data.callback) {
while (event_mask) {
uint8_t event_idx = __CLZ(__RBIT(event_mask));
__ASSERT(event_idx < NRFX_IPC_ID_MAX_VALUE,
"Illegal event_idx: %d", event_idx);
event_mask &= ~BIT(event_idx);
nrfx_ipm_data.callback(DEVICE_DT_INST_GET(0),
nrfx_ipm_data.user_data,
event_idx,
NULL);
}
}
}
static int ipm_nrf_send(const struct device *dev, int wait, uint32_t id,
const void *data, int size)
@ -124,14 +119,10 @@ struct vipm_nrf_data {
static struct vipm_nrf_data nrfx_vipm_data;
static void vipm_dispatcher(uint32_t event_mask, void *p_context)
static void vipm_dispatcher(uint8_t event_idx, void *p_context)
{
while (event_mask) {
uint8_t event_idx = __CLZ(__RBIT(event_mask));
__ASSERT(event_idx < NRFX_IPC_ID_MAX_VALUE,
"Illegal event_idx: %d", event_idx);
event_mask &= ~BIT(event_idx);
if (nrfx_vipm_data.callback[event_idx] != NULL) {
nrfx_vipm_data.callback[event_idx]
(nrfx_vipm_data.ipm_device[event_idx],
@ -140,7 +131,6 @@ static void vipm_dispatcher(uint32_t event_mask, void *p_context)
NULL);
}
}
}
static int vipm_nrf_max_data_size_get(const struct device *dev)
{