diff options
-rw-r--r-- | chip/mt8192_scp/ipi.c | 1 | ||||
-rw-r--r-- | chip/mt8192_scp/uart.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/chip/mt8192_scp/ipi.c b/chip/mt8192_scp/ipi.c index fba511a642..39fcc09809 100644 --- a/chip/mt8192_scp/ipi.c +++ b/chip/mt8192_scp/ipi.c @@ -171,6 +171,7 @@ static void irq_group7_handler(void) if (SCP_GIPC_IN_SET & GIPC_IN(0)) { ipi_handler(); SCP_GIPC_IN_CLR = GIPC_IN(0); + asm volatile ("fence.i" ::: "memory"); task_clear_pending_irq(ec_int); } } diff --git a/chip/mt8192_scp/uart.c b/chip/mt8192_scp/uart.c index 8b9f7452ae..30708acaeb 100644 --- a/chip/mt8192_scp/uart.c +++ b/chip/mt8192_scp/uart.c @@ -148,6 +148,7 @@ static void uart_irq_handler(void) case UART_RX_IRQ(UARTN): uart_process(); SCP_CORE0_INTC_UART_RX_IRQ(UARTN) = BIT(0); + asm volatile ("fence.i" ::: "memory"); task_clear_pending_irq(ec_int); break; } |