Skip to content

Rp2040 - ISO API to make Audio work #2843#2844

Closed
pschatzmann wants to merge 1 commit into
hathach:testingfrom
pschatzmann:rp2040-iso
Closed

Rp2040 - ISO API to make Audio work #2843#2844
pschatzmann wants to merge 1 commit into
hathach:testingfrom
pschatzmann:rp2040-iso

Conversation

@pschatzmann
Copy link
Copy Markdown
Contributor

@pschatzmann pschatzmann commented Oct 15, 2024

Following the discussion that the RP2040 is missing the new ISO API, here is my take on it.
I added the 2 following methods

  • bool dcd_edpt_iso_alloc(uint8_t rhport, uint8_t ep_addr, uint16_t largest_packet_size)
  • bool dcd_edpt_iso_activate(uint8_t rhport, tusb_desc_endpoint_t const * p_endpoint_desc)

I was keeping the existing logic and I just needed to split up some functions to fit the new logic.

This is addressing this issue.
See #1802 (comment)

I hope that now only the following files will show up as changed:

  • tusb_mcu.h (to activate the ISO API)
  • dcd_rp2040.c (see above)
  • video_device.c (to correct a data cast error because ep_addr was defined as uint16_t instead of uint8_t)

I create a branch from testing and submitted to testing now!

@HiFiPhile
Copy link
Copy Markdown
Collaborator

Did some clean up same as #2845.

The logic looks like correct although I can't test it myself.

Please also reopen the PR merging into master branch.

@pschatzmann
Copy link
Copy Markdown
Contributor Author

Can you give some testing hints: are there some scenarios that I should watch for ?
So far I was just testing my audio sketches in Arduino using Audacity to make sure that the audio generation is stable and works properly together with Serial (CDC).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants