-
Notifications
You must be signed in to change notification settings - Fork 3k
Provide enablement of nrf52840 SPIM #13397
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
Conversation
This reverts commit dec6e36.
@winneymj, thank you for your changes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are not changing default behavior as it is now (I do not see changes in sdk_config file), it is NRFX_SPI_ENABLED, is that correct?
What is the reason for adding SPIM?
The reason I want SPIM is that the regular SPI on nrf52 chips is limited to 8Mhz.
SPIM (instance 3) can go upto 32Mhz. This is really nice when using an SPI display to get a fast refresh rate.
You can see the extra SPIM frequencies at the https://github.com/winneymj/mbed-os/blob/5249a9ad31806dfd42a934dbc369ed40d1ff2bcc/targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF52/spi_api.c#L440
I left the sdk_config.h file alone and defaulted to NFRX_SPI_ENABLED. Did not want to switch this on unless someone really needed it.
I have enabled the NFRX_SPIM_ENABLED on my other branches to make sure it works.
The SPI master implements EasyDMA for reading and writing of data packets from and to the DATA RAM without CPU involvement.
More information on nrf52 SPIM can be found here: https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52832.ps.v1.1%2Fspim.html&cp=2_1_0_30&anchor=concept_j35_hv2_wr
Thanks
Mark
…On Mon, Aug 10, 2020 at 4:14 AM Martin Kojtal ***@***.***> wrote:
***@***.**** commented on this pull request.
We are not changing default behavior as it is now (I do not see changes in
sdk_config file), it is NRFX_SPI_ENABLED, is that correct?
What is the reason for adding SPIM?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#13397 (review)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABK26BHZ6322ZASHRXY4H2DR763ABANCNFSM4PXCYQLQ>
.
|
Hi,
After reading email again I just wanted to let you know that I am not adding SPIM to mbed, it already exists...I am just allowing it be compiled and executed by enabling the feature in the sdk_config.h
Thanks
Mark
…On Mon, Aug 10, 2020 at 8:04 AM Mark Winney ***@***.***> wrote:
The reason I want SPIM is that the regular SPI on nrf52 chips is limited
to 8Mhz.
SPIM (instance 3) can go upto 32Mhz. This is really nice when using an
SPI display to get a fast refresh rate.
You can see the extra SPIM frequencies at the
https://github.com/winneymj/mbed-os/blob/5249a9ad31806dfd42a934dbc369ed40d1ff2bcc/targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF52/spi_api.c#L440
I left the sdk_config.h file alone and defaulted to NFRX_SPI_ENABLED. Did
not want to switch this on unless someone really needed it.
I have enabled the NFRX_SPIM_ENABLED on my other branches to make sure it
works.
The SPI master implements EasyDMA for reading and writing of data packets
from and to the DATA RAM without CPU involvement.
More information on nrf52 SPIM can be found here:
https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52832.ps.v1.1%2Fspim.html&cp=2_1_0_30&anchor=concept_j35_hv2_wr
Thanks
Mark
On Mon, Aug 10, 2020 at 4:14 AM Martin Kojtal ***@***.***>
wrote:
> ***@***.**** commented on this pull request.
>
> We are not changing default behavior as it is now (I do not see changes
> in sdk_config file), it is NRFX_SPI_ENABLED, is that correct?
>
> What is the reason for adding SPIM?
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub
> <#13397 (review)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/ABK26BHZ6322ZASHRXY4H2DR763ABANCNFSM4PXCYQLQ>
> .
>
|
Ci started |
Jenkins CI Test : ❌ FAILEDBuild Number: 1 | 🔒 Jenkins CI Job | 🌐 Logs & ArtifactsCLICK for Detailed Summary
|
Please review build logs, there are build errors:
|
CI started |
Jenkins CI Test : ✔️ SUCCESSBuild Number: 2 | 🔒 Jenkins CI Job | 🌐 Logs & ArtifactsCLICK for Detailed Summary
|
CI started |
Jenkins CI Test : ✔️ SUCCESSBuild Number: 3 | 🔒 Jenkins CI Job | 🌐 Logs & ArtifactsCLICK for Detailed Summary
|
Just for the record, the commits should have been squashed before merging. The line-by-line git history is messed up with these commits. |
Furthermore, |
Summary of changes
Currently SPIM code exists in TARGET_SDK_15 for the nrf52840 but is not available to execute in Mbed.
These changes allow the developer to enable SPIM through the configuration file:
mbed-os\targets\TARGET_NORDIC\TARGET_NRF5x\TARGET_NRF52\TARGET_MCU_NRF52840\config\sdk_config.h
Enable the NRFX_SPIM_ENABLED, and because SPI and SPIM use the same hardware, disable the NRFX_SPI_ENABLED
Impact of changes
Migration actions required
Documentation
None that I can see. Would be nice to find a section where I could mention SPIM enabling.
Pull request type
Test results
Reviewers