kinetis: Clean up SPI module power handling#9438
Merged
PeterKietzmann merged 1 commit intoRIOT-OS:masterfrom Jun 28, 2018
Merged
kinetis: Clean up SPI module power handling#9438PeterKietzmann merged 1 commit intoRIOT-OS:masterfrom
PeterKietzmann merged 1 commit intoRIOT-OS:masterfrom
Conversation
Fixes a problem with hardware CS when using slow SPI speeds, mentioned in RIOT-OS#6437 (comment)
Member
Author
|
Tested on Mulle with tests/lis3dh, and examples/gnrc_networking (at86rf2xx with modified configuration to use SPI_CLK_100KHZ for clocking) |
This was referenced Jun 27, 2018
Member
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.




Contribution description
Fixes a problem with hardware CS when using slow SPI speeds, mentioned in #6437 (comment)
The problem was identified as the module was being disabled before the CS line has been deasserted when using fast core clocks in combination with slow SPI speeds. By setting the HALT bit and waiting for the TXRXS status flag to become unset we allow the hardware to acknowledge that the transfer is completely finished and we can finally disable the module clocks.
Issues/PRs references
#6437