-
Notifications
You must be signed in to change notification settings - Fork 3k
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
TARGET_NRF: corrected spi_init() to properly handle re-initialization… #3842
Conversation
… on the same pins + minor editorial corrections.
@nvlsianpu @pan- @0xc0170 Have a look, please. |
LGTM |
The issue is more related to the lack of valid destructor (here). There is an From this standpoint, the existing code is correct and this patch is a workaround for a defect in mbed. |
@pan- Could you clarify whether we have to putt comment about workaround into code? |
corrected spi_init() to properly handle re-initialization… ARMmbed#3842
// times, what would be otherwise impossible in the current implementation | ||
// of mbed driver that does not call spi_free() from SPI destructor. | ||
// Once this mbed's imperfection is corrected, this block should be removed. | ||
for (i = 0; i < SPI_COUNT; ++i) { |
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.
@pan- +1 for the added comment?
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.
He confirmed :-)
/morph test |
Result: SUCCESSYour command has finished executing! Here's what you wrote!
OutputAll builds and test passed! |
corrected spi_init() to properly handle re-initialization… ARMmbed#3842
Ports for Upcoming Targets Fixes and Changes 3716: fix for issue #3715: correction in startup files for ARM and IAR, alignment of system_stm32f429xx.c files ARMmbed/mbed-os#3716 3741: STM32 remove warning in hal_tick_32b.c file ARMmbed/mbed-os#3741 3780: STM32L4 : Fix GPIO G port compatibility ARMmbed/mbed-os#3780 3831: NCS36510: SPISLAVE enabled (Conflict resolved) ARMmbed/mbed-os#3831 3836: Allow to redefine nRF's PSTORAGE_NUM_OF_PAGES outside of the mbed-os ARMmbed/mbed-os#3836 3840: STM32: gpio SPEED - always set High Speed by default ARMmbed/mbed-os#3840 3844: STM32 GPIO: Typo correction. Update comment (GPIO_IP_WITHOUT_BRR) ARMmbed/mbed-os#3844 3850: STM32: change spi error to debug warning ARMmbed/mbed-os#3850 3860: Define GPIO_IP_WITHOUT_BRR for xDot platform ARMmbed/mbed-os#3860 3880: DISCO_F469NI: allow the use of CAN2 instance when CAN1 is not activated ARMmbed/mbed-os#3880 3795: Fix pwm period calc ARMmbed/mbed-os#3795 3828: STM32 CAN API: correct format and type ARMmbed/mbed-os#3828 3842: TARGET_NRF: corrected spi_init() to properly handle re-initialization ARMmbed/mbed-os#3842 3843: STM32L476xG: set APB2 clock to 80MHz (instead of 40MHz) ARMmbed/mbed-os#3843 3879: NUCLEO_F446ZE: Add missing AnalogIn pins on PF_3, PF_5 and PF_10. ARMmbed/mbed-os#3879 3902: Fix heap and stack size for NUCLEO_F746ZG ARMmbed/mbed-os#3902 3829: can_write(): return error code when no tx mailboxes are available ARMmbed/mbed-os#3829
… on the same pins + minor editorial corrections.
Description
Each spi_init() call resulted in initialization of another SPI peripheral instance, whereas a previously used one should be utilized if initialization was done with the same pin assignments. Otherwise, code like tests-api-spi (with local SPI object created several times) has no chance to run correctly, at least unless SPI destructor calls spi_free().
Status
READY
Migrations
NO