mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-02 11:10:54 +03:00
feat(gdma): expose interrupt priority as a configurable option
- Add intr_priority field to gdma_channel_t structure - Add intr_bind_name field to gdma_signal_conn_t for interrupt binding - Validate intr_priority during channel allocation (must be 0-3) - Use ESP_INTR_FLAG_SHARED_PRIVATE instead of ESP_INTR_FLAG_SHARED - Use esp_intr_alloc_info() with bind_by.name for shared interrupts - Add interrupt priority configuration test case - Update all gdma_periph.c files with pair-specific bind names (gdma_gXpY)
This commit is contained in:
@@ -13,22 +13,27 @@ const gdma_signal_conn_t gdma_periph_signals = {
|
||||
[0] = {
|
||||
.rx_irq_id = ETS_AHB_PDMA_IN_CH0_INTR_SOURCE,
|
||||
.tx_irq_id = ETS_AHB_PDMA_OUT_CH0_INTR_SOURCE,
|
||||
.name = "gdma_g0p0",
|
||||
},
|
||||
[1] = {
|
||||
.rx_irq_id = ETS_AHB_PDMA_IN_CH1_INTR_SOURCE,
|
||||
.tx_irq_id = ETS_AHB_PDMA_OUT_CH1_INTR_SOURCE,
|
||||
.name = "gdma_g0p1",
|
||||
},
|
||||
[2] = {
|
||||
.rx_irq_id = ETS_AHB_PDMA_IN_CH2_INTR_SOURCE,
|
||||
.tx_irq_id = ETS_AHB_PDMA_OUT_CH2_INTR_SOURCE,
|
||||
.name = "gdma_g0p2",
|
||||
},
|
||||
[3] = {
|
||||
.rx_irq_id = ETS_AHB_PDMA_IN_CH3_INTR_SOURCE,
|
||||
.tx_irq_id = ETS_AHB_PDMA_OUT_CH3_INTR_SOURCE,
|
||||
.name = "gdma_g0p3",
|
||||
},
|
||||
[4] = {
|
||||
.rx_irq_id = ETS_AHB_PDMA_IN_CH4_INTR_SOURCE,
|
||||
.tx_irq_id = ETS_AHB_PDMA_OUT_CH4_INTR_SOURCE,
|
||||
.name = "gdma_g0p4",
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -37,14 +42,17 @@ const gdma_signal_conn_t gdma_periph_signals = {
|
||||
[0] = {
|
||||
.rx_irq_id = ETS_AXI_PDMA_IN_CH0_INTR_SOURCE,
|
||||
.tx_irq_id = ETS_AXI_PDMA_OUT_CH0_INTR_SOURCE,
|
||||
.name = "gdma_g1p0",
|
||||
},
|
||||
[1] = {
|
||||
.rx_irq_id = ETS_AXI_PDMA_IN_CH1_INTR_SOURCE,
|
||||
.tx_irq_id = ETS_AXI_PDMA_OUT_CH1_INTR_SOURCE,
|
||||
.name = "gdma_g1p1",
|
||||
},
|
||||
[2] = {
|
||||
.rx_irq_id = ETS_AXI_PDMA_IN_CH2_INTR_SOURCE,
|
||||
.tx_irq_id = ETS_AXI_PDMA_OUT_CH2_INTR_SOURCE,
|
||||
.name = "gdma_g1p2",
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -53,10 +61,12 @@ const gdma_signal_conn_t gdma_periph_signals = {
|
||||
[0] = {
|
||||
.rx_irq_id = ETS_LP_AHB_PDMA_IN_CH0_INTR_SOURCE,
|
||||
.tx_irq_id = ETS_LP_AHB_PDMA_OUT_CH0_INTR_SOURCE,
|
||||
.name = "gdma_g2p0",
|
||||
},
|
||||
[1] = {
|
||||
.rx_irq_id = ETS_LP_AHB_PDMA_IN_CH1_INTR_SOURCE,
|
||||
.tx_irq_id = ETS_LP_AHB_PDMA_OUT_CH1_INTR_SOURCE,
|
||||
.name = "gdma_g2p1",
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user