Skip to content

Commit 6796470

Browse files
committed
stm32/i2c: Rename irq handler function.
Signed-off-by: Damien George <[email protected]>
1 parent 25b4e95 commit 6796470

File tree

3 files changed

+49
-12
lines changed

3 files changed

+49
-12
lines changed

ports/stm32/i2c.c

Lines changed: 46 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -595,19 +595,21 @@ int i2c_find_peripheral(mp_obj_t id) {
595595
return i2c_id;
596596
}
597597

598-
#if MICROPY_PY_PYB_LEGACY
598+
#if MICROPY_HW_ENABLE_HW_I2C_TARGET || MICROPY_PY_PYB_LEGACY
599599

600600
#if defined(MICROPY_HW_I2C1_SCL)
601601
void I2C1_EV_IRQHandler(void) {
602602
MP_STATIC_ASSERT(I2C1_EV_IRQn > 0);
603603
IRQ_ENTER(I2C1_EV_IRQn);
604604
#if MICROPY_HW_ENABLE_HW_I2C_TARGET
605605
if (i2c_target_enabled & 1) {
606-
i2c_slave_ev_irq_handler(I2C1);
606+
i2c_slave_irq_handler(I2C1);
607607
} else
608608
#endif
609609
{
610+
#if MICROPY_PY_PYB_LEGACY
610611
i2c_ev_irq_handler(1);
612+
#endif
611613
}
612614
IRQ_EXIT(I2C1_EV_IRQn);
613615
}
@@ -617,11 +619,13 @@ void I2C1_ER_IRQHandler(void) {
617619
IRQ_ENTER(I2C1_ER_IRQn);
618620
#if MICROPY_HW_ENABLE_HW_I2C_TARGET
619621
if (i2c_target_enabled & 1) {
620-
i2c_slave_ev_irq_handler(I2C1);
622+
i2c_slave_irq_handler(I2C1);
621623
} else
622624
#endif
623625
{
626+
#if MICROPY_PY_PYB_LEGACY
624627
i2c_er_irq_handler(1);
628+
#endif
625629
}
626630
IRQ_EXIT(I2C1_ER_IRQn);
627631
}
@@ -633,19 +637,30 @@ void I2C2_EV_IRQHandler(void) {
633637
IRQ_ENTER(I2C2_EV_IRQn);
634638
#if MICROPY_HW_ENABLE_HW_I2C_TARGET
635639
if (i2c_target_enabled & 2) {
636-
i2c_slave_ev_irq_handler(I2C2);
640+
i2c_slave_irq_handler(I2C2);
637641
} else
638642
#endif
639643
{
644+
#if MICROPY_PY_PYB_LEGACY
640645
i2c_ev_irq_handler(2);
646+
#endif
641647
}
642648
IRQ_EXIT(I2C2_EV_IRQn);
643649
}
644650

645651
void I2C2_ER_IRQHandler(void) {
646652
MP_STATIC_ASSERT(I2C2_ER_IRQn > 0);
647653
IRQ_ENTER(I2C2_ER_IRQn);
648-
i2c_er_irq_handler(2);
654+
#if MICROPY_HW_ENABLE_HW_I2C_TARGET
655+
if (i2c_target_enabled & 2) {
656+
i2c_slave_irq_handler(I2C2);
657+
} else
658+
#endif
659+
{
660+
#if MICROPY_PY_PYB_LEGACY
661+
i2c_er_irq_handler(2);
662+
#endif
663+
}
649664
IRQ_EXIT(I2C2_ER_IRQn);
650665
}
651666
#endif // defined(MICROPY_HW_I2C2_SCL)
@@ -656,19 +671,30 @@ void I2C3_EV_IRQHandler(void) {
656671
IRQ_ENTER(I2C3_EV_IRQn);
657672
#if MICROPY_HW_ENABLE_HW_I2C_TARGET
658673
if (i2c_target_enabled & 4) {
659-
i2c_slave_ev_irq_handler(I2C3);
674+
i2c_slave_irq_handler(I2C3);
660675
} else
661676
#endif
662677
{
678+
#if MICROPY_PY_PYB_LEGACY
663679
i2c_ev_irq_handler(3);
680+
#endif
664681
}
665682
IRQ_EXIT(I2C3_EV_IRQn);
666683
}
667684

668685
void I2C3_ER_IRQHandler(void) {
669686
MP_STATIC_ASSERT(I2C3_ER_IRQn > 0);
670687
IRQ_ENTER(I2C3_ER_IRQn);
671-
i2c_er_irq_handler(3);
688+
#if MICROPY_HW_ENABLE_HW_I2C_TARGET
689+
if (i2c_target_enabled & 4) {
690+
i2c_slave_irq_handler(I2C3);
691+
} else
692+
#endif
693+
{
694+
#if MICROPY_PY_PYB_LEGACY
695+
i2c_er_irq_handler(3);
696+
#endif
697+
}
672698
IRQ_EXIT(I2C3_ER_IRQn);
673699
}
674700
#endif // defined(MICROPY_HW_I2C3_SCL)
@@ -679,19 +705,30 @@ void I2C4_EV_IRQHandler(void) {
679705
IRQ_ENTER(I2C4_EV_IRQn);
680706
#if MICROPY_HW_ENABLE_HW_I2C_TARGET
681707
if (i2c_target_enabled & 8) {
682-
i2c_slave_ev_irq_handler(I2C4);
708+
i2c_slave_irq_handler(I2C4);
683709
} else
684710
#endif
685711
{
712+
#if MICROPY_PY_PYB_LEGACY
686713
i2c_ev_irq_handler(4);
714+
#endif
687715
}
688716
IRQ_EXIT(I2C4_EV_IRQn);
689717
}
690718

691719
void I2C4_ER_IRQHandler(void) {
692720
MP_STATIC_ASSERT(I2C4_ER_IRQn > 0);
693721
IRQ_ENTER(I2C4_ER_IRQn);
694-
i2c_er_irq_handler(4);
722+
#if MICROPY_HW_ENABLE_HW_I2C_TARGET
723+
if (i2c_target_enabled & 8) {
724+
i2c_slave_irq_handler(I2C4);
725+
} else
726+
#endif
727+
{
728+
#if MICROPY_PY_PYB_LEGACY
729+
i2c_er_irq_handler(4);
730+
#endif
731+
}
695732
IRQ_EXIT(I2C4_ER_IRQn);
696733
}
697734
#endif // defined(MICROPY_HW_I2C4_SCL)

ports/stm32/i2cslave.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ void i2c_slave_init_helper(i2c_slave_t *i2c, int addr) {
4141
i2c->CR1 = I2C_CR1_ACK | I2C_CR1_PE;
4242
}
4343

44-
void i2c_slave_ev_irq_handler(i2c_slave_t *i2c) {
44+
void i2c_slave_irq_handler(i2c_slave_t *i2c) {
4545
uint32_t sr1 = i2c->SR1;
4646

4747
// Clear all error flags.
@@ -86,7 +86,7 @@ void i2c_slave_init_helper(i2c_slave_t *i2c, int addr) {
8686
i2c->CR1 |= I2C_CR1_PE;
8787
}
8888

89-
void i2c_slave_ev_irq_handler(i2c_slave_t *i2c) {
89+
void i2c_slave_irq_handler(i2c_slave_t *i2c) {
9090
uint32_t isr = i2c->ISR;
9191
if (isr & I2C_ISR_ADDR) {
9292
// Address matched

ports/stm32/i2cslave.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ static inline uint8_t i2c_slave_read_byte(i2c_slave_t *i2c) {
9696
#endif
9797
}
9898

99-
void i2c_slave_ev_irq_handler(i2c_slave_t *i2c);
99+
void i2c_slave_irq_handler(i2c_slave_t *i2c);
100100

101101
// These should be provided externally
102102
int i2c_slave_process_addr_match(i2c_slave_t *i2c, int rw);

0 commit comments

Comments
 (0)