Skip to content
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

MarlinSPI part 1 #19989

Merged
merged 11 commits into from
Nov 7, 2020
Merged

Conversation

rhapsodyv
Copy link
Member

Description

Marlin currently needs 3 SPI class:

SPIClass:
This class normally is provide by the frameworks and have semi default interface.
We need this, because some libs reference it globally.
STM32F1 and LPC fully implements that class. But STM32 have this class provided by stm32duino.

SPISettings:
Hold spi configs for the SPIClass. Same problem about: lib may reference it globally.

MarlinSPI:
As those two classes are often provided by frameworks, we cannot alter it to add some
useful methods for marlin (like DMA transfers).

This is the reason, we need MarlinSPI. It provide the default SPIClass interface, plus some marlin goods.

This is the first version of that. The goal here is to have a full MarlinSPI class for STM32 and only one working code using it. This will fix compilation of W25QXXFlash for STM32.

My next step will be change its interface and to a more advanced use for TFT code, support async/sync.

Benefits

The start of MarlinSPI refactoring.

@rhapsodyv rhapsodyv force-pushed the marlin-spi-part-1 branch 2 times, most recently from 66465b5 to 7cce068 Compare November 1, 2020 21:57
@rhapsodyv rhapsodyv marked this pull request as ready for review November 1, 2020 23:24
@thinkyhead thinkyhead force-pushed the marlin-spi-part-1 branch 2 times, most recently from b25fa3d to b5bc89e Compare November 7, 2020 02:48
@thinkyhead thinkyhead merged commit 85d094b into MarlinFirmware:bugfix-2.0.x Nov 7, 2020
@rhapsodyv rhapsodyv deleted the marlin-spi-part-1 branch November 7, 2020 12:40
FhlostonParadise pushed a commit to FhlostonParadise/Marlin that referenced this pull request Nov 21, 2020
vgadreau pushed a commit to vgadreau/Marlin that referenced this pull request Dec 9, 2020
tharts pushed a commit to tharts/Marlin that referenced this pull request Jan 6, 2021
dpreed pushed a commit to dpreed/Marlin_2.0.x that referenced this pull request Feb 5, 2021
kpishere pushed a commit to kpishere/Marlin that referenced this pull request Feb 19, 2021
W4tel-BiDi pushed a commit to W4tel-BiDi/Marlin that referenced this pull request Apr 5, 2021
chrisjenda pushed a commit to chrisjenda/Marlin that referenced this pull request Apr 5, 2021
chrisjenda pushed a commit to chrisjenda/Marlin that referenced this pull request Apr 7, 2021
thinkyhead pushed a commit to thinkyhead/Marlin that referenced this pull request Apr 28, 2021
thinkyhead pushed a commit to thinkyhead/Marlin that referenced this pull request Apr 29, 2021
thinkyhead pushed a commit that referenced this pull request Apr 30, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants