1MCUXpresso SDK 2############## 3 4Origin: 5 NXP MCUXpresso SDK 6 https://github.com/nxp-mcuxpresso/mcux-sdk 7 SHA: cc77cb1006ad2226fe45f0431e85add0fcd891d8 8 9 NXP Kinetis Connectivity Software 10 https://www.nxp.com/webapp/Download?colCode=KW40Z-CONNECTIVITY-SOFTWARE&appType=license&Parent_nodeId=1432854896956716810497&Parent_pageType=product 11 https://www.nxp.com/webapp/Download?colCode=MKW2XD-MRC20A-CONNECTIVITY-SW&appType=license&Parent_nodeId=1425322332576706617013&Parent_pageType=productI 12 13 NXP MCUXpresso SDK USB 14 https://github.com/nxp-mcuxpresso/mcux-sdk-middleware-usb 15 SHA: e0f1fc8488508db2f92ae454f4378513d96e83e2 16 SDK 2.16.000 merge 17 18 NXP MCUXpresso SDK Connectivity Framework 19 https://github.com/nxp-mcuxpresso/mcux-sdk-middleware-connectivity-framework 20 TAG: MCUX_2.15.000_RW610_RC1 - MCUX_2.16.000(For connected_mcu platform files used by MCXW71) 21 22 NXP MCUXpresso SDK Multicore middleware 23 https://github.com/nxp-mcuxpresso/mcux-sdk-middleware-multicore 24 TAG: MCUX_2.16.000 25 26 RPMsg Component 27 https://github.com/nxp-mcuxpresso/rpmsg-lite 28 TAG: v5.1.2 29 30 NXP MCUXpresso SDK secure subsystem 31 https://github.com/nxp-mcuxpresso/mcux-secure-subsystem 32 TAG: MCUX_2.16.000 33 34 NXP MCUXpresso SDK ieee_802.15.4 middleware 35 https://github.com/nxp-mcuxpresso/mcuxsdk-middleware-ieee_802.15.4 36 TAG: MCUX_2.16.000 37 38Status: 39 Some older Kinetis W family SoCs are not supported in MCUXpresso SDK, but 40 instead are supported by the Kinetis Connectivity Software. This 41 distribution is based on the same Kinetis SDK (ksdk) that MCUXpresso SDK 42 evolved from. These older SoCs have many of the same peripherals as KW41Z, 43 so we can reuse newer MCUXpresso SDK drivers from KW41Z, and import only the 44 SoC header files from the Kinetis Connectivity Software. 45 46 SoC Version (Release Date) 47 ---------------------------------------------------------------------------- 48 MCR20A 1.0.0 49 MKW20Z4 1.0.1 (2015-12-10) 50 MKW30Z4 1.0.1 (2015-12-10) 51 MKW40Z4 1.0.1 (2015-12-10) 52 53Purpose: 54 Provides device header files and bare metal peripheral drivers for Kinetis, 55 LPC, and i.MX SoCs. Zephyr shim drivers are built on top of these imported 56 drivers to adapt the MCUXpresso SDK APIs to Zephyr APIs. 57 58Description: 59 This package is cloned from the Github for mcux-sdk. The cloned package is then copied and committ'ed 60 into NXP's Zephyr HAL. Care should be taken to retain local changes to the SDK files that are documented 61 in Patch List section of the document. 62 63Dependencies: 64 CMSIS header files 65 66URL: 67 https://github.com/NXPmicro/mcux-sdk 68 https://www.nxp.com/webapp/Download?colCode=KW40Z-CONNECTIVITY-SOFTWARE&appType=license&Parent_nodeId=1432854896956716810497&Parent_pageType=product 69 https://www.nxp.com/webapp/Download?colCode=MKW2XD-MRC20A-CONNECTIVITY-SW&appType=license&Parent_nodeId=1425322332576706617013&Parent_pageType=productI 70 71commit: 72 N/A 73 74Maintained-by: 75 External 76 77License: 78 BSD-3-Clause 79 80License Link: 81 https://spdx.org/licenses/BSD-3-Clause.html 82 83Patch List: 84 - 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 85 be four being used for entropy in zephyr. 86 87 - Patched middleware\mcux-sdk-middleware-usb\middleware_usb_common_header.cmake to remove "#include(component_osa)". PR submitted to upstream 88 89 - exclude the following directories and files from mcux-sdk update to reduce HAL size: 90 - All *.a binary archive files. Files are still present in the SDK github repo but are not allowed in Zephyr Project 91 - mcux-sdk\manifests 92 - mcux-sdk\docs 93 - devices\KW45* 94 - devices\K32W* 95 - devices\MIMX9301 through MIMX9351 96 - devices\MIMX9596 97 98 - Add usb_device_mcux_drv_port.h file for using MCUX SDK USB device controller driver easily in Zephyr. 99 - usb_device_mcux_drv_port.h contains the simplified structs, enums and APIs that MCUX SDK USB device controller drivers need. 100 - Update usb_device_ehci.c and usb_device_lpcip3511.c if in Zephyr environment. 101 - Add include of usb_device_mcux_drv_port.h. 102 - Remove include of usb_device.h and usb_device_dci.h. 103 104 - mcux-sdk-middleware-connectivity-framework: Add new CMake file connectivity_framework.cmake 105 - mcux-sdk-middleware-connectivity-framework: rw61x: Fix assertion OSA Mutex Alloc fail 106 - mcux-sdk-middleware-connectivity-framework: rw61x: Remove static from hci_cal_data buffers to be used inside Zephyr 107 - mcux-sdk-middleware-connectivity-framework: connected_mcu: Modified to remove a large amount of dependencies and adapt code to be supported with Zephyr 108 - Patched mcux-sdk\components\conn_fwloader\mcux-sdk\components\conn_fwloader\driver_conn_fwloader.cmake for TFM support 109 - mcux-sdk/drivers/s3mu/fsl_s3mu.c: rename _BIT macro to avoid collision from util_macro.h in Zephyr 110 - Modifed mcux\mcux-sdk\drivers\mipi_dsi_split\fsl_mipi_dsi.c line 541 to force 8.0 to float (8.0f) to avoid [-Double-promotion] warning 111 - Wrap conditional code setting SCB->VTOR with !defined(__ZEPHYR__) in system c files of the following parts: 112 - MCXN94x family 113 - MCXA14x family 114 - MCXA15x family 115 - MCXN23x family 116 - add kUSB_DeviceNotifySOF to usb_device_mcux_drv_port.h SDK USB stack already supports it in SDK 2.16.0 117 - mcux-sdk/drivers/adc12/fsl_adc12.c: add guards to avoid compilation warnings when building 118 with SDK clock control driver disabled. 119 - Update the driver in mcux-sdk/drivers/cache/cache64/fsl_cache.c to use the non-secure flash address during cache invalidation. 120 - mcux-sdk/drivers/flexcan/fsl_flexcan.c and mcux-sdk/drivers/flexcan/fsl_flexcan.h: add the guards for unsupport features on S32Z27x devices 121 - drivers: edma_rev2: drop grouping of EDMA register indexes 122 - drivers: edma_rev2: support MUX register in MP space 123 - drivers: edma_rev2: support 64-bit TCD registers 124 - devices: MIMX9596: add EDMA rev2 soc layer definition 125 - Add missing CMAKE files device_system.cmake device_CMSIS.cmake and drivers/driver_reset.cmake to MCXW716C. 126 - Add missing CMAKE file to ccm32k driver driver_ccm32k.cmake. 127 - Add missing CMAKE file to flash_k4 driver driver_flash_k4.cmake. 128 - Add missing CMAKE file to spc driver driver_spc.cmake 129 - mcux-sdk/drivers/dspi/fsl_dspi.c, mcux-sdk/drivers/dspi/fsl_dspi.h, mcux-sdk/drivers/dspi/fsl_dspi_edma.c, 130 mcux-sdk/drivers/dspi/fsl_dspi_edma.h: add the guards for unsupport features on S32Z27x devices 131 - drivers: irqsteer: adjust CHn_MASK index computation 132 - mcux-sdk/drivers/cache/cache64/fsl_cache.c: remove invalid assertion when 133 CACHE64_GetInstanceByAddr() is passed an address not managed by the CACHE64 134 controller 135 - drivers: edma_rev2: add macro for CHn_CSR's ACTIVE bit 136 - drivers: rtwdog: Fix the issue that driver doesn't wait the over status after CS register operation 137 - drivers: elemu: undefine BIT macro to avoid collision from util_macro.h in Zephyr 138 - mcux-sdk-middleware-ieee_802.15.4: adapt code to be supported with Zephyr 139 - mcux-sdk-middleware-usb: Disable the control endpoint ZLT (Zero Length Transaction) of MCUX hal USB controller drivers 140 (usb_device_ehci.c and usb_device_lpcip3511.c) in Zephyr environment. 141