aboutsummaryrefslogtreecommitdiff
path: root/embassy-stm32/src/dma/gpdma
Commit message (Collapse)AuthorAgeFilesLines
* Enable STM32N6 DMA and I2C clock sourcesLambert Sartory2025-12-111-1/+0
|
* GPDMA suspend channel before reset if already enabledAlbin Hedman2025-12-031-0/+5
|
* stm32: extract busychannel into common apixoviat2025-11-252-10/+11
|
* low power: store stop mode for dma channelsxoviat2025-11-212-9/+14
|
* cfg out unused itemseverdrone2025-11-111-0/+1
|
* Rustfmt for edition 2024.Dario Nieuwenhuis2025-10-062-3/+3
|
* fix: ping-pong helper DMA directionAdrian Figueroa2025-09-052-8/+21
|
* refactor: make dma implementations match in interfaceelagil2025-09-052-17/+11
|
* fix: consolidate namingelagil2025-09-052-15/+15
|
* fix: buildelagil2025-09-052-86/+29
|
* fix: renamed simple table as per ST nomenclatureetiennecollin2025-09-051-4/+4
| | | | Co-authored-by: elagil <[email protected]>
* fix: removed unnecessary mut referenceetiennecollin2025-09-051-3/+3
|
* feat: use register wrappers instead of u32 for LinearItemetiennecollin2025-09-051-15/+12
| | | | | | | Since the register structs are no-field structs with `repr(transparent)`, we can use them in the LinearItem with `repr(C)`. This allows the user to call the convenient named setter functions for the registers instead of manually changing the bits of the u32.
* feat: add new_with_table() initializer for ring-buffers and removal of ↵etiennecollin2025-09-053-71/+84
| | | | | | | | | | | | | | | | RegisterUpdaters - It is now possible to pass a linked-list table to the ring-buffer with the `new_with_table()` function or use the `new()` function for a basic ring-buffer setup. - A `simple_ring_buffer_table()` function was added to the read and write ring-buffers to generate the same table as the one created by `new()` in case the user only wants to customize the default table options. - RegisterUpdaters have been removed as the user now has direct access to the table and its items if needed. See: https://github.com/elagil/embassy/pull/1#issuecomment-2891997294
* fix: moved channel configuration from new() to start()etiennecollin2025-09-051-6/+4
| | | | | | See this PR comment explaining why configuration in `new()` is a bad idea: https://github.com/embassy-rs/embassy/pull/3923#issuecomment-2889193736
* fix: removed functions exposing channel registersetiennecollin2025-09-052-21/+0
| | | | These functions could be used to cause UB.
* feat: custom dma configuration using RegisterUpdaters structetiennecollin2025-09-053-7/+51
| | | | | See this PR comment: https://github.com/embassy-rs/embassy/pull/3923#issuecomment-2889283939
* fix: suspend before resetetiennecollin2025-09-051-0/+3
| | | | | This follows the procedure outlined in the STM32U5 reference manual at page 696.
* feat: use provided TransferOptions instead of defaultsetiennecollin2025-09-051-4/+4
|
* feat: custom DMA channel configurationetiennecollin2025-09-052-6/+27
| | | | | | | | | | See https://github.com/embassy-rs/embassy/pull/3923#issuecomment-2888810087 The default configuration of the channel which was done in `start()` is now done in `new()` this allows overriding some settings through the new `get_dma_channel` function. Only ringbuffers support this; `LinkedListTransfer` and `Transfer` do not support that yet.
* fix: writing reserved bitsetiennecollin2025-09-051-2/+20
|
* fix: modified dma channel state managementetiennecollin2025-09-052-43/+77
| | | | | See https://github.com/embassy-rs/embassy/pull/3923#discussion_r2094570176
* fix: docstringelagil2025-09-051-1/+1
|
* fix: simplifyelagil2025-09-051-18/+5
|
* fix: build issueselagil2025-09-052-17/+13
|
* feat: wip, write buffer in halveselagil2025-09-051-73/+11
|
* chore: change namingelagil2025-09-052-53/+45
|
* fix: wip gpdmaelagil2025-09-052-15/+16
|
* fix: load/store orderingelagil2025-09-052-6/+6
|
* fix: read transfer optionselagil2025-09-051-12/+7
|
* chore: clean up transfer optionselagil2025-09-053-36/+6
|
* fix: transfer optionselagil2025-09-052-1/+8
|
* fix: disable half-complete interruptelagil2025-09-051-2/+2
|
* style: formattingelagil2025-09-052-17/+11
|
* feat: ping-pong bufferselagil2025-09-053-16/+92
|
* feat: gpdma support (wip)elagil2025-09-053-91/+285
|
* feat: GPDAM linked-list + ringbuffer supportelagil2025-09-053-0/+1091