Multiple DMA reads with Termination
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- c
- Domain
- embedded-iot
Research direction
The issue names pioLib, pio_sm_config_xfer, pio_sm_xfer_data_rx, DMA, and PIO state-machine IRQs, but no source files or tests. Start by locating those transfer APIs and their DMA/IRQ handling, then determine the supported termination behavior for variable-length RX transfers and what documentation or API change would define completion.
Written by the indexing model from the issue text.
Description
I'm trying to use pioLib interface to receive variable length packets, using DMA. The protocol has CLK, 2 data pins and a frame sync. The issue I'm trying to understand is how to terminate the DMA FIFO read?
For example:
pio_sm_config_xfer(pio, sm, PIO_DIR_FROM_SM, 4096, 10));
//This would return number of RX bytes received
pio_sm_xfer_data_rx(static int rp1_pio_sm_xfer_data(PIO pio, uint sm, uint dir, uint data_bytes, void *data, uint &rxBytes);
in the PIO state machine, issue an IRQ terminate the DMA?
- Dominant language
- C
- Stars
- 346
- Forks
- 98
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from raspberrypi/utils
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
raspberrypi/utils#197 · 1 comment ·
-
Difficulty 1/5 Under an hour Newbie friendliness 62/100
raspberrypi/utils#147 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 42/100
raspberrypi/utils#159 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 38/100
raspberrypi/utils#158 · 3 comments ·
-
Difficulty 3/5 1-2 days Newbie friendliness 35/100
raspberrypi/utils#137 · 1 comment ·
All issues in raspberrypi/utils
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
zephyrproject-rtos/zephyr#119726 ·
-
[Bounty proposal] fix(web): memory insights count an evening memory on the next day ($25 proposed) Open
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
BasedHardware/omi#15320 ·
-
[adam] AdamNet network read doesn't cap to MAX_ADAM_PACKET_LEN, overflows client receive buffers Open
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
FujiNetWIFI/fujinet-firmware#1649 · 2 comments ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
HarbourMasters/Shipwright#7229 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
riscv-software-src/riscv-isa-sim#2435 · 1 comment ·