diff --git a/boards/nxp/frdm_mcxw71/doc/index.rst b/boards/nxp/frdm_mcxw71/doc/index.rst index a64514336330898..e53d3ed9b0c9e98 100644 --- a/boards/nxp/frdm_mcxw71/doc/index.rst +++ b/boards/nxp/frdm_mcxw71/doc/index.rst @@ -55,6 +55,8 @@ The ``frdm_mcxw71`` board target in Zephyr currently supports the following feat | LPUART | on-chip | serial port-polling; | | | | serial port-interrupt | +-----------+------------+-------------------------------------+ +| FMU | on-chip | flash | ++-----------+------------+-------------------------------------+ Programming and Debugging ************************* diff --git a/boards/nxp/frdm_mcxw71/frdm_mcxw71.dts b/boards/nxp/frdm_mcxw71/frdm_mcxw71.dts index 6577fe5ccca5e0f..6d48f571eee54aa 100644 --- a/boards/nxp/frdm_mcxw71/frdm_mcxw71.dts +++ b/boards/nxp/frdm_mcxw71/frdm_mcxw71.dts @@ -17,6 +17,7 @@ chosen { zephyr,flash = &flash; + zephyr,flash-controller = &fmu; zephyr,code-partition = &code_partition; zephyr,sram = &stcm0; zephyr,console = &lpuart1; @@ -60,3 +61,7 @@ }; }; }; + +&fmu { + status = "okay"; +}; diff --git a/dts/arm/nxp/nxp_mcxw71.dtsi b/dts/arm/nxp/nxp_mcxw71.dtsi index 51e529e483cc40d..ca40080e2f48133 100644 --- a/dts/arm/nxp/nxp_mcxw71.dtsi +++ b/dts/arm/nxp/nxp_mcxw71.dtsi @@ -67,13 +67,15 @@ peripheral: peripheral@50000000 { ranges = <0x0 0x50000000 0x10000000>; - fmu: flash-module@20000 { + fmu: memory-controller@20000 { ranges = <0x0 0x10000000 DT_SIZE_M(1)>; #address-cells = <1>; #size-cells = <1>; - compatible = "nxp,fmu-k4"; + compatible = "nxp,iap-msf1"; reg = <0x20000 0x1000>; + interrupts = <27 0>; + status = "disabled"; flash: flash@0 { reg = <0x0 DT_SIZE_M(1)>; diff --git a/soc/nxp/mcx/mcxw/Kconfig.defconfig b/soc/nxp/mcx/mcxw/Kconfig.defconfig index b57cb97a8ff98af..38c57f960f79e8b 100644 --- a/soc/nxp/mcx/mcxw/Kconfig.defconfig +++ b/soc/nxp/mcx/mcxw/Kconfig.defconfig @@ -9,4 +9,7 @@ config NUM_IRQS config SYS_CLOCK_HW_CYCLES_PER_SEC default 96000000 if CORTEX_M_SYSTICK +config MCUX_FLASH_K4_API + default y + endif # SOC_SERIES_MCXW