Skip to content

Commit 7ed7cd1

Browse files
ZhaoxiangJinkartben
authored andcommitted
modules: hal_nxp: Move hal_nxp glue layer to zephyr repo
Move hal_nxp glue layer to zephyr repo. Fix build warnings and failures caused by hal_nxp upgrade. Update manifest to contain hal_nxp changes. Signed-off-by: Zhaoxiang Jin <[email protected]>
1 parent 916897f commit 7ed7cd1

File tree

48 files changed

+1394
-69
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+1394
-69
lines changed

MAINTAINERS.yml

-3
Original file line numberDiff line numberDiff line change
@@ -5006,9 +5006,6 @@ West:
50065006
- bperseghetti
50075007
files:
50085008
- modules/hal_nxp/
5009-
- modules/Kconfig.imx
5010-
- modules/Kconfig.mcux
5011-
- modules/Kconfig.nxp_s32
50125009
labels:
50135010
- "platform: NXP"
50145011

boards/nxp/mimxrt1010_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
2020
zephyr_compile_definitions(XIP_BOOT_HEADER_ENABLE=1)
2121
zephyr_compile_definitions(BOARD_FLASH_SIZE=CONFIG_FLASH_SIZE*1024)
2222
set(RT1010_BOARD_DIR
23-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt1010")
23+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt1010")
2424
zephyr_library_sources(${RT1010_BOARD_DIR}/xip/evkmimxrt1010_flexspi_nor_config.c)
2525
zephyr_library_include_directories(${RT1010_BOARD_DIR}/xip)
2626
endif()

boards/nxp/mimxrt1015_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
1919
zephyr_compile_definitions(XIP_BOOT_HEADER_ENABLE=1)
2020
zephyr_compile_definitions(BOARD_FLASH_SIZE=CONFIG_FLASH_SIZE*1024)
2121
set(RT1015_BOARD_DIR
22-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt1015")
22+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt1015")
2323
zephyr_library_sources(${RT1015_BOARD_DIR}/xip/evkmimxrt1015_flexspi_nor_config.c)
2424
zephyr_library_include_directories(${RT1015_BOARD_DIR}/xip)
2525
endif()

boards/nxp/mimxrt1020_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
1313
"update your flash configuration or device configuration data blocks")
1414
endif()
1515
set(RT1020_BOARD_DIR
16-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt1020")
16+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt1020")
1717
if(CONFIG_BOOT_FLEXSPI_NOR)
1818
# Include flash configuration block for RT1020 EVK from NXP's HAL.
1919
# This configuration block may need modification if another flash chip is

boards/nxp/mimxrt1024_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
1313
"update your flash configuration or device configuration data blocks")
1414
endif()
1515
set(RT1024_BOARD_DIR
16-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt1024")
16+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt1024")
1717
if(CONFIG_BOOT_FLEXSPI_NOR)
1818
# Include flash configuration block for RT1024 EVK from NXP's HAL.
1919
# This configuration block may need modification if another flash chip is

boards/nxp/mimxrt1040_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
1818
"update your flash configuration or device configuration data blocks")
1919
endif()
2020
set(RT1040_BOARD_DIR
21-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt1040")
21+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt1040")
2222
if(CONFIG_BOOT_FLEXSPI_NOR)
2323
# Include flash configuration block for RT1040 EVK from NXP's HAL.
2424
# This configuration block may need modification if another flash chip is

boards/nxp/mimxrt1050_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
2424
set(FLASH_CONF evkbimxrt1050_flexspi_nor_config.c)
2525
endif()
2626
set(RT1050_BOARD_DIR
27-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkbimxrt1050")
27+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkbimxrt1050")
2828
if(CONFIG_BOOT_FLEXSPI_NOR)
2929
# Include flash configuration block for RT1050 EVK from NXP's HAL.
3030
# This configuration block may need modification if another flash chip is

boards/nxp/mimxrt1060_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
3333
set(BOARD_NAME evkbmimxrt1060)
3434
endif()
3535
set(RT1060_BOARD_DIR
36-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/${BOARD_NAME}")
36+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/${BOARD_NAME}")
3737
if(CONFIG_BOOT_FLEXSPI_NOR)
3838
# Include flash configuration block for RT1060 EVK from NXP's HAL.
3939
# This configuration block may need modification if another flash chip is

boards/nxp/mimxrt1062_fmurt6/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
1414
set(BOARD_NAME evkbimxrt1050)
1515
endif()
1616
set(RT1062_BOARD_DIR
17-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/${BOARD_NAME}")
17+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/${BOARD_NAME}")
1818
if(CONFIG_BOOT_FLEXSPI_NOR)
1919
# Include flash configuration block for RT1050 EVK from NXP's HAL.
2020
# This configuration block may need modification if another flash chip is

boards/nxp/mimxrt1064_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
1818
"update your flash configuration or device configuration data blocks")
1919
endif()
2020
set(RT1064_BOARD_DIR
21-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt1064")
21+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt1064")
2222
if(CONFIG_BOOT_FLEXSPI_NOR)
2323
# Include flash configuration block for RT1064 EVK from NXP's HAL.
2424
# This configuration block may need modification if another flash chip is

boards/nxp/mimxrt1160_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
1313
"update your flash configuration or device configuration data blocks")
1414
endif()
1515
set(RT1160_BOARD_DIR
16-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt1160")
16+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt1160")
1717
if(CONFIG_BOOT_FLEXSPI_NOR)
1818
# Include flash configuration block for RT1160 EVK from NXP's HAL.
1919
# This configuration block may need modification if another flash chip is

boards/nxp/mimxrt1170_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
1818
set(RT1170_BOARD_NAME "evkbmimxrt1170")
1919
endif()
2020
set(RT1170_BOARD_DIR
21-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/${RT1170_BOARD_NAME}")
21+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/${RT1170_BOARD_NAME}")
2222
if(CONFIG_BOOT_FLEXSPI_NOR)
2323
# Include flash configuration block for RT1170 EVK from NXP's HAL.
2424
# This configuration block may need modification if another flash chip is

boards/nxp/mimxrt1180_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
1515
"update your flash configuration or device configuration data blocks")
1616
endif()
1717
set(RT1180_BOARD_DIR
18-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt1180")
18+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt1180")
1919
if(CONFIG_BOOT_FLEXSPI_NOR)
2020
# Include flash configuration block for RT1180 EVK from NXP's HAL.
2121
# This configuration block may need modification if another flash chip is

boards/nxp/mimxrt1180_evk/board.cmake

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
#
66

77
set(RT1180_BOARD_DIR
8-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt1180")
8+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt1180")
99
# Note1: Suggest developers use Secure Provisioning Tool(SPT) to download RT1180 image
1010
# SPT can be downloaded on NXP web: https://www.nxp.com/design/design-center/software/development-software/mcuxpresso-software-and-tools-/mcuxpresso-secure-provisioning-tool:MCUXPRESSO-SECURE-PROVISIONING
1111
# Details about the usage of SPT on MIMXRT1180-EVK board can be referred on chapter 7 of getting start with Mcuxpresso SDK for MIMXRT1180-EVK doc in SDK package.

boards/nxp/mimxrt595_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
2222
zephyr_compile_definitions(BOOT_HEADER_ENABLE=1)
2323
zephyr_compile_definitions(BOARD_FLASH_SIZE=CONFIG_FLASH_SIZE*1024)
2424
set(RT595_BOARD_DIR
25-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt595")
25+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt595")
2626
zephyr_library_sources(${RT595_BOARD_DIR}/flash_config/flash_config.c)
2727
zephyr_library_include_directories(${RT595_BOARD_DIR}/flash_config)
2828
endif()

boards/nxp/mimxrt685_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
2121
zephyr_compile_definitions(BOOT_HEADER_ENABLE=1)
2222
zephyr_compile_definitions(BOARD_FLASH_SIZE=CONFIG_FLASH_SIZE*1024)
2323
set(RT685_BOARD_DIR
24-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt685")
24+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt685")
2525
zephyr_library_sources(${RT685_BOARD_DIR}/flash_config/flash_config.c)
2626
zephyr_library_include_directories(${RT685_BOARD_DIR}/flash_config)
2727
endif()

boards/nxp/mimxrt700_evk/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ if(CONFIG_NXP_IMXRT_BOOT_HEADER)
2222
zephyr_compile_definitions(BOOT_HEADER_ENABLE=1)
2323
zephyr_compile_definitions(BOARD_FLASH_SIZE=CONFIG_FLASH_SIZE*1024)
2424
set(RT7XX_BOARD_DIR
25-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/mimxrt700evk")
25+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/mimxrt700evk")
2626
zephyr_library_sources(${RT7XX_BOARD_DIR}/flash_config/flash_config.c)
2727
zephyr_library_include_directories(${RT7XX_BOARD_DIR}/flash_config)
2828
endif()

boards/nxp/vmu_rt1170/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
if(CONFIG_NXP_IMXRT_BOOT_HEADER)
88
zephyr_library()
99
set(RT1170_BOARD_DIR
10-
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk/boards/evkmimxrt1170")
10+
"${ZEPHYR_HAL_NXP_MODULE_DIR}/mcux/mcux-sdk-ng/boards/evkmimxrt1170")
1111
if(CONFIG_BOOT_FLEXSPI_NOR)
1212
# Include flash configuration block for RT1170 EVK from NXP's HAL.
1313
# This configuration block may need modification if another flash chip is

drivers/comparator/Kconfig.mcux_acmp

-1
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,3 @@ config COMPARATOR_MCUX_ACMP
66
default y
77
depends on DT_HAS_NXP_KINETIS_ACMP_ENABLED
88
select PINCTRL
9-
select MCUX_ACMP

drivers/dma/dma_mcux_smartdma.c

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2023 NXP
2+
* Copyright 2023, 2025 NXP
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*/
@@ -13,7 +13,6 @@
1313
#include <soc.h>
1414
#include <fsl_smartdma.h>
1515
#include <fsl_inputmux.h>
16-
#include <fsl_power.h>
1716

1817
#define DT_DRV_COMPAT nxp_smartdma
1918

drivers/sensor/nxp/mcux_acmp/Kconfig

-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ config SENSOR_MCUX_ACMP
99
default y
1010
depends on DT_HAS_NXP_KINETIS_ACMP_ENABLED
1111
select PINCTRL
12-
select MCUX_ACMP
1312
help
1413
Enable driver for the NXP MCUX Analog Comparator (ACMP).
1514

modules/Kconfig

+3-3
Original file line numberDiff line numberDiff line change
@@ -26,16 +26,13 @@ source "modules/Kconfig.chre"
2626
source "modules/Kconfig.cypress"
2727
source "modules/Kconfig.eos_s3"
2828
source "modules/Kconfig.esp32"
29-
source "modules/Kconfig.imx"
3029
source "modules/Kconfig.infineon"
3130
source "modules/Kconfig.libmetal"
3231
source "modules/lvgl/Kconfig"
33-
source "modules/Kconfig.mcux"
3432
source "modules/Kconfig.microchip"
3533
source "modules/Kconfig.nuvoton"
3634
source "modules/Kconfig.open-amp"
3735
source "modules/Kconfig.picolibc"
38-
source "modules/Kconfig.nxp_s32"
3936
source "modules/Kconfig.renesas_fsp"
4037
source "modules/Kconfig.rust"
4138
source "modules/Kconfig.simplelink"
@@ -72,6 +69,9 @@ comment "hal_gigadevice module not available."
7269
comment "hal_nordic module not available."
7370
depends on !ZEPHYR_HAL_NORDIC_MODULE
7471

72+
comment "hal_nxp module not available."
73+
depends on !ZEPHYR_HAL_NXP_MODULE
74+
7575
comment "liblc3 module not available."
7676
depends on !ZEPHYR_LIBLC3_MODULE
7777

modules/hal_nxp/CMakeLists.txt

+11-12
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,12 @@
11
#
22
# Copyright (c) 2021 Linaro, Limited
3-
# Copyright 2024 NXP
3+
# Copyright 2024-2025 NXP
44
#
55
# SPDX-License-Identifier: Apache-2.0
66
#
77

88
if(CONFIG_HAS_MCUX OR CONFIG_HAS_IMX_HAL OR CONFIG_HAS_NXP_S32_HAL)
9-
add_subdirectory(${ZEPHYR_CURRENT_MODULE_DIR} hal_nxp)
10-
add_subdirectory_ifdef(CONFIG_USB_DEVICE_DRIVER usb)
11-
add_subdirectory_ifdef(CONFIG_UDC_DRIVER usb)
12-
13-
zephyr_sources_ifdef(CONFIG_PWM_MCUX_CTIMER ${ZEPHYR_CURRENT_MODULE_DIR}/mcux/mcux-sdk/drivers/ctimer/fsl_ctimer.c)
14-
zephyr_include_directories_ifdef(CONFIG_PWM_MCUX_CTIMER
15-
${ZEPHYR_CURRENT_MODULE_DIR}/mcux/mcux-sdk/drivers/ctimer/)
16-
zephyr_include_directories(.)
17-
9+
zephyr_library()
1810
zephyr_compile_definitions_ifdef(CONFIG_CAN_MCUX_FLEXCAN
1911
FLEXCAN_WAIT_TIMEOUT=${CONFIG_CAN_MCUX_FLEXCAN_WAIT_TIMEOUT})
2012

@@ -29,9 +21,16 @@ if(CONFIG_HAS_MCUX OR CONFIG_HAS_IMX_HAL OR CONFIG_HAS_NXP_S32_HAL)
2921

3022
zephyr_compile_definitions_ifdef(CONFIG_ETH_NXP_IMX_NETC FSL_ETH_ENABLE_CACHE_CONTROL=1)
3123

32-
add_subdirectory_ifdef(CONFIG_BT_H4_NXP_CTLR bt_controller)
33-
3424
if(CONFIG_I2S_MCUX_SAI)
3525
zephyr_compile_definitions(MCUX_SDK_SAI_ALLOW_NULL_FIFO_WATERMARK=1)
3626
endif()
3727
endif()
28+
29+
if(CONFIG_HAS_NXP_S32_HAL)
30+
add_subdirectory(s32)
31+
else()
32+
add_subdirectory_ifdef(CONFIG_HAS_IMX_HAL imx)
33+
add_subdirectory_ifdef(CONFIG_HAS_MCUX mcux)
34+
endif()
35+
36+
add_subdirectory(${ZEPHYR_CURRENT_MODULE_DIR}/zephyr/src hal_nxp)

modules/hal_nxp/Kconfig

+8-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
11
#
22
# Copyright (c) 2021 Linaro, Limited
3+
# Copyright 2025 NXP
34
#
45
# SPDX-License-Identifier: Apache-2.0
5-
#
66

7-
config MCUX_ACMP
8-
bool "Include ACMP driver from MCUX SDK"
7+
8+
config ZEPHYR_HAL_NXP_MODULE
9+
bool
10+
11+
rsource "imx/Kconfig.imx"
12+
rsource "s32/Kconfig.nxp_s32"
13+
rsource "mcux/Kconfig.mcux"

modules/hal_nxp/imx/CMakeLists.txt

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Copyright 2025 NXP
2+
#
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
# Translate the SoC name and part number into the imx device and cpu
6+
# name respectively.
7+
string(TOUPPER ${CONFIG_SOC} IMX_DEVICE)
8+
9+
# Build imx drivers and utilities that can be used for multiple SoC's.
10+
add_subdirectory(${ZEPHYR_CURRENT_MODULE_DIR}/imx/drivers hal_nxp/imx/drivers)
11+
add_subdirectory(${ZEPHYR_CURRENT_MODULE_DIR}/imx/devices hal_nxp/imx/devices)
12+
add_subdirectory(${ZEPHYR_CURRENT_MODULE_DIR}/imx/devices/${IMX_DEVICE} hal_nxp/imx/devices/soc)
File renamed without changes.

0 commit comments

Comments
 (0)