README
1MCUXpresso SDK
2##############
3
4Origin:
5 NXP MCUXpresso SDK
6 https://github.com/NXPmicro/mcux-sdk
7
8 NXP Kinetis Connectivity Software
9 https://www.nxp.com/webapp/Download?colCode=KW40Z-CONNECTIVITY-SOFTWARE&appType=license&Parent_nodeId=1432854896956716810497&Parent_pageType=product
10 https://www.nxp.com/webapp/Download?colCode=MKW2XD-MRC20A-CONNECTIVITY-SW&appType=license&Parent_nodeId=1425322332576706617013&Parent_pageType=productI
11
12 NXP MCUXpresso SDK USB
13 https://github.com/NXPmicro/mcux-sdk-middleware-usb
14
15Status:
16 Some older Kinetis W family SoCs are not supported in MCUXpresso SDK, but
17 instead are supported by the Kinetis Connectivity Software. This
18 distribution is based on the same Kinetis SDK (ksdk) that MCUXpresso SDK
19 evolved from. These older SoCs have many of the same peripherals as KW41Z,
20 so we can reuse newer MCUXpresso SDK drivers from KW41Z, and import only the
21 SoC header files from the Kinetis Connectivity Software.
22
23 SoC Version (Release Date)
24 ----------------------------------------------------------------------------
25 MCR20A 1.0.0
26 MKW20Z4 1.0.1 (2015-12-10)
27 MKW30Z4 1.0.1 (2015-12-10)
28 MKW40Z4 1.0.1 (2015-12-10)
29
30Purpose:
31 Provides device header files and bare metal peripheral drivers for Kinetis,
32 LPC, and i.MX SoCs. Zephyr shim drivers are built on top of these imported
33 drivers to adapt the MCUXpresso SDK APIs to Zephyr APIs.
34
35Description:
36 This package is cloned from the Github for mcux-sdk. The cloned package is then copied and committ'ed
37 into NXP's Zephyr HAL. Care should be taken to retain local changes to the SDK files that are documented
38 in Patch List section of the document.
39
40Dependencies:
41 CMSIS header files
42
43URL:
44 https://github.com/NXPmicro/mcux-sdk
45 https://www.nxp.com/webapp/Download?colCode=KW40Z-CONNECTIVITY-SOFTWARE&appType=license&Parent_nodeId=1432854896956716810497&Parent_pageType=product
46 https://www.nxp.com/webapp/Download?colCode=MKW2XD-MRC20A-CONNECTIVITY-SW&appType=license&Parent_nodeId=1425322332576706617013&Parent_pageType=productI
47
48commit:
49 N/A
50
51Maintained-by:
52 External
53
54License:
55 BSD-3-Clause
56
57License Link:
58 https://spdx.org/licenses/BSD-3-Clause.html
59
60Patch List:
61 1. Delete the .a binary archive files after an SDK update before committing the changes. These files are still present in the SDK github repo but have been
62 deleted from the Zephyr HAL
63 2. mcux-sdk/drivers/caam/fsl_caam.c: Move used job descriptors in the CAAM driver from the stack to noncacheable section. At time of writing, there should
64 be four being used for entropy in zephyr.
65 3. mcux-sdk/drivers/flexcan/fsl_flexcan.c: Fixed flexcan_fd_frame being written into/written from the message buffer in the flexcan driver. On the
66 write side, the EDL bit is now utilized for selection of can frame type and on the receiver side, the EDL and BRS status are read from the message
67 buffer.
68 4. Add device_system cmake definitions for the following SOCs: MKL25Z4, MK82F25615, MKW24D5, MKW40Z4, MKW41Z4
69 5. Fixed the FlexCAN driver to propagate kStatus_FLEXCAN_RxOverflow mailbox status when using the FlexCAN driver transactional APIs.
70 6. Fixed fsl_caam.c: CAAM_RNG_GetRandomDataNonBlocking() to not force a reseed with each request. Internal bug submitted [MCUX-57074]
71 7. fsl_common.h: add #ifdef ZEPHYR #endif to include Zephyr's sys utils
72 8. mcux-sdk/drivers/flexcomm/fsl_i2c.c & fsl_i2c.h: patch to fix Zephyr bug #57858. The changes will be part of the next official NXP SDK release.
73