Skip to content

DMA: dma.c in rp2_common does not take into account changes/additions of RP2350 #1986

@Manu3l0us

Description

@Manu3l0us

While checking out the SDK I found that the code in rp2_common/hardware_dma/dma.c does not support additional capabilities of the RP2350 DMA, e.g. on channel cleanup irq2 and irq3 are not disabled.

I would expect that the additional interrupts would also need to be included in the cleanup.

    // disable IRQs first as abort can cause spurious IRQs
    dma_channel_set_irq0_enabled(channel, false);
    dma_channel_set_irq1_enabled(channel, false);
    dma_channel_abort(channel);
    // finally clear the IRQ status, which may have been set during abort
    dma_hw->intr = 1u << channel;
}

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions