Changelog Multicore Manager
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
Added
Added support to handle more then two cores. Breaking API change by adding parameter
coreNum
specifying core number in functions bellow.MCMGR_GetStartupData(uint32_t *startupData, mcmgr_core_t coreNum)
MCMGR_TriggerEvent(mcmgr_event_type_t type, uint16_t eventData, mcmgr_core_t coreNum)
MCMGR_TriggerEventForce(mcmgr_event_type_t type, uint16_t eventData, mcmgr_core_t coreNum)
typedef void (*mcmgr_event_callback_t)(uint16_t data, void *context, mcmgr_core_t coreNum);
When registering the event with function
MCMGR_RegisterEvent()
user now needs to providecallbackData
pointer to array of elements per every core in system (see README.md for example).In case of systems with only two cores thecoreNum
in callback can be ignored as events can arrive only from one core. Please see Porting guide for more details: PortingGuideTo_v5.mdUpdated all porting files to support new MCMGR API.
Added new platform specific include file
mcmgr_platform.h
. It will contain common platform specific macros that can be then used inmcmgr
and application. e.g. platform core countMCMGR_CORECOUNT 4
.Move all header files to new
inc
directory.Added new platform-specific include files
inc/platform/<platform_name>/mcmgr_platform.h
.
Added
Add MCXL20 porting layer and unit testing
[4.1.7]
Fixed
mcmgr_stop_core_internal()
function now returnskStatus_MCMGR_NotImplemented
status code instead ofkStatus_MCMGR_Success
when device does not support stop of secondary core. Ports affected:kw32w1
,kw45b41
,kw45b42
,mcxw716
,mcxw727
.
[v4.1.6]
Added
Multicore Manager moved to standalone repository.
Add porting layers for imxrt700, mcmxw727, kw47b42.
New MCMGR_ProcessDeferredRxIsr() API added.
[v4.1.5]
Added
Add notification into MCMGR_EarlyInit and mcmgr_early_init_internal functions to avoid using uninitialized data in their implementations.
[v4.1.4]
Fixed
Avoid calling tx isr callbacks when respective Messaging Unit Transmit Interrupt Enable flag is not set in the CR/TCR register.
Messaging Unit RX and status registers are cleared after the initialization.
[v4.1.3]
Added
Add porting layers for imxrt1180.
Fixed
mu_isr() updated to avoid calling tx isr callbacks when respective Transmit Interrupt Enable flag is not set in the CR/TCR register.
mcmgr_mu_internal.c code adaptation to new supported SoCs.
[v4.1.2]
Fixed
Update mcmgr_stop_core_internal() implementations to set core state to kMCMGR_ResetCoreState.
[v4.1.0]
Fixed
Code adjustments to address MISRA C-2012 Rules
[v4.0.3]
Fixed
Documentation updated to describe handshaking in a graphic form.
Minor code adjustments based on static analysis tool findings
[v4.0.2]
Fixed
Align porting layers to the updated MCUXpressoSDK feature files.
[v4.0.1]
Fixed
Code formatting, removed unused code
[v4.0.0]
Added
Add new MCMGR_TriggerEventForce() API.
[v3.0.0]
Removed
Removed MCMGR_LoadApp(), MCMGR_MapAddress() and MCMGR_SignalReady()
Modified
Modified MCMGR_GetStartupData()
Added
Added MCMGR_EarlyInit(), MCMGR_RegisterEvent() and MCMGR_TriggerEvent()
Added the ability for remote core monitoring and event handling
[v2.0.1]
Fixed
Updated to be Misra compliant.
[v2.0.0]
Added
Support for lpcxpresso54114 board.
[v1.1.0]
Fixed
Ported to KSDK 2.0.0.
[v1.0.0]
Added
Initial release.