Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
637 changes: 637 additions & 0 deletions scripts/autogenpackage/autogenpackage.py

Large diffs are not rendered by default.

34 changes: 34 additions & 0 deletions scripts/autogenpackage/modules_kconfig.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# STM32Cube HAL configuration
#
# Copyright (c) {{current_year}} STMicroelectronics
# SPDX-License-Identifier: Apache-2.0

config ZEPHYR_HAL_STM32_MODULE
bool

config ZEPHYR_HAL_STM32_MODULE_BLOBS
bool

config HAS_STM32LIB
bool

config HAS_STM32CUBE
bool
select HAS_CMSIS_CORE
depends on SOC_FAMILY_STM32

if HAS_STM32CUBE

{% for driver_kconfig, description_lines in drivers %}
config {{driver_kconfig}}
bool
help
{% for line in description_lines %}
{{line}}
{% endfor %}
{{newline}}
{% endfor %}
{# We don't add a newline here because the last #}
{# Kconfig option will add one after itself #}
endif # HAS_STM32CUBE
{{newline}}
19 changes: 19 additions & 0 deletions scripts/autogenpackage/series_cmakelists.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# CMakeLists.txt for {{serie_name.replace("x", "") | upper}} series
#
# Autogenerated by autogenpackage.py - DO NOT EDIT MANUALLY!
#
# Copyright (c) {{current_year}} STMicroelectronics

{# Eventually, this file won't be necessary and this can be removed #}
{% if include_system %}
zephyr_library_sources(soc/system_{{serie_name}}.c)
{% else %}
# soc/system_{{serie_name}}.c is not included on purpose
{% endif %}
{% for driver_path in ungated_drivers_list %}
zephyr_library_sources({{driver_path}})
{% endfor %}
{% for kcfg, driver_path in gated_drivers_list %}
zephyr_library_sources_ifdef({{kcfg}} {{driver_path}})
{% endfor %}
{{ newline }}
12 changes: 12 additions & 0 deletions scripts/autogenpackage/series_list.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# series_list.cmake - list of supported STM32 series
#
# Autogenerated by autogenpackage.py - DO NOT EDIT MANUALLY!
#
# Copyright (c) {{current_year}} STMicroelectronics

set(supported_series
{% for s in series_name_list %}
{{ s }}
{% endfor %}
)
{{ newline }}
13 changes: 13 additions & 0 deletions scripts/autogenpackage/stm32_assert.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
/*
* Autogenerated by autogenpackage.py - DO NOT EDIT MANUALLY!
*
* SPDX-License-Identifier: Apache-2.0
* Copyright (c) {{current_year}} STMicroelectronics
*/

{% for s in series_name_list %}
#{{ "if" if loop.index == 1 else "elif" }} defined(CONFIG_SOC_SERIES_{{ s.replace("xx", "x") | upper }})
#include <{{s}}_hal_conf.h>
{% endfor %}
#endif
{{ newline }}
35 changes: 5 additions & 30 deletions stm32cube/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -45,36 +45,8 @@ zephyr_compile_definitions(
-DUSE_FULL_LL_DRIVER
)

# List of all supported STM32 SoC series
set(supported_series
stm32c0x
stm32f0x
stm32f1x
stm32f2x
stm32f3x
stm32f4x
stm32f7x
stm32g0x
stm32g4x
stm32h5x
stm32h7x
stm32h7rsx
stm32l0x
stm32l1x
stm32l4x
stm32l5x
stm32mp1x
stm32mp13x
stm32mp2x
stm32n6x
stm32u0x
stm32u3x
stm32u5x
stm32wb0x
stm32wbax
stm32wbx
stm32wlx
)
# Obtain list of supported series
include(series_list.cmake)

# On dual-core MCUs, we must inform Cube which CPU we are building for.
# Provide the Cube definition based on the active CPU Kconfig symbols.
Expand Down Expand Up @@ -132,6 +104,9 @@ foreach(series ${supported_series})
endif()
endforeach()

# Add common header files to include directories
zephyr_include_directories(common/include)

# Enable HAL asserts if requested by Zephyr
if(CONFIG_USE_STM32_ASSERT)
zephyr_compile_definitions( -DUSE_FULL_ASSERT )
Expand Down
62 changes: 62 additions & 0 deletions stm32cube/common/include/stm32_assert.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
/*
* Autogenerated by autogenpackage.py - DO NOT EDIT MANUALLY!
*
* SPDX-License-Identifier: Apache-2.0
* Copyright (c) 2025 STMicroelectronics
*/

#if defined(CONFIG_SOC_SERIES_STM32C0X)
#include <stm32c0xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32F0X)
#include <stm32f0xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32F1X)
#include <stm32f1xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32F2X)
#include <stm32f2xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32F3X)
#include <stm32f3xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32F4X)
#include <stm32f4xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32F7X)
#include <stm32f7xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32G0X)
#include <stm32g0xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32G4X)
#include <stm32g4xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32H5X)
#include <stm32h5xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32H7RSX)
#include <stm32h7rsxx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32H7X)
#include <stm32h7xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32L0X)
#include <stm32l0xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32L1X)
#include <stm32l1xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32L4X)
#include <stm32l4xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32L5X)
#include <stm32l5xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32MP13X)
#include <stm32mp13xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32MP1X)
#include <stm32mp1xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32MP2X)
#include <stm32mp2xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32N6X)
#include <stm32n6xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32U0X)
#include <stm32u0xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32U3X)
#include <stm32u3xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32U5X)
#include <stm32u5xx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32WB0X)
#include <stm32wb0x_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32WBAX)
#include <stm32wbaxx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32WBX)
#include <stm32wbxx_hal_conf.h>
#elif defined(CONFIG_SOC_SERIES_STM32WLX)
#include <stm32wlxx_hal_conf.h>
#endif
35 changes: 35 additions & 0 deletions stm32cube/series_list.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# series_list.cmake - list of supported STM32 series
#
# Autogenerated by autogenpackage.py - DO NOT EDIT MANUALLY!
#
# Copyright (c) 2025 STMicroelectronics

set(supported_series
stm32c0x
stm32f0x
stm32f1x
stm32f2x
stm32f3x
stm32f4x
stm32f7x
stm32g0x
stm32g4x
stm32h5x
stm32h7rsx
stm32h7x
stm32l0x
stm32l1x
stm32l4x
stm32l5x
stm32mp13x
stm32mp1x
stm32mp2x
stm32n6x
stm32u0x
stm32u3x
stm32u5x
stm32wb0x
stm32wbax
stm32wbx
stm32wlx
)
6 changes: 0 additions & 6 deletions stm32cube/stm32c0xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32f0xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32f1xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32f2xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32f3xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32f4xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32f7xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32g0xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32g4xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32h5xx/drivers/include/stm32_assert.h

This file was deleted.

53 changes: 0 additions & 53 deletions stm32cube/stm32h7rsxx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32h7xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32l0xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32l1xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32l4xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32l5xx/drivers/include/stm32_assert.h

This file was deleted.

6 changes: 0 additions & 6 deletions stm32cube/stm32mp13xx/drivers/include/stm32_assert.h

This file was deleted.

Loading
Loading