soc: st: Migrate stm32l0 series to new hw model

Migrate STM2L0 series to new HW model.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
This commit is contained in:
Erwan Gouriou
2024-02-15 17:30:57 +01:00
committed by Carles Cufi
parent cc6e6be01f
commit 4a65f55916
21 changed files with 112 additions and 100 deletions

View File

@@ -1,55 +0,0 @@
# ST Microelectronics STM32L0 MCU line
# Copyright (c) 2018 Endre Karlson <endre.karlson@gmail.com>
# Copyright (c) 2021 Nomono AS
# Copyright (c) 2023 OS Systems
#
# SPDX-License-Identifier: Apache-2.0
choice
prompt "STM32L0x MCU Selection"
depends on SOC_SERIES_STM32L0X
config SOC_STM32L010X4
bool "STM32L010X4"
config SOC_STM32L010X6
bool "STM32L010X6"
config SOC_STM32L010X8
bool "STM32L010X8"
config SOC_STM32L010XB
bool "STM32L010XB"
config SOC_STM32L011XX
bool "STM32L011XX"
config SOC_STM32L031XX
bool "STM32L031XX"
config SOC_STM32L051XX
bool "STM32L051XX"
select CPU_HAS_ARM_MPU
config SOC_STM32L053XX
bool "STM32L053XX"
select CPU_HAS_ARM_MPU
config SOC_STM32L071XX
bool "STM32L071XX"
select CPU_HAS_ARM_MPU
config SOC_STM32L072XX
bool "STM32L072XX"
select CPU_HAS_ARM_MPU
config SOC_STM32L073XX
bool "STM32L073XX"
select CPU_HAS_ARM_MPU
config SOC_STM32L081XX
bool "STM32L081XX"
select CPU_HAS_ARM_MPU
endchoice

View File

@@ -90,6 +90,20 @@ family:
- name: stm32g484xx
- name: stm32g491xx
- name: stm32g4a1xx
- name: stm32l1x
socs:
- name: stm32l010x4
- name: stm32l010x6
- name: stm32l010x8
- name: stm32l010xb
- name: stm32l011xx
- name: stm32l031xx
- name: stm32l051xx
- name: stm32l053xx
- name: stm32l071xx
- name: stm32l072xx
- name: stm32l073xx
- name: stm32l081xx
- name: stm32l1x
socs:
- name: stm32l151xb

View File

@@ -9,4 +9,6 @@ zephyr_sources_ifdef(CONFIG_PM
power.c
)
zephyr_include_directories(.)
set(SOC_LINKER_SCRIPT ${ZEPHYR_BASE}/include/zephyr/arch/arm/cortex_m/scripts/linker.ld CACHE INTERNAL "")

View File

@@ -4,13 +4,27 @@
# SPDX-License-Identifier: Apache-2.0
config SOC_SERIES_STM32L0X
bool "STM32L0x Series MCU"
select ARM
select CPU_CORTEX_M0PLUS
select CPU_CORTEX_M_HAS_VTOR
select SOC_FAMILY_STM32
select HAS_STM32CUBE
select CPU_CORTEX_M_HAS_SYSTICK
select HAS_PM
help
Enable support for STM32L0 MCU series
config SOC_STM32L051XX
select CPU_HAS_ARM_MPU
config SOC_STM32L053XX
select CPU_HAS_ARM_MPU
config SOC_STM32L071XX
select CPU_HAS_ARM_MPU
config SOC_STM32L072XX
select CPU_HAS_ARM_MPU
config SOC_STM32L073XX
select CPU_HAS_ARM_MPU
config SOC_STM32L081XX
select CPU_HAS_ARM_MPU

View File

@@ -7,12 +7,9 @@
if SOC_SERIES_STM32L0X
source "soc/soc_legacy/arm/st_stm32/stm32l0/Kconfig.defconfig.stm32l0*"
rsource "Kconfig.defconfig.stm32l0*"
config SOC_SERIES
default "stm32l0"
# adjust the fallback because of the LSI oscaillator characteristics
# adjust the fallback because of the LSI oscillator characteristics
config TASK_WDT_HW_FALLBACK_DELAY
depends on TASK_WDT_HW_FALLBACK
default 200

View File

@@ -5,9 +5,6 @@
if SOC_STM32L010X4
config SOC
default "stm32l010x4"
config NUM_IRQS
default 30

View File

@@ -5,9 +5,6 @@
if SOC_STM32L010X6
config SOC
default "stm32l010x6"
config NUM_IRQS
default 30

View File

@@ -5,9 +5,6 @@
if SOC_STM32L010X8
config SOC
default "stm32l010x8"
config NUM_IRQS
default 30

View File

@@ -5,9 +5,6 @@
if SOC_STM32L010XB
config SOC
default "stm32l010xb"
config NUM_IRQS
default 30

View File

@@ -5,9 +5,6 @@
if SOC_STM32L011XX
config SOC
default "stm32l011xx"
config NUM_IRQS
default 32

View File

@@ -5,9 +5,6 @@
if SOC_STM32L031XX
config SOC
default "stm32l031xx"
config NUM_IRQS
default 32

View File

@@ -5,9 +5,6 @@
if SOC_STM32L051XX
config SOC
default "stm32l051xx"
config NUM_IRQS
default 32

View File

@@ -5,9 +5,6 @@
if SOC_STM32L053XX
config SOC
default "stm32l053xx"
config NUM_IRQS
default 32

View File

@@ -5,9 +5,6 @@
if SOC_STM32L071XX
config SOC
default "stm32l071xx"
config NUM_IRQS
default 30

View File

@@ -5,9 +5,6 @@
if SOC_STM32L072XX
config SOC
default "stm32l072xx"
config NUM_IRQS
default 32

View File

@@ -5,9 +5,6 @@
if SOC_STM32L073XX
config SOC
default "stm32l073xx"
config NUM_IRQS
default 32

View File

@@ -5,9 +5,6 @@
if SOC_STM32L081XX
config SOC
default "stm32l081xx"
config NUM_IRQS
default 32

View File

@@ -0,0 +1,76 @@
# ST Microelectronics STM32L0 MCU line
# Copyright (c) 2018 Endre Karlson <endre.karlson@gmail.com>
# Copyright (c) 2021 Nomono AS
# Copyright (c) 2023 OS Systems
#
# SPDX-License-Identifier: Apache-2.0
config SOC_SERIES_STM32L0X
bool
select SOC_FAMILY_STM32
config SOC_SERIES
default "stm32l0" if SOC_SERIES_STM32L0X
config SOC_STM32L010X4
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L010X6
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L010X8
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L010XB
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L011XX
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L031XX
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L051XX
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L053XX
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L071XX
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L072XX
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L073XX
bool
select SOC_SERIES_STM32L0X
config SOC_STM32L081XX
bool
select SOC_SERIES_STM32L0X
config SOC
default "stm32l010x4" if SOC_STM32L010X4
default "stm32l010x6" if SOC_STM32L010X6
default "stm32l010x8" if SOC_STM32L010X8
default "stm32l010xb" if SOC_STM32L010XB
default "stm32l011xx" if SOC_STM32L011XX
default "stm32l031xx" if SOC_STM32L031XX
default "stm32l051xx" if SOC_STM32L051XX
default "stm32l053xx" if SOC_STM32L053XX
default "stm32l071xx" if SOC_STM32L071XX
default "stm32l072xx" if SOC_STM32L072XX
default "stm32l073xx" if SOC_STM32L073XX
default "stm32l081xx" if SOC_STM32L081XX