Since LPC devices use different power hardware, a separation is
required between device specific drivers and common drivers.
Signed-off-by: Andrei Gansari <andrei.gansari@nxp.com>
Rename function _PlatformInit() to z_platform_init() to
comply with naming conventions.
Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
Add mcux 2.5.0 drivers and device header files for mimxrt1015. Update
several drivers that were already imported for other SoCs but also apply
to mimxrt1015.
Origins: NXP MCUxpresso SDK 2.5.0
URL: mcuxpresso.nxp.com
Maintained-by: External
Signed-off-by: Ryan QIAN <jianghao.qian@nxp.com>
Updates the MCUXpresso SDK to version 2.5.0 for applicable SoCs.
Wireless (KW*) and legacy (KL25) SoCs were not included in this
MCUXpresso SDK release and are therefore not updated here.
New in this release is SoC-level and board-level support for external
xip flash in the i.MX RT family.
For RT1050, we are now using the MCUXpresso SDK for the EVKB version of
the board, which correponds to an upgrade from A0 to A1 silicon.
However, we don't yet have Kconfigs in place to support A1 silicon part
numbers, and therefore add a simple cmake hack to convert A0 part
numbers to A1 part numbers.
The SDK flash driver interface also changed slightly in this release,
and thus the zephyr flash shim driver is updated accordingly.
Origin: MCUXpresso SDK
License: BSD 3-Clause
URL: mcux.nxp.com
Purpose: Provide device header files and bare metal peripheral drivers
for Kinetis, LPC, and i.MX SoCs.
Maintained-by: External
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Add mcux 2.4.0 drivers and device header files for mimxrt1061 and
mimxrt1060. Updates several drivers that were already imported for
other SoCs but also apply to mimxrt1061 and mimxrt1062.
Origins: NXP MCUxpresso SDK 2.4.0
URL: mcuxpresso.nxp.com
Maintained-by: External
Signed-off-by: Ryan QIAN <jianghao.qian@nxp.com>
The instructions performed by standard Zephyr startup files are removed
from the file startup_LPC54114_cm4.S. Introduced the section
_PlatformInit which will be called when platform specific initialization
is needed.
Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
The new file startup_LPC54114_cm4.S is a copy of the file
devices/LPC54114/gcc/startup_LPC54114_cm4.S from mcux 2.3.0.
It contains platform specific initialization code for both cores.
Origin: NXP MCUXpresso SDK 2.3.0
URL: mcux.nxp.com
Maintained-by: External
Signed-off-by: Stanislav Poboril <stanislav.poboril@nxp.com>
We have never used the mcux clock_config.c/h files, so remove them. We
configure clocks in soc.c instead to allow more options with Kconfigs.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
We have been combining imported mcux drivers into a flattened directory
structure to maximize driver reuse, but the introduction of additional
nxp soc families (lpc and imx) to zephyr has introduced driver naming
conflicts. This caused us to rename and modify imported files, such as
fsl_gpio.c/h, to make them unique across all three nxp soc families.
This makes updating the the mcux drivers complicated, especially for the
lpc family.
Reoganize the mcux drivers into soc family subfolders, so we can just
copy all the drivers from an mcux distribution (which is done on an
soc-basis) into the appropriate soc family folder. Undo all of the
naming changes that occurred when lpc and imx drivers were originally
imported. Undo the accidental squashing of the kinetis watchdog and dcdc
drivers that occurred when the imx drivers were introduced.
The drawback to this approach is that we have duplicate files when the
same hw ip modules exist in multiple soc families, however there are
only few cases where this occurs, such as fsl_lpuart and fsl_trng.
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
- Debug code did not compile when level set to DEBUG.
- OpenThread has a define for BASE which conflicts with the BASE
field in MTB_Type defined in MKW41Z4.h. The change is consistent
with how it was handled in the KW41 port in OpenThread.
Signed-off-by: David Leach <david.leach@nxp.com>
Adds mcux 2.3.0 drivers and device header files for the mimxrt1051 and
mimxrt1052. Updates several drivers that were already imported for other
SoCs but also apply to the mimxrt1051 and mimxrt1052.
Origin: NXP MCUXpresso SDK 2.3.0
URL: mcux.nxp.com
Maintained-by: External
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Update KW40Z files for building XCVR driver by adding the required
includes, removing unneeded ones and replacing OSA_EnterCritical/
OSA_ExitCritical with OSA_InterruptDisable/OSA_InterruptEnable.
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
Import from Kinetis SDK v1.3 MKW40Z4_extension.h and fsl_bitaccess.h
which are needed to build the XCVR driver for KW40Z.
Origin: NXP Kinetis KW40Z Connectivity Software
Maintained-by: External
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
Reuses the kw41z clock driver for kw40z via preprocessor includes.
Copies the kw41z fsl_device_registers.h to kw40z and subset devices with
minor modifications for each device.
Jira: ZEP-1388
Change-Id: Ifae16eb9b7e7d18fc13c22dc51887fc1d8a5e21d
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Imports device header files for the kw40z and its subset devices (kw30z,
kw20z) from the Kinetis SDK 1.3. The kw40z has all the same peripherals
as the kw41z but less flash and ram, therefore we can use the MCUXpresso
SDK 2.x drivers for kw41z with the KSDK device header files for the
kw40z.
Origin: https://www.nxp.com/webapp/Download?colCode=KW40Z-CONNECTIVITY-SOFTWARE&appType=license&Parent_
Maintained-by: External
Jira: ZEP-1388
Change-Id: I30b283a0c9dd4f88b8c21c03814dcdff76b684c4
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Adds mcux 2.2 drivers and device header files for the kl25z. Updates
several drivers that were already imported for the kw41z but also apply
to kl25z.
Origin: NXP MCUXpresso SDK 2.2
URL: mcux.nxp.com
Maintained-by: External
Change-Id: Ifc9d70b79f25d8ba0c595a7ceb5881ff2fc0fbf7
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Imports the mcux device header files and peripheral drivers for the
kw41z and its subset devices (kw31z, kw21z). The subset devices are
included since they are released together with the kw41z by nxp, and to
avoid them getting out of sync in Zephyr if they were added later.
The kw41z shares several peripheral drivers with the k64f, so those
drivers are updated to the newer version released with the kw41z.
Origin: NXP Kinetis KW41Z Connectivity Software Linux(REV 1.0.2)
URL: https://www.nxp.com/webapp/Download?colCode=KW41Z-CONNECTIVITY-SOFTWARE-LIN&appType=license&Parent_nodeId=1441226359347708902175&Parent_pageType=product
Maintained-by: External
Jira: ZEP-1389
Change-Id: Id8e87f32b7afe01605e1e05b88addc547b2f5e21
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
Renames the Kinetis SDK (ksdk) to the MCUXpresso SDK (mcux) to reflect
the recent rebranding by NXP to include support for LPC and i.MX SoCs.
Temporarily leaves the config option HAS_KSDK to allow renaming each
shim driver in a separate commit.
Change-Id: I738f3687755fcd429a105e723fa25f1da815b519
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>