Freescale MQX™  4.1 GA Release

Document created by Enrique Ochoa Vazquez Employee on Feb 28, 2014
Version 1Show Document
  • View in full screen mode




The new Freescale MQX™ 4.1 GA release is now available on the



·         Files available







Freescale   MQX™ RTOS 4.1 Release Notes


Freescale   MQX RTOS 4.1

MQX™    Source code. Includes an RTOS, File System, TCP/IP and USB host/device   software stacks.


·         What is New?

o   New Board Support Package added

§  TWR-K21F120M

o   Vybrid-based board support packages for TWR-VF65GS10 and AutoEVB updated

§  Support of audio-related drivers extended--SAI, eSAI, and ASRC. Device driver for DSP Codec CS422888 added (AutoEVB only).

§  Support the Quadrature Decoder functionality in the FTM peripheral

§  Added eDMA driver

§  UART driver updated to use the eDMA

§  Clock management component ported

§  Added DCU driver

§  QSPI driver updated to support the FlashX framework

§  NAND FFS support added

o   DMA support in device drivers has been extended

§  Introduced new DMA device driver, supporting eDMA peripheral on Kinetis and Vybrid processor families

§  The SPI device driver was updated to support the new DMA driver

§  The SAI and eSAI audio drivers support DMA

§  eSDHC drivers were reworked to fully leverage the ADMA peripheral module

o   Driver updates

§  The LWADC driver has been ported to all supported board support packages. The support of the legacy ADC driver was discontinued.

§  The RTC driver was updated on all supported platforms. Provided generic, POSIX compatible API for time conversion functionality.

§  FlashX driver extended by handling Flash Swap functionality on Kinetis processors.

§  LP Timer module was added to the HW Timer framework. Its usage is demonstrated in the Low Power and HW Timer example applications

o   Standardization effort

§  Legacy MQX custom integer types were replaced by the Standard C99 set (int_32 -> int32_t, boolean -> bool, etc). A header file is provided with the set of backward compatible type definitions to make the transition to the new types easier. For more details, see Section 3.1 “C99 Types” in the Getting Started with Freescale MQX™ RTOS (document MQXGSRTOS).

§  The endian conversion macros were consolidated inside MQX. The htons, ntons and similar conversion functions were renamed to mqx_htons, mqx_nton to avoid a conflict with the standard.

o   NAND FFS library is no longer provided as a separate add in package but it is directly included as a part of MQX main package

o   RTCS new features and enhancements

§  The MQX TCP/IP stack is now available with an optional package to enable the IPv6 protocol support. For more information visit

§  The FTP server was redesigned to provide faster and more stable implementation.

§  The DNS resolver was updated.

o   USB

§  Fixed several EHCI related bugs (HUB, pipe close, audio example)

o   MQX startup is now split in two parts to avoid a crash risk if an interrupt occurs during the startup.

§  _bsp_enable_card() function has been replaced by the _bsp_pre_init() function that handles initialization of the OS vital functions, such as the timer (system tick), interrupt controller, memory management, etc. The _bsp_pre_init() function is called during the MQX initialization time, before any user task is created and the scheduler is not started.

§  The second part of the startup is done in a separate _mqx_init_task that executes _bsp_init() function for I/O drivers or stacks initialization and _bsp_post_init() function for possible post-init operations. After the _bsp_post_init() function execution, the _mqx_init_task is destroyed.

o   All BSPs are now adjusted to this concept. All I/O drivers are installed in the context of the _mqx_init_task after the MQX scheduler is started. This concept also allows a complex driver installation (handling ISRs during the driver initialization, drivers can use blocking functionality like _time_delay, etc.).


·         Known issues

o   For known issues and limitations please consult the release notes.