hwmv2: move imx93 soc to V2

Port NXP imx93 SoC to hwm V2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
This commit is contained in:
Jiafei Pan
2024-02-21 16:24:50 +08:00
committed by Carles Cufi
parent 5836c1b699
commit c81ef01563
17 changed files with 124 additions and 67 deletions

View File

@@ -0,0 +1,7 @@
#
# Copyright (c) 2022, NXP
#
# SPDX-License-Identifier: Apache-2.0
#
add_subdirectory(${SOC_SERIES})

11
soc/nxp/imx/Kconfig Normal file
View File

@@ -0,0 +1,11 @@
# Copyright (c) 2017-2020,2024 NXP
# SPDX-License-Identifier: Apache-2.0
config SOC_FAMILY_IMX
select HAS_SEGGER_RTT if ZEPHYR_SEGGER_MODULE
if SOC_FAMILY_IMX
rsource "*/Kconfig"
endif # SOC_FAMILY_IMX

View File

@@ -0,0 +1,8 @@
# Copyright 2017,2024 NXP
# SPDX-License-Identifier: Apache-2.0
if SOC_FAMILY_IMX
rsource "*/Kconfig.defconfig"
endif # SOC_FAMILY_IMX

10
soc/nxp/imx/Kconfig.soc Normal file
View File

@@ -0,0 +1,10 @@
# Copyright 2017,2024 NXP
# SPDX-License-Identifier: Apache-2.0
config SOC_FAMILY_IMX
bool
config SOC_FAMILY
default "imx" if SOC_FAMILY_IMX
rsource "*/Kconfig.soc"

View File

@@ -0,0 +1,10 @@
# SPDX-License-Identifier: Apache-2.0
if(CONFIG_SOC_MIMX9352_A55)
zephyr_include_directories(.)
zephyr_include_directories(a55)
zephyr_sources_ifdef(CONFIG_ARM_MMU a55/mmu_regions.c)
set(SOC_LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/a55/linker.ld CACHE INTERNAL "")
endif()

13
soc/nxp/imx/imx9/Kconfig Normal file
View File

@@ -0,0 +1,13 @@
# Copyright 2024 NXP
# SPDX-License-Identifier: Apache-2.0
config SOC_MIMX9352_A55
select ARM64
select CPU_CORTEX_A55
select ARM_ARCH_TIMER if SYS_CLOCK_EXISTS
select HAS_MCUX if CLOCK_CONTROL
select HAS_MCUX_CCM_REV2 if CLOCK_CONTROL
select HAS_MCUX_IOMUXC if PINCTRL
config MCUX_CORE_SUFFIX
default "_ca55" if SOC_MIMX9352_A55

View File

@@ -0,0 +1,8 @@
# Copyright 2022,2024 NXP
# SPDX-License-Identifier: Apache-2.0
if SOC_SERIES_IMX9
rsource "Kconfig.defconfig.*"
endif # SOC_SERIES_IMX9

View File

@@ -1,10 +1,7 @@
# Copyright 2022-2023 NXP
# Copyright 2022-2024 NXP
# SPDX-License-Identifier: Apache-2.0
if SOC_MIMX93_A55
config SOC
default "mimx9352_ca55"
if SOC_MIMX9352_A55
# Workaround for not being able to have commas in macro arguments
DT_CHOSEN_Z_FLASH := zephyr,flash

View File

@@ -0,0 +1,32 @@
# Copyright 2022,2024 NXP
# SPDX-License-Identifier: Apache-2.0
config SOC_SERIES_IMX9
bool
select SOC_FAMILY_IMX
config SOC_MIMX9352
bool
select SOC_SERIES_IMX9
config SOC_MIMX9352_A55
bool
select SOC_MIMX9352
help
NXP i.MX93 A55
config SOC_PART_NUMBER_MIMX9352CVUXK
bool
config SOC_PART_NUMBER_MIMX9352DVUXM
bool
config SOC_PART_NUMBER
default "MIMX9352CVUXK" if SOC_PART_NUMBER_MIMX9352CVUXK
default "MIMX9352DVUXM" if SOC_PART_NUMBER_MIMX9352DVUXM
config SOC
default "mimx9352" if SOC_MIMX9352
config SOC_SERIES
default "imx9" if SOC_SERIES_IMX9

23
soc/nxp/imx/soc.yml Normal file
View File

@@ -0,0 +1,23 @@
family:
- name: imx
series:
- name: imx8m
socs:
- name: mimx8ml8
cpuclusters:
- name: a53
- name: m7
- name: mimx8mm6
cpuclusters:
- name: a53
- name: m4
- name: mimx8mn6
cpuclusters:
- name: a53
- name: m7
- name: imx9
socs:
- name: mimx9352
cpuclusters:
- name: a55
- name: m33

View File

@@ -1,7 +0,0 @@
# SPDX-License-Identifier: Apache-2.0
zephyr_include_directories(.)
zephyr_sources_ifdef(CONFIG_ARM_MMU mmu_regions.c)
set(SOC_LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/linker.ld CACHE INTERNAL "")

View File

@@ -1,11 +0,0 @@
# Copyright 2022 NXP
# SPDX-License-Identifier: Apache-2.0
if SOC_SERIES_MIMX9_A55
config SOC_SERIES
default "mimx9"
source "soc/soc_legacy/arm64/nxp_imx/mimx9/Kconfig.defconfig.mimx9*"
endif # SOC_SERIES_MIMX9_A55

View File

@@ -1,9 +0,0 @@
# Copyright 2022 NXP
# SPDX-License-Identifier: Apache-2.0
config SOC_SERIES_MIMX9_A55
bool "NXP i.MX9 A55 Core Series"
select ARM64
select SOC_FAMILY_IMX
help
Enable support for i.MX9 A55 Series.

View File

@@ -1,35 +0,0 @@
# Copyright 2022 NXP
# SPDX-License-Identifier: Apache-2.0
choice
prompt "NXP i.MX9 A55 Selection"
depends on SOC_SERIES_MIMX9_A55
config SOC_MIMX93_A55
bool "NXP i.MX93 A55"
select ARM64
select CPU_CORTEX_A55
select ARM_ARCH_TIMER if SYS_CLOCK_EXISTS
select HAS_MCUX if CLOCK_CONTROL
select HAS_MCUX_CCM_REV2 if CLOCK_CONTROL
select HAS_MCUX_IOMUXC if PINCTRL
endchoice
config SOC_PART_NUMBER_MIMX9352CVUXK
bool
config SOC_PART_NUMBER_MIMX9352DVUXM
bool
config SOC_PART_NUMBER_MIMX93_A55
string
default "MIMX9352CVUXK_ca55" if SOC_PART_NUMBER_MIMX9352CVUXK
default "MIMX9352DVUXM_ca55" if SOC_PART_NUMBER_MIMX9352DVUXM
help
This string holds the full part number of the SoC. It is a hidden option
that you should not set directly. The part number selection choice defines
the default value for this string.
config SOC_PART_NUMBER
default SOC_PART_NUMBER_MIMX93_A55 if SOC_MIMX93_A55