Skip to content

Commit 0ebafc2

Browse files
committed
i2s: setup context for irq
1 parent 02b05ac commit 0ebafc2

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

cores/arduino/IRQManager.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -944,20 +944,23 @@ bool IRQManager::addPeripheral(Peripheral_t p, void *cfg) {
944944
i2s_cfg->txi_ipl = I2S_PRIORITY;
945945
*(irq_ptr + last_interrupt_index) = (uint32_t)ssi_txi_isr;
946946
R_ICU->IELSR[last_interrupt_index] = BSP_PRV_IELS_ENUM(EVENT_SSI0_TXI);
947+
R_FSP_IsrContextSet(i2s_cfg->txi_irq, (void*)i2s_cfg->p_context);
947948
last_interrupt_index++;
948949
}
949950
if(i2s_cfg->rxi_irq == FSP_INVALID_VECTOR) {
950951
i2s_cfg->rxi_irq = (IRQn_Type)last_interrupt_index;
951952
i2s_cfg->rxi_ipl = I2S_PRIORITY;
952953
*(irq_ptr + last_interrupt_index) = (uint32_t)ssi_rxi_isr;
953954
R_ICU->IELSR[last_interrupt_index] = BSP_PRV_IELS_ENUM(EVENT_SSI0_RXI);
955+
R_FSP_IsrContextSet(i2s_cfg->rxi_irq, (void*)i2s_cfg->p_context);
954956
last_interrupt_index++;
955957
}
956958
if(i2s_cfg->int_irq == FSP_INVALID_VECTOR) {
957959
i2s_cfg->int_irq = (IRQn_Type)last_interrupt_index;
958960
i2s_cfg->idle_err_ipl = I2S_PRIORITY;
959961
*(irq_ptr + last_interrupt_index) = (uint32_t)ssi_int_isr;
960962
R_ICU->IELSR[last_interrupt_index] = BSP_PRV_IELS_ENUM(EVENT_SSI0_INT);
963+
R_FSP_IsrContextSet(i2s_cfg->int_irq, (void*)i2s_cfg->p_context);
961964
last_interrupt_index++;
962965
}
963966
}

0 commit comments

Comments
 (0)