Skip to content

[processing] Remove all Resumables and Protothreads #1285

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 22 commits into
base: develop
Choose a base branch
from

Conversation

salkinium
Copy link
Member

@salkinium salkinium commented Aug 16, 2025

Mostly mechanical refactorings.

  • Removal of all RF_* and PT_* macros in all drivers.
  • Removal of modm::ResumableResult<*> type
  • Removal of included resumable and protothread header files
  • Removal of :processing:resumable module dependencies.
  • Removal of nesting levels where possible
  • Compactify the I2cDevice write/read/writeRead functions
  • Replace timeouts with sleep_fors where possible
  • Refactor Protothread update() methods to simple polling functions
  • Replace *Blocking() functions with non-blocking ones
  • Fiberize AMNB protocol
  • Replace modm::delay* with this_fiber::sleep_for
  • Remove resumable implementations of SPI
  • XPCC postman is still using resumables and protothread, I'm pretty sure it doesn't even work correctly anymore since the fiber shim layer was defaulted, so it requires a rewrite.
  • Fix mock clock in tests needing to be functional for fiber sleep to work.

Testing:

  • lemme check what sensors I actually have
  • order some more sensors off Aliexpress

@salkinium salkinium added this to the 2025q3 milestone Aug 16, 2025
@salkinium salkinium force-pushed the feat/fiberize_drivers branch 14 times, most recently from 684eaea to 51ec232 Compare August 23, 2025 23:37
@salkinium salkinium force-pushed the feat/fiberize_drivers branch 4 times, most recently from 1f69567 to 51a86c1 Compare August 24, 2025 00:49
@salkinium salkinium force-pushed the feat/fiberize_drivers branch from 51a86c1 to c12d67b Compare August 24, 2025 09:19
@salkinium salkinium force-pushed the feat/fiberize_drivers branch from c12d67b to bd248dd Compare August 24, 2025 09:24
@salkinium salkinium force-pushed the feat/fiberize_drivers branch 2 times, most recently from 0999942 to bc3354a Compare August 24, 2025 16:24
@salkinium salkinium marked this pull request as ready for review August 24, 2025 16:30
@salkinium salkinium force-pushed the feat/fiberize_drivers branch 2 times, most recently from ee6ca09 to 72a8bb0 Compare August 24, 2025 18:08
@salkinium salkinium force-pushed the feat/fiberize_drivers branch from 72a8bb0 to 578a082 Compare August 24, 2025 19:52
@salkinium salkinium changed the title [drivers] Fiberizing drivers [processing] Remove all Resumables and Protothreads Aug 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

1 participant