Compare commits

..

967 Commits

Author SHA1 Message Date
Jamie McCrae
57302b5bfb soc: Remove soc_legacy folder and move ARM Kconfig
Removes the soc_legacy folder which is left over from the
transition to hwmv2 and moves the Kconfig for ARM to arch

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 19:03:21 +00:00
Daniel DeGrasse
f12cb0979f scripts: ci: check_compliance: remove HWMv1 checks
Remove HWMv1 check compliance code, since no HWMv1 boards or SOCs
now exist in tree

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Co-authored-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
1807bcf4d4 boards: mimx8mq_evk: port to HWMv2
Port mimx8mq_evk to HWMv2. As this is the final SOC in the legacy
boards folder, that folder is also removed

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
3ec2299c62 soc: nxp: port imx8mq SOC to HWMv2
Port IMX8M Quad SOC to HWMv2. Only the M4 core is enabled.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
8ea02f4e63 boards: verdin_imx8mp: convert to HVMv2
Convert verdin_imx8mp to HWMv2. Only the M7 core of the iMX8MP is
currently supported

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
f2eb7652ce boards: phyboard_pollux: move to HVMv2
Move phyboard_pollux to HWMv2

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
ab509a5ee0 boards: nxp: mimx8mp_evk: port M7 core to HWMv2
Port M7 core of mimx8mp_evk to HWMv2

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
06ad037f99 soc: nxp: imx8mp: port M7 core to HWMv2
Port M7 core of imx8mp to HWMv2

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
3f9e706859 boards: mimx8mm_phyboard: convert to HVMv2
Convert mimx8mm_phyboard to HVMv2. This port only enables the M4 core of
the iMX8MM SOC present on this board.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
204372d264 boards: imx8mm_evk: port CM4 core to HWMv2
Port CM4 core to HVMv2. This core is merged with the existing board
definition, which supported the A53 target.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
f82c961a46 soc: nxp: imx8mm: port iMX8MM M4 core to HVMv2
Port iMX8MM M4 core of iMX8MM SOC  to HVMv2. The A53 core has already
been ported, so this port adds to that SOC definition.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
6987b2e305 boards: pico_pi: convert to HVMv2
Convert pico_pi board to HWMv2. This board port only supports the M4
core on the SOC

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
84484e6707 boards: warp7: convert to HWMv2
Convert warp7 board to HWMv2. This board was originally ported
using the iMX7D SOC (despite the fact that board uses an iMX7S
SOC). For HWMv2, this board continues to use the IMX7D SOC port,
since only the M4 core is enabled.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
ae443d1e3c boards: meerkat96: port to HWMv2
Port 96boards meerkat96b board to HWMv2. This board port only supports
the M4 core present on the iMX7D SOC.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
e3629c64e6 boards: colibri_imx7d: port to HWMv2
Port Colibri iMX7D board to HWMv2. This port only supports the M4 core
of the iMX7D SOC.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
fc835d893d soc: nxp: convert iMX7 Dual core to HWMv2
Convert iMX7 Dual core to HWMv2. As in HWMv1, Only M4 core is supported
by this port.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
29ef2f23eb boards: udoo_neo_full: convert to HWMv2
Convert udoo_neo_full board to HWMv2.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
fd49b1749e soc: nxp: convert iMX6 SoloX core to HWMv2
Convert iMX6 SoloX core to HWMv2. This port currently only supports the
M4 core (as it did in HWMv1)

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Daniel DeGrasse
1e59b7a3fd soc: nxp: imxrt11xx: only set CONFIG_CPU_HAS_FPU_DOUBLE_PRECISION for M7
Only set CONFIG_CPU_HAS_FPU_DOUBLE_PRECISION for Cortex M7 cores, as the
M4 core on iMXRT11xx parts does have a double precision FPU

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 17:29:02 +00:00
Declan Snyder
69bb0eb258 hwmv2: MAINTAINERS: Fix NXP maintainer yaml
Fix orphaned areas and wrong assigns of NXP platform areas,
add MPU area, and clean up files patterns using regex

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-01 18:19:13 +01:00
Jamie McCrae
1c4458890f boards: firefly: roc_rk3568_pc: Fix SMP configuration
Fixes the build configuration

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Jamie McCrae
651a4370ad boards: Fix variants and revisions
Fixes revisions and variants which do not have the soc name in
the filenames

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Jamie McCrae
196cfda66d tests/samples: Drop default revision identifiers
Drops default identifiers

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Jamie McCrae
6ec6b1d75a boards: Drop revision from twister identifiers for default revisions
Drops default revisions for twister usage for the default board
revisions

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Gerard Marull-Paretas
b774cdd59f scripts: utils: board_v1_to_v2: drop board_legacy prefix
So that script can be used for out of tree boards from now on. All
in-tree boards have been already ported, so the prefix no longer makes
sense.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:50:14 +01:00
Sylvio Alves
7aa36e6640 boards: riscv: esp32c3_luatos_core: make usb variant
Converts the board above to use variant option.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:14 +01:00
Torsten Rasmussen
fe25709a9c twister: add unit_testing soc and board
Create board.yml and soc.yml for the unit_testing board so that
list_board.py can correctly find those boards for twister unit test
test-cases.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Fabio Baltieri
f88f211b4e scripts: ci: check_compliance: improve the "not sorted" command
Add a message to the KeepSorted error message with a oneline command to
sort the block failing the check.

Looks something like:

KeepSorted:sorted block is not sorted, sort by running:
"ex -s -c '14,757 sort i|x' dts/bindings/vendor-prefixes.txt"

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:14 +01:00
Jamie McCrae
b21a455dfb bluetooth: controller: Fix openisa checks
Fixes openisa checks which has been renamed

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Jamie McCrae
fdc76c48a7 workflow: compliance: Add rename limit
Adds a rename limit to allow CI checks to run

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Jamie McCrae
14ecafc67d dts: bindings: vendor-prefixes: Sort entries
Fixes out of order entries

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Jamie McCrae
dbc366c3c7 soc: nxp: lpc: Move wrong configurations
Moves wrong configuration items to the correct files

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Jamie McCrae
8e02c08f96 maintainers: Fix invalid paths
Fixes invalid paths

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Jamie McCrae
b1b85e2495 boards: up: Fix spaces
Fixes compliance issue

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:14 +01:00
Jamie McCrae
58cc4013b3 maintainers: Fix xen path
Fixes a path which was not updated for the xen soc

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
66ce5c0b09 boards/soc: Add missing copyright headers
Adds missing copyright headers

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
bb47243254 boards: qemu: x86: Remove pointless file
Removes a pointless file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Sylvio Alves
2e816a8a3a samples: tests: update esp32-based board naming
Make sure all those samples and tests use cpu cluster naming.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
9aeab17139 samples: tests: remove platform_exclude of esp32 boards
Those related tests are automatically filtered out and
the boards can be removed from there.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
a4fe97b9de boards: shields: m5stack_core2_ext: update board name
Update documentation to meet HWMv2 naming convention.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
615fcab94a samples: ipm_esp32: fix board labels and skip testing
This sample code is currently not yet read for HWMv2 and sysbuild.
Skip this test for now and have a fix later.

Make sure sample code uses HWMv2 for board
naming convention.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
7752f69b7f boards: legacy: remove index entry for xtensa/riscv boards.
There are no documents to be build within this
board_legacy folder.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
3eba827956 MAINTAINERS: update Espressif entries
Make sure there is no invalid folder.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
914362bbd5 boards: xtensa: yd_esp32: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
a62278fd23 boards: xtensa: xiao_esp32s3: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
b6a11ccec4 boards: xtensa: olimex_esp32_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
c1067c16d2 boards: xtensa: odroid_go: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
b8340b0109 boards: xtensa: m5stickc_plus: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
9d81e417be boards: xtensa: m5stack_stamps3: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
c296672720 boards: xtensa: m5stack_core2: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
fada12aa9d boards: xtensa: m5stack_atoms3_lite: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
fe37ebac1e boards: xtensa: m5stack_atoms3: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
d32828fe6a boards: xtensa: kincony_kc868_a32: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
5afba7855b boards: xtensa: heltec_wireless_stick_lite_v3: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
ca48c17723 boards: xtensa: heltec_wifi_lora32_v2: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Sylvio Alves
db1fd4d229 boards: xtensa: esp32s3_luatos_core: Convert to v2
Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:13 +01:00
Jamie McCrae
a78b2552eb boards: xtensa: esp32s3_devkitm: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
cc96061d96 boards: xtensa: esp32s2_saola: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
ed854e05d1 boards: xtensa: esp32s2_lolin_mini: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
4fa1ae8110 boards: xtensa: esp32s2_franzininho: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
5543040a18 boards: xtensa: esp_wrover_kit: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
2335ae79b3 boards: xtensa: esp32_ethernet_kit: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
f910b7ad4f boards: xtensa: esp32_devkitc_wrover: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
32104db555 boards: xtensa: esp32_devkitc_wroom: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
e23a41200d boards: riscv: icev_wireless: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
3c670e4e53 boards: riscv: xiao_esp32c3: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
fc7c6a060b boards: riscv: stamp_c3: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:13 +01:00
Jamie McCrae
22c2edb89c boards: riscv: esp32c3_luatos_core: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Jamie McCrae
0a96dcb778 boards: riscv: esp32c3_devkitm: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Sylvio Alves
be1ee1c446 vendors: update vendors lists
Add esp32-based board vendors.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-03-01 15:50:12 +01:00
Jamie McCrae
5e6c62137f soc: espressif_esp32: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Torsten Rasmussen
037a3b52a4 boards: Raspberry Pi pico pwm led adjustment
The Raspberry Pi pico defines PWM leds, but on the Raspberry Pi pico
w-variant the gpio to the led is routed to the WiFi/Bluetooth module,
thus the led is not available.

Introduce a HAS_DT_PWM_LED define which allows devicetree overlays for
the rpi_pico board to distinguish between board variants with a pwm
controlled led, and those without.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Torsten Rasmussen
7277cae6fa samples: blinky_pwm: enable pwm_leds in rpi_pico overlay
Twister skips the blinky_pwm sample for the rpi_pico board because the
pwm-leds compatible is disabled.

Enable /pwm_leds node so that twister build the sample for the rpi_pico
board.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Daniel DeGrasse
da3e49d34e boards: nxp: update selection of FLASH_MCUX_FLEXSPI_XIP_MEM_TARGET
Update selection of FLASH_MCUX_FLEXSPI_XIP_MEM_TARGET to now depend on
FLASH_MCUX_FLEXSPI_XIP, as this is the symbol that drives the need to
relocate critical FlexSPI files to RAM.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:12 +01:00
Daniel DeGrasse
bc8424dd3b soc: nxp: imxrt: move FLASH_MCUX_FLEXSPI_XIP_MEM_TARGET to SOC level
FLASH_MCUX_FLEXSPI_XIP_MEM_TARGET definition is required to relocate SOC
level files, as well as Flash and MEMC drivers. Therefore, move the
Kconfig definition to the SOC level, and update the dependencies to
better reflect when the definition is needed.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:12 +01:00
Jamie McCrae
041cb52939 soc: brcm: bcm_vk: Rename to bcnvk
Fixes a name mismatch with a family

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Jamie McCrae
576b43a95c soc: Fix SOC_FAMILY name mismatches
Fixes mismatches or missing SOC_FAMILY entries

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Dmitrii Golovanov
e8f3e6494d hwmv2: boards: intel: adsp: Fix runner after paths renamed
Fix intel_adsp runner unable to find boards for flash after
'drop duplicate prefix' folder renames #69505

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:12 +01:00
Jamie McCrae
550399e927 boards: weact: stm32g431_core: Add wrongly deleted file back
Adds a file back that was wrongly deleted in an unrelated
commit

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Jamie McCrae
08708c909e tests: drivers: flash: Renamed missed board rename
Fixes a test which missed the rename of a board

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
David Leach
06dac41e68 hwmv2: Convert Seagate Faze board to hwmv2
Convert Faze board

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
dd8f842b40 hwmv2: nxp: update MAINTAINER paths for hwmv2
Update for hwmv2

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
Emilio Benavente
b4d1c04978 hwmv2: lpc: updated overlay and conf files in samples and tests
Fixup for LPC54114 and LPC55S69

Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
067c69089e boards: nxp: convert lpcxpresso55s69 to hwmv2
Convert lpcxpresso55s69

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
097205b40a hwmv2: Global fix of lpc54114_m4 overlay and conf files
Global fixup of overlay and conf files

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
d8cfa6fb29 boards: nxp: convert lpcxpresso54114 to hwmv2
Convert lpcxpresso54114

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
c29ed228c6 boards: nxp: convert lpcxpresso55s36 to hwmv2
Convert lpcxpresso55s36

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
88cfd3d6ac boards: nxp: convert lpcxpresso55s28 to hwmv2
Convert lpcxpresso55s28

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
ad30c940ee boards: nxp: convert lpcxpresso55s16 to hwmv2
Convert lpcxpresso55s16

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
9e5a10ec80 boards: nxp: convert lpcxpresso55s06 to hwmv2
Convert lpcxpresso55s06

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
5650c83268 boards: nxp: convert lpcxpresso51u68 to hwmv2
Convert lpcxpresso51u68

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
82cf44be45 boards: nxp: convert lpcxpresso11u68 to hwmv2
Convert lpcxpresso11u68

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
David Leach
1a9c405a6f soc: nxp: convert LPC SOC family to hardware model V2
Move LPC family to HWMv2

Signed-off-by: David Leach <david.leach@nxp.com>

soc: nxp: convert LPC SOC family to hardware model V2

Move LPC family to HWMv2

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:12 +01:00
Dmitrii Golovanov
f2b536d253 boards: intel: doc: hwmv2: Fix some renamed paths
Fix some paths affected by 'drop duplicate prefix' at folder
names in boards change.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:12 +01:00
Jamie McCrae
5ee6058710 samples/tests: Use board revisions
Updates boards so that the correct revision/revisions is/are tested

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Jamie McCrae
b76687602f boards: Add yaml files for boards missing revisions
Adds dedicated yaml files for board that have revisions

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Jamie McCrae
32ae4918d0 boards: nordic: Fix board names
Fixes some board names in documentation that wasn't updated

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Jamie McCrae
cc1dabca65 MAINTAINERS: Update for renamed folders
Updates for folders renamed to have their vendor prefix names

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Jamie McCrae
a37ddce659 soc: xilinx: Rename to xlnx
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Jamie McCrae
a1393a07f6 soc: xenvm: Rename to xen
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Jamie McCrae
813ed00f67 soc: raspberry_pi: Rename to raspberrypi
Aligns with the vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:12 +01:00
Jamie McCrae
71317d6798 soc: cadence: Rename to cdns
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
8cb0c51ec6 soc: broadcom: Rename to brcm
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
2b9db15c69 soc: andes: Rename to andestech
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
0101216ce1 soc: altera: Rename to altr
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
4b4c3ca65d boards: wurth_elektronik: Rename to we
Aligns with the vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
cdc3ef499f boards: ublox: Rename to u-blox
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
cabdd4ad05 boards: space_cubics: Rename to sc
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
4b5bd7ae8a boards: seeed_studio: Rename to seeed
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
a992785ceb boards: raspberry_pi: Rename to raspberrypi
Aligns with the vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
3c1cdc20fe boards: laird_connect: Rename to lairdconnect
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
291c7cde2b boards: cadence: Rename to cdns
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
95db897526 boards: broadcom: Rename to brcm
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
0a47b94879 boards: beagleboard: Change to beagle
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
9f9f221c24 boards: andes: Rename to andestech
Aligns with vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
e7869ca38a boards: altera: Rename to altr
Aligns with the vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
bf2fb5eca3 various: Change SOC_FAMILY_NRF to SOC_FAMILY_NORDIC_NRF
Fixes the name to include the vendor in it

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
e25730ba56 modules: tf-m: Rename from nordic_nrf to nordic
Aligns with the vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
9e3466606a boards: nordic_nrf: Rename to nordic
Aligns with the vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
09a398dcc8 soc: nordic_nrf: Rename to nordic
Renames to align with the vendor prefix

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
cb8ffc74f8 boards: renode: Add documentation index
Adds a documentation index file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
2291ff4b55 boards: arm: riscv32_virtual: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
484b7f1996 soc: riscv_renode_virtual: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
cc5c2fb0c7 soc: raspberry_pi: Fix SOC_SERIES and SOC mismatch
Fixes mismatch between values and names

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
59cb580513 soc: arm: designstart: Fix SOC_SERIES and SOC mismatch
Fixes mismatch between values and names

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:11 +01:00
Jamie McCrae
aa9e0de7af samples: Fix invalid links
Fixes links that are invalid

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
a1480cf1cf maintainers: Fix paths
Updates paths from hwmv2 changes

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
0d719e004b boards: Update documentation links
Updates documentation links for shortened paths

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
eb5c3e6f79 boards: wurth_elektronik: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
a34a3640b7 boards: waveshare: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
cf50e950e7 boards: weact: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
737cfb548f boards: sparkfun: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
505494c97a boards: segger: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
4eaf69f37a boards: ruuvi: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
a1335caeae boards: ronoth: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
a9f7f30bf6 boards: raytac: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
80db4c81b3 boards: qemu: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
433d7e9976 boards: particle: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
4ea79d19e7 boards: olimex: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
fd4ae6f6a8 boards: mikroe: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
36080549bd boards: khados: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
169bf8ae1d boards: intel: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
25f04d5222 boards: holyiot: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
11c2af0de8 boards: google: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
d5128f4016 boards: ebyte: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
44fbc68cad boards: dragino: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
f7fe431b44 boards: contextual_electronics: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
9094fea63b boards: circuit_dojo: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
b632acc1fc boards: blue_clover: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
1a3316ebdc boards: bbc: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
71c0344f8c boards: arduino: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
f0176fc25f boards: altera: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
36b920ed0f boards: adi: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:10 +01:00
Jamie McCrae
22520368d9 boards: adafruit: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:09 +01:00
Jamie McCrae
296acfb2bc boards: actinius: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:09 +01:00
Jamie McCrae
55063380b7 boards: 96boards: Drop duplicate prefix
Drops the prefix since the parent folder has it already

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:09 +01:00
Daniel DeGrasse
1f93394b55 boards: nxp: convert mimxrt595_evk to hardware model v2
Convert mimxrt595_evk to hardware model v2. Both the CM33 and Fusion F1
DSP devicetrees are moved to reside in the same board folder

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:09 +01:00
Daniel DeGrasse
e7a4fd2ec1 soc: nxp: rt5xx: convert RT5xx SOC to HWMv2
Convert NXP iMX RT5xx SOC to hardware model V2. This core is dual
architecture, so both the ARM Cortex M33 and Xtensa Fusion F1 DSP have
been unified within one SOC port folder.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:09 +01:00
Anas Nashif
01942f1d11 twister: normalize platform name when storing files/data
Convert slashes into underscores to allow saving of data related to
platforms on disk.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-01 15:50:09 +01:00
Anas Nashif
477c8b84dd twister: tests: test with slashes in platform names
Use mps2/an385 for testing the hwmv2 board names.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-01 15:50:09 +01:00
Jamie McCrae
64e3e816c4 soc: Add include guards
Adds include guards to prevent contamination of bleeding
Kconfigs from irrelevent devices

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:09 +01:00
Fabio Baltieri
3a7aa2fa49 gitignore: update the compliance file list
Update the list of gitignore file with the current list of compliance
checks.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:09 +01:00
Fabio Baltieri
84e1c17ad9 scripts: ci: check_compliance: add a check for board yml file
Add a check for board.yml file, just check for valid vendor prefixes for
now.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:09 +01:00
Fabio Baltieri
a90f53ad57 boards: sync up the vendor tags and vendor-list
Add various board vendor prefixes to vendor-prefixes.txt and fix up all
board.yml file to only use the prefixes from that file.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:09 +01:00
Fabio Baltieri
af9aa65299 dts: vendor-prefixes: add keep-sorted markers
Add the keep sorted marker to the list so it's kept sorter by the
compliance check.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:09 +01:00
Fabio Baltieri
50f0bf05a3 dts: vendor-prefixes: sort the vendor list
Sort the list alphabetically.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:09 +01:00
Fabio Baltieri
a10b614aa4 dts: vendor-prefixes: ensure all prefixes are lowercase
There's only three outliers, make sure all prefixes are lowercasel.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:09 +01:00
Iuliana Prodan
5abe735e93 manifest: update SOF sha for NXP HWMv2
Update SOF for NXP's new boards name and configs.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2024-03-01 15:50:09 +01:00
Iuliana Prodan
9ab8f64ca9 modules: rename SOC_FAMILY_IMX
Rename SOC_FAMILY_IMX to SOC_FAMILY_NXP_IMX.

I've also kept SOC_FAMILY_IMX since there are
still legacy socs/boards that use it. When all
are ported to HWMv2 this should be removed.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2024-03-01 15:50:09 +01:00
Iuliana Prodan
483ff8dd4d modules: mcux: remove SOC_FAMILY_NXP_ADSP
Remove SOC_FAMILY_NXP_ADSP since this is not used
anymore for the ADSP.
With HWMv2 ADSP is part of SOC_FAMILY_IMX.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2024-03-01 15:50:09 +01:00
Iuliana Prodan
f113dd5342 samples: update board name
Update board name and rename files for
openamp_rsc_table sample.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2024-03-01 15:50:09 +01:00
Iuliana Prodan
39b31287d9 boards: nxp: Convert i.MX ADSP boards to hardware model v2
Convert i.MX ADSP boards to HMV2 including:
- imx8mp_evk
- imx8qxp_mek
- imx8qm_mek
- imx8ulp_evk

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2024-03-01 15:50:09 +01:00
Iuliana Prodan
1511e356a2 soc: nxp: Port i.MX ADSP family to hardware model v2
Port i.MX ADSP family to HWMv2, including series:
- imx8
- imx8m
- imx8x
- imx8ulp

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2024-03-01 15:50:09 +01:00
Fabio Baltieri
c91e25ab47 soc: mec: rename all mec1501x reference to mec15xx
Fix a bunch of references to "mec1501x" to be named "mec15xx" instead,
which is better representative of what is supported and also matches the
soc series name and value.

Fix the clock div option name as well while at it since it apparently
applies to the whole family.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:09 +01:00
Declan Snyder
1c231fd939 hwmv2: boards: Convert IMXRT boards
Convert IMXRT boards except RT595

Co-authored-by: Declan Snyder <declan.snyder@nxp.com>
Co-authored-by: Daniel DeGrasse <daniel.degrasse@nxp.com>

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-01 15:50:09 +01:00
Declan Snyder
417cff1e60 hwmv2: soc: Port IMXRT family to HWMV2
Port IMXRT family to HWMV2, including series:
- RT11XX
- RT10XX
- RT6XX

Not including RT5XX

Co-authored-by: Declan Snyder <declan.snyder@nxp.com>
Co-authored-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Co-authored-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Co-authored-by: David Leach <david.leach@nxp.com>
Co-authored-by: Yves Vandervennet <yves.vandervennet@nxp.com>
Co-authored-by: Emilio Benavente <emilio.benavente@nxp.com>

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-01 15:50:09 +01:00
Jiafei Pan
28d4e41b1b hwmv2: clean up arm64 soc and board empty directory
There is no legacy ARM64 SoC and Board available, so delete
the arm64 directory.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:09 +01:00
Jiafei Pan
2b520f83cb hwmv2: port NXP SoC LS1046A to V2
Port NXP SoC LS1046A to hardware model v2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:09 +01:00
Jiafei Pan
bf7899c645 hwmv2: port nxp_ls1046ardb board to V2
Port NXP ls1046ardb board to hardware model v2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:08 +01:00
Jamie McCrae
33f7b61866 samples/tests: Rename numaker boards
Renames boards due to hwmv2 changes

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
8f20ea6e93 boards: nuvoton: numaker_pfm: Split into 2 boards
Splits up a wrongly unified board into 2 boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jiafei Pan
7cf4ff43a1 drivers: pinctrl: imx: align with hwm v2
Changed SoC configuration item name.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:08 +01:00
Jiafei Pan
c68e1fea4e drivers: clock_control: ccm_rev2: align with hwm v2 update
Modified SoC configuration item name.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:08 +01:00
Jiafei Pan
3b49014a0f hwmv2: move imx8mn EVK board to V2
Port EVK board for NXP imx8mn to hwm V2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:08 +01:00
Jiafei Pan
14f344eeab hwmv2: move imx8mp EVK board to V2
Port EVK board for NXP imx8mp to hwm V2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:08 +01:00
Jiafei Pan
40f3f8f22d hwmv2: move imx8mm EVK board to V2
Port EVK board for NXP imx8mm to hwm V2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:08 +01:00
Jiafei Pan
10bf79ea51 hwmv2: move imx8m soc for a-core to V2
Port NXP imx8m serial SoC to hwm V2, it includes imx8mm, imx8mn and
imx8mp.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:08 +01:00
Jiafei Pan
8727d5ca80 hwmv2: move imx93 EVK board to V2
Port EVK board for NXP imx93 to hwm V2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:08 +01:00
Jiafei Pan
c81ef01563 hwmv2: move imx93 soc to V2
Port NXP imx93 SoC to hwm V2.

Signed-off-by: Jiafei Pan <Jiafei.Pan@nxp.com>
2024-03-01 15:50:08 +01:00
Daniel DeGrasse
5836c1b699 modules: mcux: introduce CONFIG_MCUX_CORE_SUFFIX
MCUX SDK depends on "core suffixes" in order to identify which core a
build is targeting on a multicore part. Previously, this information was
parsed from the CONFIG_SOC string, but with hardware model v2 this is no
longer possible. Introduce the Kconfig MCUX_CORE_SUFFIX, which multicore
SOCs can set to inform MCUX which core the build is targeting.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:08 +01:00
Torsten Rasmussen
338f6f2bf1 doc: update board porting guide to match new hardware model
Update board porting guide to the design changes in the new hw model.

New section added:
- board.yml file description

Updated sections:
- Board on SoCs example table updated to new format and extra examples
  added.
- Board directory description and its files
- Writing devicetree file section updated to match new lookup patterns
- Writing Kconfig file section updated to match new lookup patterns
- Board revision handling updated

In getting started guide a note has been added with short description
of the new board and board identifier scheme.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jérôme Pouiller
9639a1b5dc soc: silabs: drop useless defconfigs
Currently, some soc subdirectories contains Kconfig.defconfig.<soc-name>
and Kconfig.defconfig. However:
  - Kconfig.defconfig.<soc-name> is included unconditionally by
    Kconfig.defconfig
  - each subdirectory only contains one SoC

So, it does not make sense to keep these two files.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2024-03-01 15:50:08 +01:00
Jérôme Pouiller
981807444e soc: silabs: introduce SOC_GECKO_SDID
Silabs hardware layer uses Silicon Die ID (SDID) for conditional
code. This patch defines SDID directly from Kconfig so Silabs HAL does
not have define it.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2024-03-01 15:50:08 +01:00
Jérôme Pouiller
5d07e82485 soc: silabs: SOC_FAMILY_* replace SOC_GECKO_SERIES*
SOC_GECKO_SERIES* is now redundant with SOC_FAMILY_*.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2024-03-01 15:50:08 +01:00
Jérôme Pouiller
2fd081ac86 soc: silabs: align comments with soc tree
Cosmetics changes to reflect the tree organisation.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2024-03-01 15:50:08 +01:00
Jérôme Pouiller
66d425f571 soc: silabs: split in families
EXX32 does not really makes sense. Silabs tends to talk about "series
0", "series 1" and "series 2".

Note all Silabs chipsets (whatever their family) tend to share
components. So this PR introduces SOC_VENDOR_SILABS to match these
common parts.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
2024-03-01 15:50:08 +01:00
Jamie McCrae
5bd38f47a9 arch: arch: kconfig: Fix wrong placement of endmenu
Fixes a bug whereby endmenu was placed before the end of the file
causes what should be ARC-only Kconfig choices to bleed into
every other architecture

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
00c6ef25be tests/samples: Rename overlay files for renamed boards
These overlay files were not being used after board name changes
in hwmv2, rename them to have them used

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
0c639b8378 boards: Fix bools and selections
Fixes issues with some outstanding bools being defined and wrong
usage of soc selection

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
c2ef907d1d drivers: flash: it8xxx2: Add missing Kconfigs
The original hwmv1 Kconfigs for this flash driver were in the
complete wrong place and should not have been merged, which then
caused confusion when porting to hwmv2, this adds in the missing
Kconfigs to where they should have been in the first place

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
553de2ebc9 soc: ite: ec: it8xxx2: Fix SOC_SERIES being in wrong file
Fixes this line being in the wrong file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
b8ec0080c2 boards: Documentation link fixes
Fixes missing or broken documentation links

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
eb7025e50f tests: Update board names for hwmv2
Updates names used in tests for hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
10ef3d4bd2 boards: silab: Add documentation index file
Adds a file with the vendor name for documentation indexing

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
ba9fdaa1d6 boards: arm: efr32_radio: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
86c8d4a0ca boards: arm: efm32pg_stk3402a: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
575ac5cafb manifest: Update hal_silabs
Updates the repo to include hwmv2 changes

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
87b2907304 boards: arm: efr32_thunderboard: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
14b30055ab boards: arm: efr32mg_sltb004a: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
0012bfc15d boards: arm: efr32xg24_dk2601b: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
f526225ead boards: arm: efm32wg_stk3800: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
19e7df29df boards: arm: efm32pg_stk3401a: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:08 +01:00
Jamie McCrae
0bd7d963d6 boards: arm: efm32hg_slstk3400a: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
795a90f9bf boards: arm: efm32gg_stk3701a: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
43d5540be7 boards: arm: efm32gg_slwstk6121a: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
065148d856 boards: arm: efm32gg_sltb009a: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
1dc9a8aa17 soc: silabs_exx32: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
763571e878 tests: Expand names
Expands names to include identifiers

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
dae301b8a3 boards: xen: xenvm: Expand name
Expands name to include identifier

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
19e60eef36 boards: qemu: qemu_cortex_a53: Expand names
Expands names to include the SoC

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
a0a7c30f28 soc: intel: intel_adsp: Fix issues
Fixes issues with missing protection guards and selections in
wrong files, and one case of missing bools on 2 fields

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Torsten Rasmussen
df9a4223fe scripts: ci: introduce soc name check in check_compliance
soc.yml files define SoC names which are used in board.yml.
All SoC names and directories are exported to the build system and
can be referenced using the SoC name as identifier.

Kconfig defines a CONFIG_SOC setting with the same name which can be
used in build system and is selected by the board.

Thus the CONFIG_SOC value can be used to lookup the details of the SoC.

This commit introduces a new compliance check which ensures the SoC name
and the CONFIG_SOC name value are in sync.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Torsten Rasmussen
ed401abaff soc: emsdsp: align SoC name defined in soc.yml to Kconfig SOC setting
This commit aligns the SoC name for emsdp_em4 SoC defined in Kconfig.soc
to to name in soc.yml

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
fc78e5eaa4 MAINTAINERS: update RISC-V arch area paths
This commit updates the paths assigned to the RISC-V area of maintenance to
include targets based on the SiFive Freedom SoC family.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
4e586958ff boards: convert QEMU RISC-V 64 bit board to Zephyr HWMv2
This commit converts the QEMU RISCV-V 64 bit board to Zephyr HWMvW. This
includes the following former targets:
* qemu_riscv64
* qemu_riscv64_smp

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
f4c31a2b86 boards: convert QEMU RV32E board to Zephyr HWMv2
This commit converts the QEMU RV32E board to Zephyr HWMvW. This includes
the following former target: qemu_riscv32e.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
5b2ffc652b boards: convert QEMU RISC-V 32 bit board to Zephyr HWMv2
This commit converts the QEMU RISCV-V 32 bit board to Zephyr HWMvW. This
includes the following former targets:
* qemu_riscv32
* qemu_riscv32_smp
* qemu_riscv32_xip

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
5db061a4c6 soc/riscv: convert the QEMU virt RISCV-32 SoC to HWMv2
This commit converts the virt SoC (generic virt machine) to the Zephyr
HWMv2.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
6547845e9d boards: convert SparkFun RED-V Things Plus to Zephyr HWMv2
This commit converts the SparkFun RED-V Things Plus board
(`sparkfun_red_v_things_plus` target) to the Zephyr Hardware Model v2.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
95a1f96399 boards: convert SiFive HiFive Unmatched to Zephyr HWMv2
This commit converts the SiFive HiFive Unmatched board (`hifive_unmatched`
target) to the Zephyr Hardware Model v2.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
e563eb0a62 soc/sifive/sifive_freedom: add SiFive Freedom FU740 SoC
This commit adds support for the SiFive Freedom U740 SoC for the Zephyr
Hardware Model v2.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
8914bc58b6 boards: convert SiFive HiFive Unleashed to Zephyr HWMv2
This commit converts the SiFive HiFive Unleashed board (`hifive_unleashed`
target) to the Zephyr Hardware Model v2.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
7e8de1e781 soc/sifive/sifive_freedom: add SiFive Freedom U540 SoC
This commit adds support for the SiFive Freedom U540 SoC for the Zephyr
Hardware Model v2.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
bfcc2ed18f boards: convert SiFive HiFive1 Rev. B to Zephyr HWMv2
This commit converts the SiFive HiFive1 Rev. B board (`hifive1_revb`
target) to the Zephyr Hardware Model v2.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
330fc38f9f boards: convert SiFive HiFive1 to Zephyr HWMv2
This commit converts the SiFive HiFive1 board (`hifive1` target) to the
Zephyr Hardware Model v2.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Filip Kokosinski
b9e06f4c38 soc/sifive/sifive_freedom: add SiFive Freedom E310 SoC
This commit adds support for the SiFive Freedom E310 SoC for the Zephyr
Hardware Model v2.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2024-03-01 15:50:07 +01:00
Jamie McCrae
4b90b30b9d scripts: west_commands: completion: Add hwmv2 complete to fish
Adds hwmv2 board completetion support to fish

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
0f6842e2fa scripts: west_commands: completion: Add hwmv2 complete to zsh
Adds hwmv2 board completetion support to zsh

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
b2af1e1737 scripts: west: list_boards: Fix hwmv2 output
Fixes the output of list_boards to be in csv format rather than
python array format

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
686a4b78b8 scripts: west_commands: completion: Add hwmv2 complete to bash
Adds hwmv2 board completetion support to bash

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Torsten Rasmussen
396b6bb856 soc: nxp: fix typo in SoC name
Follow-up: #68778

There is a typo in nxp/kinetics/soc.yml.
The SoC `mk82f215` was added, however the correct SoC is `mk80f25615`,
which this commit corrects.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Torsten Rasmussen
765299c627 soc: broadcom: align SoC names defined in soc.yml to Kconfig SOC setting
This commit aligns the SoC names for bcm58402 SoCs defined in soc.yml
to Kconfig SOC setting.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Torsten Rasmussen
7efd46eb41 soc: arm: align SoC names defined in soc.yml to Kconfig SOC setting
This commit aligns the SoC names for arm an547 SoCs defined in soc.yml
to Kconfig SOC setting.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Torsten Rasmussen
505cbc5c42 soc: mec: align SoC names defined in soc.yml to Kconfig SOC setting
This commit aligns the SoC names for mec SoCs defined in soc.yml to
Kconfig SOC setting.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Torsten Rasmussen
951a140701 soc: ti: define SOC name in Kconfig
Add Kconfig SoC name am6234 which matches the SoC name in soc.yml.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Grzegorz Swiderski
a795d28810 snippets: Initial HWMv2 support
Very simple adaptation to directly replace the use of HWMv1 board names
with the new identifiers:

   boards:
     <name>/<identifier>:
       append: ...

All snippets in-tree are aligned with this format where needed.

Since the `boards` key supports regex, appends can also be applied to
multiple targets grouped by board name, SoC, CPU cluster, or variant.
Later, this can be followed up with native support for these items in
the snippet schema.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
f9a957e6f6 boards: nordic: nrf9160dk: Fix missing nrf52840 config
Fixes an issue with missing configuration from the nrf52840 on
the nrf9160dk

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
df994e7ee8 soc: xilinx: zync7000: Remove xilinx from soc series name
Removes the vendor name from a Kconfig symbol

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
8dfabd56ca soc: cypress: Add protection guard to file
Adds a protection guard to prevent Kconfigs leaking

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
447b951593 tests: kernel: tickless: Remove old board name
Removes a duplicated old board name

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Jamie McCrae
bad5dfa71f boards: nordic: nrf5340dk: Fix board names
Updates to new board names

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:07 +01:00
Gerson Fernando Budke
ad2e863f39 soc: atmel: Use new family prefix
The newer HWMv2 impose a different semantic in the family names. This
update from SOC_FAMILY_SAMx to SOC_FAMILY_ATMEL_SAMx to comply with.

Fixes #69046

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:06 +01:00
Dmitrii Golovanov
3f08e714b2 soc: intel_adsp: hwmv2: Align SOC_SERIES_INTEL_ACE name and value
Align `ace` to 'intel_adsp_ace` SoC Series name and value to match
the new HWMv2 compliance check, also renaming:

  SOC_SERIES_INTEL_ACE --> SOC_SERIES_INTEL_ADSP_ACE

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:06 +01:00
Dmitrii Golovanov
6734597a76 soc: intel_adsp_cavs: hwmv2: Align SOC_SERIES name and value
Align 'intel_adsp_cavs` SoC Series name and value to match
new HWMv2 compliance check.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:06 +01:00
Torsten Rasmussen
2908af0bcc boards: nrf51dk/dongle: change SoC to nRF51822
The physical nRF51dk / nRF51dongle hardware contains a nRF51422 SoC.
In Zephyr, only the nRF51822 SoC, is implemented.

In Zephyr, the nRF51422 SoC is build as a nRF51822, therefore use the
nRF51822 SoC model for those kits instead on the non-existing nRF51422.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Torsten Rasmussen
d1ceb29fca soc: align CONFIG_SOC values to match soc.yml names
This commit aligns CONFIG_SOC values for Nordic nRF SoCs to the names
defined in soc.yml.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Manuel Argüelles
4768ccaf70 tests: drivers: gpio: gpio_api_1pin: exclude hifive1
Test seems to be failing consistently on `hifive1` board.
See #69350

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-03-01 15:50:06 +01:00
Manuel Argüelles
ebdb0879ad boards: nxp: s32z2xxdc2: convert to hwmv2
Convert `s32z270dc2` boards to hardware model v2. The board has been
renamed to `s32z2xxdc2` to be able to support in the future other
SoCs from this series that can also work on this board.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-03-01 15:50:06 +01:00
Manuel Argüelles
ae82580d08 boards: nxp: mr_canhubk3: convert to hwmv2
Convert mr_canhubk3 board to hardware model v2.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-03-01 15:50:06 +01:00
Manuel Argüelles
c5f0defbae boards: nxp: ucans32k1sic: convert to hwmv2
Convert ucans32k1sic board to hardware model v2.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-03-01 15:50:06 +01:00
Manuel Argüelles
1e46cabce6 soc: nxp: convert NXP S32 family to hwmv2
Convert NXP S32 family to hardware model v2.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-03-01 15:50:06 +01:00
Erwan Gouriou
f2f85133f2 soc: stm32: Rename series path
Since symbol is used by CMake to locate matching series folder, rename
folders.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:06 +01:00
Erwan Gouriou
86642f4e78 soc: stm32: Rename Kconfig SOC_SERIES symbols
SOC symbol is expected to match SOC_SERIES_FOO symbol.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:06 +01:00
Erwan Gouriou
c61e807896 soc: stm32: Cleanup Kconfig.defconfig files
SOC related symbols are defined in Kconfig.soc

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:06 +01:00
Jamie McCrae
ca46c8abc9 tests: Fix board names
Fixes some invalid board names

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
fbfed5f48f maintainers: Update synopsys entries
Updates entries to account for hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
8cd8b1cc47 boards: synopsys: Add documentation index
Adds a documentation index file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
6f6cc57a04 boards: arc: hsdk4xd: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
c4c14a54ca soc: snps_arc_hsdk4xd: Port to HWMv2
Ports the snps_arc_hsdk4xd SoC configuration to hardware model
version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
06c2054e5c boards: arc: iotdk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
ff0e0fce1b soc: snps_arc_iot: Port to HWMv2
Ports the snps_arc_iot SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
334264c46a boards: arc: emsdp: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
8b947a0e91 soc: snps_emsdp: Port to HWMv2
Ports the snps_emsdp SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
990417bbde tests: Update board names for hwmv2
Updates tests that use board names which have changed with boards v2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
e12719154a boards: arc: em_starterkit: Convert to v2
Converts the board to hwmv2, documentation for this board needs to
be vastly updated

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
437a430fbe soc: snps_emsk: Port to HWMv2
Ports the snps_emsk SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
f93387f968 boards: arc: hsdk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
1cf2498b13 soc: snps_arc_hsdk: Port to HWMv2
Ports the snps_arc_hsdk SoC configuration to hardware model
version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
47abe81256 boards: arc: nsim: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
1e33786dc4 soc: snps_nsim: Port to HWMv2
Ports the snps_nsim SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
7f081914db boards: arc: qemu_arc: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
bc97349dbd soc: snps_qemu: Port to HWMv2
Ports the snps_qemu SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:06 +01:00
Jamie McCrae
a9902ff58e boards: Use zephyr_file for file links
Replaces normal text with :zephyr_file: blocks

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
126e1a4e72 boards: Fix invalid documentation links
Fixes issues with links in documentation

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Erwan Gouriou
899f0257c3 boards: stm32wb: Restore missing .defconfig files
Kconfig.defconfig files has been lost during migration.
Put them back.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:05 +01:00
Anas Nashif
790c10b1ee soc: x86/atom: imply mmu, do not select it
Board should be able to deselect mmu, so imply instead of strict
selection.

userspace is selected for atom already on the CPU level, so do not
reselect.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-01 15:50:05 +01:00
Anas Nashif
faee62088d boards: x86: remove qemu_x86_tiny_768
Having a board to just measure coverage for certain features is a bit of
any overkill. We will instead add overlays to the specific tests this
board mostly covers.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-01 15:50:05 +01:00
Anas Nashif
c34d186a57 x86: atom: remove soc.h with unused content
None of the code in soc.h is being used anywhere, so remove it and
remove include from various places.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-01 15:50:05 +01:00
Anas Nashif
1be3a9e9d3 x86: remove legacy ia32, use atom instead
ia32 is legacy and is just an atom, so deduplicate and use generic
atom soc instead.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-01 15:50:05 +01:00
Anas Nashif
60e6b400f9 boards: qemu: move qemu_x86 -> x86
Just follow others and drop qemu_ from the name, we have that in the
folder already.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-01 15:50:05 +01:00
Jamie McCrae
c4fbac27e8 boards: infineon: Add documentation index
Adds documentation index file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
b4dd29a9c4 maintainers: Update paths for hwmv2
Updates paths which have changed in hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
380f5fdb2b boards: cypress: Add documentation index
Adds documentation index file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
9de981be05 boards: arm: xmc47_relax_kit: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
6394e8a348 boards: arm: xmc45_relax_kit: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
04dbf17e19 soc: xmc_4xxx: Port to HWMv2
Ports the xmc_4xxx SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
c9731f1bce boards: arm: cy8cproto_063_ble: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
53d41869d1 boards: arm: cy8cproto_062_4343w: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
46c4f01427 boards: arm: cy8ckit_062s4: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
d285e19cf2 boards: arm: cy8ckit_062_wifi_bt: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
2bebd7298c boards: arm: cy8ckit_062_ble: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
af243274c2 soc: psoc6 and psoc_6: Port to HWMv2
Ports the psoc6 and psoc_6 SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Grzegorz Swiderski
105a2bae84 cmake: modules: boards: Fix board deprecation for HWMv2
Deprecating boards comes with similar challenges as with board aliases,
since BOARD_DEPRECATED is also set after parsing BOARD as user input.

With this patch, a deprecated board can be properly translated to a
board with identifiers. This opens up the possibility of recording all
legacy board names in `boards/deprecated.cmake`, such as:

   set(mps2_an521_remote_DEPRECATED mps2/an521/cpu1)

Unlike with aliases, though, there are additional restrictions for
building with BOARD=<deprecated>, which only makes this feature suitable
for deprecating v1 boards:

 * BOARD=<deprecated>/<identifier> is never allowed.
 * BOARD=<deprecated>@<revision> is not allowed if the old board already
   corresponds to a new board revision:

   set(<deprecated>_DEPRECATED <new-board>@<new-revision>)

Future enhancements will be needed for deprecating v2 boards.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Grzegorz Swiderski
dca54e000a cmake: modules: boards: Enhance board aliases for HWMv2
To address concerns about lengthy board identifiers in HWMv2, the
proposal is to apply the existing BOARD_ALIAS feature, like so:

   set(<alias>_BOARD_ALIAS <board>/<soc>)

It should then be possible to build with either:

   -DBOARD=<alias>            # expands to <board>/<soc>
   -DBOARD=<alias>/<variant>  # expands to <board>/<soc>/<variant>

However, this wouldn't work out of the box. A board alias can only be
expanded to a board name, without revision or identifier, because the
alias substitution happens after having parsed BOARD as user input -
namely, into BOARD (name), BOARD_REVISION, and BOARD_IDENTIFIER.

Furthermore, this means that in the legacy model, it was possible to
build with `-DBOARD=<alias>@<revision>`, and it would resolve to the
actual board name + revision.

To support both the old and new use cases, we can parse the alias just
like BOARD itself, then concatenate their identifiers as shown above.
Adding a revision works as before, but now it is also possible for the
alias to set its own revision. In this example:

   set(<alias>_BOARD_ALIAS <board>@<rev-A>/<soc>/<variant>)

`<rev-A>` is treated as the default revision, and it can be overridden:

   -DBOARD=<alias>          # expands to <board>@<rev-A>/<soc>/<variant>
   -DBOARD=<alias>@<rev-B>  # expands to <board>@<rev-B>/<soc>/<variant>

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Grzegorz Swiderski
fc314e8e3f cmake: modules: boards: Fix BOARD_ALIAS
`--format` is not a valid argument to `list_boards.py`.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
9a7c2ce6d5 soc: gaisler: Move Kconfig file
Moves a Kconfig file from hwmv1 to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Jamie McCrae
1ac56d0501 soc: soc_legacy: mips: Remove out file
Removes a file that is no longer used

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:05 +01:00
Fabio Baltieri
c054381a7a boards: adjust few boards/ paths
Adjust few paths in the board document and maintainer file to reflect
the new file location.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:05 +01:00
Fabio Baltieri
4d93b8d9fd boards: convert all microchip MEC boards to hwmv2
Convert mec1501modular_assy6885, mec15xxevb_assy6853,
mec172xevb_assy6906 and mec172xmodular_assy6930 to hwmv2.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:05 +01:00
Fabio Baltieri
ab2fcb1245 soc: convert microchip_mec to hwmv2
Convert the Microchip MEC soc/ to hardware model v2.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:50:05 +01:00
Dmitrii Golovanov
ead4b57a7b soc: arm64: intel_socfpga: hwmv2: Rename SoCs
Rename SoC for better HWMv2 use:
  `intel_socfpga_agilex`  --> `agilex`
  `intel_socfpga_agilex5` --> `agilex5`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:05 +01:00
Dmitrii Golovanov
d4c143d306 MAINTAINERS: intel_socfpga: Adjust to HWMv2 move
Adjust intel/intel_socfpga to HWMv2 move.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:05 +01:00
Dmitrii Golovanov
70a66ac03a boards: arm64: intel_socfpga: Move boards to subdirectories
Adjust boards directory structure to SoC structure:

 `boards/intel/intel_socfpga_agilex_socdk` ->
     `boards/intel/intel_socfpga/agilex_socdk`
 `boards/intel/intel_socfpga_agilex5_socdk` ->
     `boards/intel/intel_socfpga/agilex5_socdk`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:05 +01:00
Dmitrii Golovanov
8a85c07799 boards: arm64: intel_socfpga_agilex5_socdk: move to HWMv2
Move and convert to HWMv2 `intel_socfpga_agilex5_socdk`
board configuration.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:05 +01:00
Dmitrii Golovanov
8c253a99fc boards: arm64: intel_socfpga_agilex_socdk: move to HWMv2
Move and convert to HWMv2 `intel_socfpga_agilex_socdk`
board configuration.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:05 +01:00
Dmitrii Golovanov
ab883b8019 soc: arm64: intel_socfpga: Move and convert to HWMv2
Move and convert soc/arm64/intel_socfpga SoC family
`intel_socfpga` configuration to HWMv2 with its SoC
series: `agilex` and `agilex5` and related SoCs:
`intel_socfpga_agilex` and `intel_socfpga_agilex5`.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:04 +01:00
Dmitrii Golovanov
7c8b7a153b soc: arm: intel_socfpga_std: Rename with HWMv2
Rename SoC for better HWMv2 use:
 `intel_socfpga_std_cyclonev` --> `cyclonev`

The resulting shortened board name:
 `cyclonev_socdk/intel_socfpga_std_cyclonev` -->
 `cyclonev_socdk/cyclonev`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:04 +01:00
Dmitrii Golovanov
8dc2b911f6 soc: board: intel_socfpga_std: Align names to 'Cyclone V'
Align all names to `cyclonev` instead of using `cyclone5`.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:04 +01:00
Dmitrii Golovanov
402366117a soc: arm: intel_socfpga_std: Align board subdirectory
Aligh board directory to other Intel FPGA boards moving
`boards/intel/cyclonev_socdk` -->
`boards/intel/intel_socfpga_std/cyclonev_socdk`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:04 +01:00
Dmitrii Golovanov
f0a8d12745 boards: arm: cyclonev_socdk: Move to HWMv2
Move and convert to HWMv2 `cyclonev_socdk` board configuration.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:04 +01:00
Dmitrii Golovanov
2271f17a86 soc: arm: intel_socfpga_std: Move and convert to HWMv2
Move and convert to HWMv2 `soc/arm/intel_socfpga_std`
SoC family configuration, its SoC series `cyclonev`,
and SoC `intel_socfpga_std_cyclonev`.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:04 +01:00
Jamie McCrae
841c2a9d99 boards: riscv: beaglev_fire: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
3b314531ab boards: riscv: mpfs_icicle: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
d4ea2bf70b boards: riscv: m2gl025_miv: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
5256e9fcc3 soc: microchip_miv: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
18e5cf1d51 maintainers: Update path for hwmv2
Updates paths for hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
eab8628f98 boards: arm: qemu_cortex_m3: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
1532f2fee1 soc: ti_lm3s6965: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
430ca6a475 maintainers: Update ambiq paths
Updates ambiq SoC and board paths for hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
a9b9b41b91 boards: ambiq: Add index
Adds a documentation index file

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
db0271ecbb boards: arm: apollo4p_blue_kxr_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
957e2b2061 boards: arm: apollo4p_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
5a90a44454 soc: ambiq: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Daniel DeGrasse
a20c113fbd boards: nxp: convert ip_k66f to hwmv2
Convert ip_k66f to hardware model v2

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:04 +01:00
Daniel DeGrasse
34e3852a54 boards: nxp: convert usb_kw24d512 to hwmv2
Convert usb_kw24d512 to hardware model v2

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:04 +01:00
Declan Snyder
20ad604de6 boards: nxp: convert twr_kv58f220m to hwmv2
Convert twr_kv58f220m to hardware model v2

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-01 15:50:04 +01:00
Declan Snyder
2e2a7b7656 boards: nxp: twr_ke18f: convert to hwmv2
Convert twr_ke18f to hardware model v2

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-01 15:50:04 +01:00
Daniel DeGrasse
f7dcc2eb5e boards: nxp: convert rddrone_fmuk66 to hwmv2
Convert rddrone_fmuk66 to to hardware model v2

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:04 +01:00
Daniel DeGrasse
b58e90a2e9 boards: nxp: convert hexiwear to hwmv2
Convert hexiwear to hardware model v2. As multiple SOCs exist on this
board, the hexiwear_k64 and hexiwear_kw40z boards are combined into one
target.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:04 +01:00
Daniel DeGrasse
aae6e9e454 boards: nxp: frdm_kw41z: convert to hwmv2
Convert frdm_kw41z to hardware model v2

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:04 +01:00
Declan Snyder
1d3baac2d6 boards: nxp: convert frdm_kl25z to hwmv2
Convert frdm_kl25z to hardware model v2

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2024-03-01 15:50:04 +01:00
Mahesh Mahadevan
3b1d21483f boards: nxp: frdm_k82f: port to hwmv2
Port frdm_k82f to hardware model v2

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-03-01 15:50:04 +01:00
Daniel DeGrasse
6046e6ded9 boards: nxp: port frdm_k64f to hwmv2
Port frdm_k642 to hardware model v2

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:04 +01:00
David Leach
0a7bf9fd79 boards: nxp: port frdm_k22f to hwmv2
Port frdm_k22f to hardware model v2

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 15:50:04 +01:00
Daniel DeGrasse
dce697c823 boards: nxp: add toctree placeholder
Add table of contents tree placeholder for NXP boards, in preparation
for porting boards to HWMv2

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2024-03-01 15:50:04 +01:00
Daniel DeGrasse
666a353409 soc: nxp: kinetis: convert kinetis SOC family to hardware model V2
Convert kinetis SOC family to hardware model V2. Rework SOC Kconfig and
defconfig definitions to align with hardware model V2 guidelines.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
Co-authored-by: Emilio Benavente <emilio.benavente@nxp.com>
Co-authored-by: David Leach <david.leach@nxp.com>
Co-authored-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
Co-authored-by: Declan Snyder <declan.snyder@nxp.com>
Co-authored-by: Yves Vandervennet <yves.vandervennet@nxp.com>
2024-03-01 15:50:04 +01:00
Jamie McCrae
89f0a6034b maintainers: Update paths for renesas boards/socs
Updates paths to account for changes in hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
004bd43c48 tests/samples/snippets: Update board names for hwmv2
Updates board names which have changed with hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
a6d756923d boards: arm and arm64: rcar_h3ulcb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
3801216b8d boards: arm64: rcar_salvator_xs_m3: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
b7cc30aaea boards: arm: rcar_h3_salvatorx_cr7: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:04 +01:00
Jamie McCrae
866427ea29 boards: arm: arduino_uno_r4: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:03 +01:00
Jamie McCrae
2689b3f0ee soc: ra: Port to HWMv2
Ports the ra SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:03 +01:00
Jamie McCrae
e7ebc727c8 boards: arm: da1469x_dk_pro: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:03 +01:00
Jamie McCrae
903265b2bb boards: arm: da14695_dk_usb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:03 +01:00
Jamie McCrae
529a78ed51 soc: smartbond: Port to HWMv2
Ports the smartbond SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:03 +01:00
Jamie McCrae
97cf636ae0 boards: arm: rcar_spider_cr52: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:03 +01:00
Jamie McCrae
6d0c53f3a1 soc: rcar: Port to HWMv2
Ports the rcar SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:03 +01:00
Jamie McCrae
44e0aa0668 soc: renesas: rzt2m: Move folder structure for more SoCs
Updates the folder structure to allow for more SoCs to be added,
and fixes some minor issues

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:03 +01:00
Erwan Gouriou
85238fc205 boards: misc: Fixed STM32 based boards doc links
Fix few bad links following board migration.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
dffc08af56 boards: riscv: niosv_m: move and convert to HWMv2
Move and convert to HWMv2 riscv/niosv_m board configuration.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
545093abe4 boards: riscv: niosv_g: move and convert to HWMv2
Move and convert to HWMv2 riscv/niosv_g board configuration.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
ecfa192f1b soc: riscv: intel_niosv: move and convert to HWMv2
Move to HWMv2 and convert from soc/riscv/intel_niosv SoC family
`INTEL_NIOSV` series `NIOSV` SoCs `NIOSV_M` and `NIOSV_G`.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
fd1e8cdc30 hwmv2: sof: intel_adsp: submanifest provisional link
Provisional link to SOF with adjustment to the HWMv2 new
intel_adsp board names.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
8bf067e625 doc: boards: intel_adsp: Re-order pages
Index boards/intel/intel_adsp pages.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
4833275ccd MAINTAINERS: intel_adsp: Adjust to HWMv2 move
Adjust intel_adsp paths to HWMv2 move.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
b9a70e5ea2 soc: intel_adsp: tools: pylint compliance workaround
Disable Pylint compliance check warning `R0801:Similar lines`.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
18c70cc4bf hwmv2: tests: boards: intel_adsp: Adjust board names
Adjust tests to HWMv2 intel_adsp_ace board name changes.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
ca52baf9de hwmv2: boards: intel_adsp: Overhaul board configurations
Rename and join configurations for intel_adsp CAVS and ACE
boards to benefit from HWMv2 shortened names with resulting
names change:

  `intel_adsp_ace15_mtpm` --> `intel_adsp/ace15_mtpm`
  `intel_adsp_ace20_lnl`  --> `intel_adsp/ace20_lnl`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
d1b3bcce64 soc: boards: xtensa: intel_adsp_ace: Rename with HWMv2
Rename for better HWMv2 use:

  SoC - `intel_ace15_mtpm` --> `ace15_mtpm`
  SoC - `intel_ace20_lnl`  --> `ace20_lnl`

Resulting shortened name for boards:

  `intel_adsp_ace15_mtpm/intel_ace15_mtpm` -->
  `intel_adsp_ace15_mtpm/ace15_mtpm`

  `intel_adsp_ace20_lnl/intel_ace20_lnl` -->
  `intel_adsp_ace20_lnl/ace20_lnl`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
f362a8ae2c doc: soc: boards: intel_adsp_cavs25: Rename with HWMv2
Adjust documentation to HWMv2 board rename:
  `intel_adsp_cavs25`      -> `intel_adsp/cavs25`
  `intel_adsp_cavs25_tgph` -> `intel_adsp/cavs25/tgph`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
51dee5da92 tests: samples: boards: intel_adsp_cavs25: Rename with HWMv2
Adjust tests and samples to HWMv2 board rename:
     `intel_adsp_cavs25`      -> `intel_adsp/cavs25`
     `intel_adsp_cavs25_tgph` -> `intel_adsp/cavs25/tgph`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
e66c35e0d0 boards: xtensa: intel_adsp_cavs25: Rename board with HWMv2
Rename for better HWMv2 use:
 board - `intel_adsp_cavs25` to `intel_adsp`

Resulting name changes for boards:
 `intel_adsp_cavs25/cavs25`      -> `intel_adsp/cavs25`
 `intel_adsp_cavs25/cavs25/tgph` -> `intel_adsp/cavs25/tgph`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
d1491a4810 soc: boards: xtensa: intel_adsp_cavs25: Rename with HWMv2
Rename for better HWMv2 use:
 SoC - `intel_tgl_adsp` to `cavs25`

Resulting name changes for boards:
 `intel_adsp_cavs25/intel_tgl_adsp`      -> `intel_adsp_cavs25/cavs25`
 `intel_adsp_cavs25/intel_tgl_adsp/tgph` -> `intel_adsp_cavs25/cavs25/tgph`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
fa0fca79c4 scripts: west: runners: intel_adsp: Adjust path to HWMv2
Adjust script path to HWMv2 location at `soc/intel/intel_adsp/tools`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
acd18bfaf7 boards: xtensa: intel_adsp_ace20_lnl: move and convert to HWMv2
Move and convert to HWMv2 intel_adsp_ace20_lnl board configuration.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
546c94b958 boards: xtensa: intel_adsp_ace15_mtpm: move and convert to HWMv2
Move and convert to HWMv2 intel_adsp_ace15_mptm board configuration.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
8aab718c3e boards: xtensa: intel_adsp_cavs25_tgph: change to board variant
Change `intel_adsp_cavs25_tgph` board definition to be HWMv2 board
variant `intel_adsp_cavs25/intel_tgl_adsp/tgph`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
30f17424a4 boards: xtensa: intel_adsp_cavs25: move and convert to HWMv2
Move and convert to HWMv2 intel_adsp_cavs25 board configuration.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
35a97cb524 soc: xtensa: intel_adsp: HWMv2 workaround for SOF config
Apply a workaround at Kconfig.defconfig for CORE_COUNT default
value set overriding SOF arch/host incorrect defaults chosen
without ARCH specified by the changed HWMv2 cmake sequence.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Dmitrii Golovanov
fdc20fdff6 soc: xtensa: intel_adsp: move and convert to HWMv2
Move and convert soc/xtensa/intel_adsp SoC family configurations
to HWMv2 with its SoC series:
`ace` (INTEL_ACE) and `cavs` (INTEL_ADSP_CAVS).

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:03 +01:00
Torsten Rasmussen
22dc2b6391 cmake: improved board handling for revisions
This commit improves board handling for boards in HWMv2.
On a CMake rerun, then BOARD_DIR is passed to `list_boards.py` which
is extended to take such parameter.

This allows to run `list_boards.py` whenever CMake reruns without the
penalty of searching for all board.yml files, as only the board.yml of
the current BOARD_DIR is processed.

This allows `list_boards.py` to be invoked and from there obtain list
of valid revisions and board identifiers for further board validation.

This removes the need for caching additional CMake variables related to
the board identifier and revision and thereby remove the risk of
settings becoming out of sync as only the board provided by user is
needed.

This work further ensure that use-cases described in #50536 is still
supported.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:02 +01:00
Torsten Rasmussen
2f1e33a2e6 cmake: improve arch error message for invalid arch selection
Legacy hw model picked the arch based on folder names.
The new hw model allows for greater flexibility and instead uses the
architecture defined by `CONFIG_ARCH` in Kconfig.

Therefore check that ARCH is defined and fail with a better error
message if ARCH is not defined. The error message includes the board and
SoC selected to make it easier to trace such errors.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:50:02 +01:00
Jamie McCrae
c47c37d3db sample: basic: blinky_pwm: Exclude rpi_pico w variant
Adds an exclusion because this board does not have an LED defined
and will try to use the base board overlay file, resulting in
failure

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:02 +01:00
Jamie McCrae
7a788b9a18 boards: raspberry_pi: rpi_pico: Use full name for w variant
Updates the name to have the SoC in

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
7046b92d41 tests: atmel_sam: adc: Fix sam4e_xpro adc build
This add a missing sam4e_xpro overlay in the tests/drivers/adc for the
sam4e_xpro board.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
253ee9638c tests: atmel_sam0: Update platform name
This update all atmel_sam0 related entries to use the new
platform name.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
ccb4c63324 samples: atmel_sam0: Update platform name
This update all atmel_sam0 related entries to use the new
platform name.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
2d4acf9230 boards: arduino_nano_33_iot: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
a60d28969a boards: arduino_mkrzero: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
0409e51d3f boards: arduino_zero: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
1b2528df1b boards: wio_terminal: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
af1096e7ca boards: ev11l78a: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
0b1db9c53d boards: adafruit_trinket_m0: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
e9874671e2 boards: adafruit_itsybitsy_m4_express: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
ba6c014071 boards: adafruit_grand_central_m4_express: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
33ad4a51ca boards: adafruit_feather_m0_lora: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
9812f3d54e boards: adafruit_feather_m0_basic_proto: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
c76b1fbeca boards: serpente: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
649789e433 boards: seeeduino_xiao: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
6b3bdb7364 boards: same54_xpro: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
93dda5ee4b boards: samr34_xpro: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
e48e1f5d5b boards: samc21n_xpro: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
f11cf73df1 boards: saml21_xpro: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
ac73ed6dcd boards: samd20_xpro: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
0fdbe3552e boards: samd21_xpro: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
854cff3905 boards: samr21_xpro: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
a87ea5bc0a soc: atmel: sam0: Port to HWMv2
Port all Atmel SAM0 SoCs to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Jamie McCrae
706e5d27cd boards: riscv: neorv32: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:02 +01:00
Jamie McCrae
d1edcdd088 soc: neorv32: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:02 +01:00
Alberto Escolar Piedras
0f7add89ca boards: native_sim/posix: Add 64bit versions as variants
For native_sim and native_posix add the 64 bit version
definitions as board variants.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:50:02 +01:00
Francois Ramu
b6edad8d68 soc: soc_legacy: remove the arm/st_stm32 folder
Remove the entire soc/soc_legacy/arm/st_stm32 folder

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-03-01 15:50:02 +01:00
Francois Ramu
c58e0822a6 boards: Convert nucleo_f207zg to HWM v2
Port the board to HWMv2.

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-03-01 15:50:02 +01:00
Francois Ramu
b987093a80 soc: v2: stm32: Migrate STM32F2 series
Port STM32F2 series to HW model V2

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2024-03-01 15:50:02 +01:00
Jamie McCrae
2096fd4652 samples: bluetooth: hci_uart: Fix wrongly converted board names
Fixes an issue whereby converted board names were wrong

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
830f9c5a82 MAINTAINERS: Update Atmel entries
Update Atmel related rules to keep consistent.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
527cd9d8cd CODEOWNERS: Update Atmel entries
Update Atmel related rules to keep consistent.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
83af7d0c1c samples: atmel_sam: Update platform name
This update all atmel_sam entries to use the new platform name related
to sam_e70_xplained and sam_v71_xult.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:02 +01:00
Gerson Fernando Budke
fd9b84d457 tests: atmel_sam: Update platform name
This update all atmel_sam entries to use the new platform name related
to sam_e70_xplained and sam_v71_xult.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:01 +01:00
Gerson Fernando Budke
3c72fe863c boards: arduino_due: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:01 +01:00
Gerson Fernando Budke
37dfacbf9e boards: RoboKit1: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:01 +01:00
Gerson Fernando Budke
1108d7b0ed boards: sam_v71_xult: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:01 +01:00
Gerson Fernando Budke
bed44a5c28 boards: sam_e70_xplained: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:01 +01:00
Gerson Fernando Budke
40448c5a9f boards: sam4s_xplained: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:01 +01:00
Gerson Fernando Budke
31273692c0 boards: sam4l_ek: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:01 +01:00
Gerson Fernando Budke
35b5d33ef0 boards: sam4e_xpro: Convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:01 +01:00
Gerson Fernando Budke
3b84b9910a soc: atmel: Port SAM family to HWMv2
Port all the Atmel SAM SoCs to HWMv2.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
da00d0e7b9 boards: Convert nucleo_wba55cg to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
fb2103f89e boards: Convert nucleo_wba52cg to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
1f9a533fbc soc: st: stm32: Migrate STM32WBA series
Port STM32WBA series to HW model v2

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
3f92f65b28 boards: fix documentation for alientek and blues boards
Fix documentation for alientek and blues boards

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
7646b74aaf boards: stm32l4: doc: add zephyr_file to defconfig path
Add :zephyr_file: to the defconfig path for STM32L4 boards

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
fea54ddcd9 boards: Convert adi_eval_adin2111ebz to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
d47f1878b1 boards: Convert adi_eval_adin1110ebz to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
ae42be236b boards: Convert swan_r5 to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
83bd1a9ecc boards: Convert stm32l4r9i_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
39c26f09ed boards: Convert stm32l496g_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
29d03c970b boards: Convert stm32l476g_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
74acec315c boards: Convert sensortile_box to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
fee6d8676e boards: Convert pandora_stm32l475 to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
008b5d9392 boards: Convert nucleo_l4r5zi to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
24e357d623 boards: Convert nucleo_l4a6zg to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
2c5f9dcce0 boards: Convert nucleo_l496zg to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
4da061646f boards: Convert nucleo_l476rg to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
15956a69b8 tests: drivers: flash: stm32: update platform name
Update Nucleo L452RE-P name

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
80324f7707 boards: Convert nucleo_l452re_p to HWM v2
Port the board to HWMv2. Introduce it as variant of nucleo_l452re

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
9893e0d111 boards: Convert nucleo_l452re to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
46f92b227b boards: Convert nucleo_l433rc_p to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
ed5d1bb4cd boards: Convert nucleo_l432kc to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:01 +01:00
Guillaume Gautier
325f95ec20 boards: Convert nucleo_l412rb_p to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
d055676307 boards: Convert disco_l475_iot1 to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
c7a415d92c boards: Convert b_l4s5i_iot01a to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
d15144f582 soc: st: stm32: Migrate STM32L4 series
Port STM32L4 series to HW model v2

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Alberto Escolar Piedras
a63ff71bcb boards: nrf_bsim: Add new nrf5340 board definitions
With the proper structure for the hwmv2, and matching the
real HW ones.
Also add a note about the old ones being just a middle step
for backwards compatibility.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:50:00 +01:00
Alberto Escolar Piedras
b53c6f412c boards: nrf_bsim: Remove redundant option setting
The BOARD value is set in a common place for hwmv2.
No need to set it here also.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:50:00 +01:00
Dmitrii Golovanov
83eb4fc069 MAINTAINERS: intel_ish: Adjust to HWMv2 move
Adjust intel/intel_ish SoC and board maintainers to HWMv2 move.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:00 +01:00
Dmitrii Golovanov
715685b19f boards: x86: intel_ish: move and convert intel_ish boards to HWMv2
Move and convert to HWMv2 the following board configurations:
intel_ish_5_4_1, intel_ish_5_6_0, intel_ish_5_8_0

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:00 +01:00
Dmitrii Golovanov
5b9ef94106 soc: x86: intel_ish: move and convert to HWMv2
Move and convert soc/x86/intel_ish to HWMv2 as soc/intel/intel_ish

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
12b297707a boards: Convert stm32wb5mmg to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
cdcea932bc boards: Convert stm32wb5mm_dk to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
0a3ae2b223 boards: Convert nucleo_wb55rg to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
20b4ce17d5 soc: st: stm32: Migrate STM32WB series
Port STM32WB series to HW model v2

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
47c65400d6 soc: st: stm32: fix stm32l0 family
Fix the name of the stm32l0 family.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
59ec56f9e6 boards: Convert stm32h573i_dk to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
dc5977dbba boards: Convert nucleo_h563zi to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Guillaume Gautier
a6e4928543 soc: st: stm32: Migrate STM32H5 series
Port STM32H5 series to HW model v2

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 15:50:00 +01:00
Erwan Gouriou
99f248e048 soc: stm32u5: Fix references after conversion to hw modelv2
b_u585i_iot02a_ns is now b_u585i_iot02a/stm32u585xx/ns.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:00 +01:00
Erwan Gouriou
15f16834e6 boards: Convert stm32u5a9j_dk to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:00 +01:00
Erwan Gouriou
c1ee449ef1 boards: Convert sensortile_box_pro to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:00 +01:00
Erwan Gouriou
db4deddf9d boards: Convert nucleo_u5a5zj_q to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:00 +01:00
Erwan Gouriou
2fd3ed43d2 boards: Convert nucleo_u575zi_q to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:00 +01:00
Erwan Gouriou
902fceb173 boards: Convert b_u585i_iot02a to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:00 +01:00
Erwan Gouriou
d716ca1a10 soc: st: Migrate stm32u5 series to new hw model
Migrate STM2U5 series to new HW model.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:50:00 +01:00
Dmitrii Golovanov
b7abc89428 hwmv2: boards: x86: doc: Adjust common docs to new locations
Adjust x86/common doc location to HWMv2 move.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:50:00 +01:00
Alberto Escolar Piedras
69b334f54b MAINTAINERS: Change paths to native and nrf*bsim boards
To match the current placement.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:50:00 +01:00
Alberto Escolar Piedras
614611a528 boards: nrf*_bsim: Convert to HW model v2
With a new board.yml file and reorganizing their
Kconfig options.

Note: the nrf5340 variants remain as their own
targets, instead of being variants of the base ones
to avoid breakage in this commit
(while not having a massime commit)

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:50:00 +01:00
Alberto Escolar Piedras
5821b9ec2e board: native_sim/posix: Convert to hwmv2
With new board.yml files and reorganizing their
Kconfig options.

Note: native_posix_64 & native_sim_64 remain as their own
targets, instead of being variants of the base ones
to avoid breakage in this commit, while not
having a massive commit.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:50:00 +01:00
Alberto Escolar Piedras
04cbad174e soc: native: Convert to HWMv2
Add a soc.yml and reorganize the Kconfig options

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:50:00 +01:00
Alberto Escolar Piedras
24ca0febfc boards: nrf_bsim: Fix path to pinctrl_soc.h
Just fix the path, it was not correct.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:50:00 +01:00
Alberto Escolar Piedras
9a32559a2d cmake: FindHostTools: Fix for hwmv2 for host based targets
With hwmv2, the ARCH variable is not yet defined
when this module is loaded (kconfig is parsed after this).
So we cannot rely on it to detect if we are building for a
host target.
For this case, let's instead detect it by the BOARD or
BOARD_DIR which are some of the very few things defined
at this point.
We retain the old check to support hwmv1 boards which
may be in other folders.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:50:00 +01:00
Gerard Marull-Paretas
c4b11e0251 boards: longan_nano: port to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:50:00 +01:00
Gerard Marull-Paretas
97edd05be3 boards: gd32vf103c_starter: port to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:50:00 +01:00
Gerard Marull-Paretas
9cf624c410 boards: gd32vf103v_eval: port to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:59 +01:00
Gerard Marull-Paretas
b40bf25e5e soc: gd_gd32: reorganize folders
Move soc/gd_gd32 to soc/gd/gd32.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:59 +01:00
Gerard Marull-Paretas
71600d7e95 soc: gd_gd32: move pinctrl_soc.h content back to soc folder
Because we can now group all architectures within the same family, so
there's no need to place files outside of soc/family folder.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:59 +01:00
Gerard Marull-Paretas
2bd84a1bc5 soc: gd_gd32: port gd32vf103 series to HWMv2
Port the only RISC-V SoC from GigaDevice to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:59 +01:00
Fabio Baltieri
9dc342143b boards: doc: fix a bunch of broken reference
Fix a bunch of broken reference to configuration and other files. Drop
two TI ones that were stale, file were long gone, add few zephyr_file
tags.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:49:59 +01:00
Gerard Marull-Paretas
10392d693d doc: boards: split out shields
So that they have their own list, independent of boards list.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:59 +01:00
Gerard Marull-Paretas
b2def8ed3a boards: acrn: fix title
Use a better title so that it fits the board list.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:59 +01:00
Jamie McCrae
bf7d3efe78 boards: riscv: tlsr9518adk80d: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:59 +01:00
Jamie McCrae
c579770e1d soc: telink_tlsr: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
9131540109 soc: stm32h7: Couple of tests fixes following migration
This should cover all issues.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
2efcefc089 boards: Convert stm32h7b3i_dk to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
d9b295a85b boards: Convert stm32h750b_dk to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
a2f56bdcd5 boards: Convert stm32h747i_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
00314155df boards: Convert stm32h735g_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
b08819dff7 boards: Convert nucleo_h7a3zi_q to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
56456c16e5 boards: Convert nucleo_h753zi to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
91f9198dc4 boards: Convert nucleo_h745zi_q to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
96f1bafbf9 boards: Convert nucleo_h743zi to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
b290f25baa boards: Convert nucleo_h723zg to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
9fbe6bf191 boards: Convert fk7b0m1_vbt6 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
44bcfe57c7 boards: Convert arduino_portenta_h7 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
4c86af7eae boards: Convert arduino_opta_m4 to HWM v2
Port the board to HWMv2.

Additionally, change the board name to arduino_opta
as the compilation target is now fully explicit on the
core in use.
Besides, it will ease a potential addition of the m7 core.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
b4f852f738 boards: Convert arduino_giga_r1 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
bac9789264 soc: st: Migrate stm32h7 series to new hw model
Migrate STM2H7 series to new HW model.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
a954e1722d boards: stm32l0: Cleanup board _defconfig files after migration
Remove obsolete comments.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
7e8515b241 boards: Convert ronoth_lodev to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
25246c21ef boards: Convert nucleo_l073rz to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
09396eb2e6 boards: Convert nucleo_l053r8 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
70c004fd83 boards: Convert nucleo_l031k6 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
e3daa98e79 boards: Convert nucleo_l011k4 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
a2de60c6da boards: Convert dragino_nbsn95 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
e877ce9cec boards: Convert dragino_lsn50 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
2b50218c23 boards: Convert b_l072z_lrwan1 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
4a65f55916 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>
2024-03-01 15:49:59 +01:00
Fabio Baltieri
cc6e6be01f boards: fix few leftover ITE board references
Fix few leftover ITE references from the conversion to hwmv2.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:49:59 +01:00
Erwan Gouriou
a837303268 soc: stm32: Protect Kconfig symbols by SOC_FAMILY_STM32
Should avoid polluting other socs.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 15:49:58 +01:00
Alberto Escolar Piedras
88e5959f17 hwm2: Fix unit_testing: it is also a legacy board by now
b3243bb501
missed moving the unit_testing target board and soc
definition to the corresponding legacy folders
leaving them broken. Fix it by doing the equivalent
move.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Alberto Escolar Piedras
95e06e8663 cmake: Fix uses of old SOC path
In quite a few places in the cmake files
${SOC_DIR}/${ARCH}/${SOC_PATH}
was used to get to something in the soc folder,
but these are only defined for soc_v1.
socv2 defines a full SOC_V2_DIR.
Let's define a common variable for the full path which
can be used in other cmake files,
and correct the current uses.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Torsten Rasmussen
d517d3cc24 soc: set linker script for ra4m1
Follow-up: #66648

Commit 595b06aaa9 accidentally removed
linker.ld for the ra4m1 SoC.

As the linker.ld anyway included the common arm cortex_m linker script
then fix this by setting a correct SOC_LINKER_SCRIPT value.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Fabio Baltieri
68f9aeddab soc: ite: add SOC_SERIES_ITE_IT8XXX2 guards around ITE options
Add a check for SOC_SERIES_ITE_IT8XXX2 around ITE options so that they
only get set when building for ITE platforms.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:49:58 +01:00
Fabio Baltieri
ccf4f48f01 boards: convert ite boards to hwmv2
Convert it82xx2_evb and it8xxx2_evb to hwmv2.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:49:58 +01:00
Fabio Baltieri
4a6e286a3b soc: convert ite_ec to hwmv2
Convert the ite_ec soc to the hardware model v2.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-03-01 15:49:58 +01:00
Torsten Rasmussen
12e375f826 doc: handle arch / soc / board docs in new hardware model
Updates to Zephyr Kconfig doc generation for new hardware model.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
b4db917de9 boards: Add documentation index files
Adds index files for newly converted boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
d6e0d27efe samples: bluetooth: hci_uart: Fix wrong named files
Fixes an issue whereby some overlay filenames were wrongly
updated in a prior commit

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
bc16a7a727 tests: Update board names for hwmv2
Updates tests that use board names which have changed with
boards v2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
2834883843 boards: riscv: rv32m1_vega: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
9c68231ba9 soc: openisa_rv32m1: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
986e9619fd soc: starfive_jh71xx: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
e82932e787 boards: riscv: litex_vexriscv: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
cb9339f88f soc: litex_vexriscv: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
1cd4c34654 boards: riscv: opentitan_earlgrey: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
92eadf06b8 soc: opentitan: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
a8659e170b boards: riscv: titanium_ti60_f225: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
359133d725 soc: efinix_sapphire: Port to HWMv2
Ports the SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
6d466429ed soc: soc_legacy: riscv: litex_vexriscv: Add updated paths
Adds updates paths for this SoC with the new riscv common folder
to prevent build failures until it is converted to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
a1ff441eb3 boards: riscv: adp_xc7k_ae350: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
ef82a8255c soc: ae350: Port to HWMv2
Ports the ae350 SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
282204758a samples: boards: stm32: ccm: fix include path
Update with the new board path.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
8ca9341195 samples: basic: threads: fix broken reference
Sphinx reference was updated by mistake.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
8a947f446d boards: nrf52840dk: fix rst syntax
Add a missing blank line.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
324cb41153 boards: nordic_nrf: fix broken references
Those were likely updated by mistake when changing to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
963c74df1c boards: intel_(ish|adl|ehl|rpl), up_squared: fix include paths
Update some included file paths according to the new directory layout.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
8d518ce504 boards: legacy: drop empty folders
Drop folders that no longer have boards.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
0fef0cef5b boards: mps2: fix table formatting
Table had wrong formatting, causing documentation warnings.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
e52ccc244f boards: add HWMv2 board index
Add a new board index based on HWMv2 structure (vendor based).

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
c7426eca5e boards: arm: add legacy tag
So that it does not collide with the ARM Ltd. boards.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
1eba9d8a8f boards: acrn: create vendor folder
So that the same structure is followed by all boards, easing the
standardization of tables in the documentation.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Dmitrii Golovanov
8d92edc727 tests: kernel: Adjust qemu_x86_tiny_768 configuration HWMv2
Adjust qemu_x86_tiny/ia32/768 configuration for:
 tests/kernel/mbox/mbox_api
 tests/kernel/mem_protect/stackprot

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 15:49:58 +01:00
Torsten Rasmussen
75117d1b2d scripts: ensure posix path is used with --cmakeformat
When printing with --cmakeformat format specifier then dir output should
be printed as posix path, that is with forward slashes '/'.

This will make output compatible with CMake path style.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Gerard Marull-Paretas
0b0384b56a maintainers: update paths after HWMv2 changes
This is a follow-up update of the MAINTAINERS.yml file with new paths
due to the HWMv2 changes.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 15:49:58 +01:00
Jamie McCrae
c1b77b223d boards: arm: pan1783: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
91a077b2ab boards: posix: nrf_bsim: Update paths
Updates paths for the moved nordic_nrf SoC folder

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:58 +01:00
Jamie McCrae
413b6c2a40 cmake: modules: configuration_files: Add board identifier overlay file
Fixes an issue in hwmv2 whereby an overlay file exists with the full
board name and identifier which worked in hwmv1

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
4f572ba24f treewide: Update board names for hwmv2
Updates tests that use board names which have changed with boards v2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
cb348c7edf boards: arm: nrf54l15pdk_nrf54l15: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
811ad90566 boards: arm: nrf54h20pdk_nrf54h20: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
d44ef90cf8 soc: nordic_nrf: Migrate nRF54H/nRF54L to v2 and fix nrf
Moves this SoC over from v1 to v2 so it can be used in HWMv2, and
fix the SoC configuration for existing nordic_nrf devices which
was not ported properly

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
c860f205de boards: arm: nrf9151dk_nrf9151: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
fba98a1763 soc: nordic_nrf: Migrate nRF9151 to v2
Moves this SoC over from v1 to v2 so it can be used in HWMv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
5c156a2d35 boards: arm: 96b_carbon_nrf51: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
cfc47a3a4b boards: arm: nrf9161dk_nrf9161: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
37129b4e44 boards: arm: nrf9131ek_nrf9131: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
a923beba5d boards: arm: bl5340_dvk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
d242b2703b boards: arm: raytac_mdbt53v_db_40_nrf5340: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
9c80d4e644 boards: arm: raytac_mdbt53_db_40: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
28268c4938 boards: arm: nrf5340_audio_dk_nrf5340: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
33ad2b5bc6 boards: arm: thingy53_nrf5340: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
40daa94f2d boards: arm: nrf9160_innblue22: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
2b0dbb9d51 boards: arm: nrf9160_innblue21: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
ee6f7697ac boards: arm: sparkfun_thing_plus_nrf9160: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
594e4bad6b boards: arm: circuitdojo_feather_nrf9160: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
a5803ba099 boards: arm: actinius_icarus: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
db8c275456 boards: arm: actinius_icarus_bee: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
30177cf53d boards: arm: actinius_icarus_som: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
486504cf24 boards: arm: actinius_icarus_som_dk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
dd0672a64c boards: arm: nrf9160dk_*: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
c1565b3d14 boards: arm: xiao_ble: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
6dd2723314 boards: arm: qemu_cortex_m0: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
ee1ce24a42 boards: arm: bbc_microbit: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
1952d559f2 boards: arm: rm1xx_dvk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
9e12c3d8bd boards: arm: nrf51dongle_nrf51422: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
0ffbc1da33 boards: arm: nrf51_blenano: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:57 +01:00
Jamie McCrae
be52dfb7b6 boards: arm: nrf51_vbluno51: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
4c29d1827f boards: arm: nrf51_ble400: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
5b4a9556fd boards: arm: raytac_mdbt53_db_40_nrf5340: Fix typo
Fixes a typo that ruins grep searches when trying to find
nrf52840-based boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
69e5d87a15 boards: arm: contextualelectronics_abc: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
5e4ace1bbe boards: arm: degu_evk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
2762460a64 boards: arm: pan1781_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
fdc3913e76 boards: arm: ubx_evkninab1_nrf52832: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
9c9c3a09a1 boards: arm: holyiot_yj16019: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
109edc296f boards: arm: blueclover_plt_demo_v2_nrf52832: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
7bfcdbbe8f boards: arm: decawave_dwm1001_dev: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
0fbb543983 boards: arm: acn52832: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
073e0f8080 boards: arm: we_proteus2ev_nrf52832: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
197a19f396 boards: arm: ebyte_e73_tbb_nrf52832: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
1616fc8ae5 boards: arm: nrf52_vbluno52: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
5622077738 boards: arm: nrf52_sparkfun: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
a6289516e4 boards: arm: 96b_nitrogen: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
439d836883 boards: arm: nrf52_blenano2: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
16e65f09c4 boards: arm: arduino_nicla_sense_me: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
862efd5a21 boards: arm: thingy52_nrf52832: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
dede0f6cd3 boards: arm: nrf52_adafruit_feather: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
91e864ea29 boards: arm: nrf52832_mdk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
47ec3e416b boards: arm: ruuvi_ruuvitag: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
52f797a227 boards: arm: pinetime_devkit0: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
433db339f9 boards: arm: ubx_evkannab1_nrf52832: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
a646d3f2d5 boards: arm: ubx_bmd300eval_nrf52832: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
d0d434bf86 cmake: print identifier instead of variant
Update board info printing to use the common term identifier.
Variant is used for the final part of the identifier when a board has
multiple build variants.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
c3f5ed8157 boards: arm: we_proteus3ev_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
eecff8ee7a boards: arm: nrf52840_mdk_usb_dongle: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
34507614f6 boards: arm: nrf52840_mdk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
f02b56cb96 boards: arm: nrf52840_blip: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
600c55c92a boards: arm: nrf52840_papyr: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
f294bfc5e4 boards: arm: reel_board: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
882524d2a0 boards: arm: nrf21540dk_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
4bce0e9b39 boards: arm: nrf52840dongle_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
d0229c771f boards: arm: particle_argon: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:56 +01:00
Jamie McCrae
23a0570e64 boards: arm: particle_boron: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
b6d3e1764f boards: arm: particle_xenon: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
499f3e7902 boards: arm: rak5010_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
9ae6b1804d boards: arm: rak4631_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
fe2c90da5c boards: arm: pinnacle_100_dvk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
3d4d46698c boards: arm: ubx_evkninab3_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
b1afbf0158 boards: arm: ubx_bmd380eval_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
9f9897c872 boards: arm: ubx_bmd345eval_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
f7fb2030c7 boards: arm: ubx_bmd340eval_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
7186432662 boards: arm: raytac_mdbt50q_db_40_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
32c4bdc0c4 boards: arm: pan1780_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
7b64c638a8 boards: arm: pan1770_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
156ee8ad8a boards: arm: mg100: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
3d33dadeb0 boards: arm: arduino_nano_33_ble: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
4fee7371d2 boards: arm: adafruit_itsybitsy_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
ad37a0c222 boards: arm: adafruit_feather_nrf52840: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
cf85b7169f boards: arm: bt510: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
44b67ac430 boards: arm: bt610: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
7dbb65d371 boards: arm: ubx_evkninab4_nrf52833: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
5e79cb957d boards: arm: raytac_mdbt50q_db_33_nrf52833: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
12bd83a218 boards: arm: pan1782_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
1a135ec352 boards: arm: bbc_microbit_v2: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
4dbe97e5ea boards: arm: nrf52833dk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
d632b90043 boards: arm: ubx_bmd360eval_nrf52811: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
cc1a30f24b boards: arm: we_ophelia1ev_nrf52805: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
df0df9000b boards: arm: ubx_bmd330eval_nrf52810: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
d2c7972a9a boards: arm: nrf52dk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
202c2bf447 boards: arm: bl654_sensor_board: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
c3e36f2042 boards: arm: bl654_usb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
b9dd58aea1 boards: arm: bl654_dvk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
0e1898b093 boards: arm: bl653_dvk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
286f4a7524 boards: arm: bl652_dvk: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
d1709cdb37 boards: update nRF51dk board to board scheme v2.
This commit updates nrf51dk_nrf51422 to use board scheme v2, and
thus becomes board nrf51dk with the SoC nrf51422.

It also uses the new SoC approach, and thereby ensuring that the right
SoC is always used, and cannot accidentially be changed by the user.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
8f040cff2c boards: Update nrf5340dk_nrf5340 to HWMv2 scheme
This commit updates nrf5340dk_nrf5340 to use board scheme v2, and
thereby remove the Kconfig BOARD setting, as this is now passed from
CMake.

The nRF5340dk now support cpuapp and cpunet as cpusets, and the ns as
a build variant.

It also uses the new SoC approach, and thereby ensuring that the right
SoC is always used, and cannot accidentially be changed by the user.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:55 +01:00
Jamie McCrae
8c90fae8e0 boards: update nRF52840dk_nrf52840/nrf52811 board to board scheme v2.
This commit updates nrf52840dk_nrf52840 and nrf52840_nrf52811 to use
board scheme v2, and thereby remove the Kconfig BOARD setting, as this
is now passed from CMake.

It combines both boards in a common nrf52840dk board folder where each
SoC is an entry in the board.yml file.

It also uses the new SoC approach, and thereby ensuring that the right
SoC is always used, and cannot accidentially be changed by the user.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
c828dcc60e boards: common: openocd-nrf5: Add HWMv2 support
Adds support for determining the running from the identifier
which is needed for HWMv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
c79f1b0d94 kconfig: soc: adopt Nordic SoC series to support hw model v2 scheme
This commit adopts hw model v2 to nRF SoC family.

This ensures that when hw model v2 is used for an nRF51, nRF52, nRF53,
and nRF91 SoC series, so that all SoC selections are handled internally
by Kconfig, and no selection / re-configuration is possible by end-user
or through configuration files.

Hw model v2 requires the SoC to be self-contained, that is no
references are allowed out-side the SoC Kconfig tree.

All Zephyr Kconfig specifics are therefore sourced into the Zephyr
Kconfig tree through Kconfig.zephyr and Kconfig.zephyr.defconfig.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
3584b30fc1 tests: Update board names for hwmv2
Updates tests that use board names which have changed with boards v2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
94024d940e boards: arm: arty_a7: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
8053c3a8df boards: arm: scobc_module1: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
d5473b76fe soc: designstart: Port to HWMv2
Ports the designstart SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
f5792b05e7 boards: arm: fvp_baser_aemv8r_aarch32: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
ff202daa8e soc: fvp_aemv8r_aarch32: Port to HWMv2
Ports the fvp_aemv8r_aarch32 SoC configuration to hardware model
version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
e66cbc2945 boards: arm: v2m_musca_s1: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
33b47b2edb boards: arm: v2m_musca_b1: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
baeebd31d2 soc: musca: Port to HWMv2
Ports the musca SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
73b257a3f9 boards: arm: v2m_beetle: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
85de0888ec soc: beetle: Port to HWMv2
Ports the beetle SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 15:49:54 +01:00
Jamie McCrae
867960a891 manifest: Update modules
Updates modules with fixes for board names changed as part of hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2024-03-01 15:49:52 +01:00
Jamie McCrae
6ca677ed3a boards: arm: mps2: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:19:39 +00:00
Anas Nashif
bcf4ad19d4 twister: build_dir: convert / to _ to support hwmv2
Convert platform name in the build_dir variable to use _ instead of /.
Otherwise we will be creating deep hierachy of directories based on the
new platform name containing slashes.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-03-01 14:17:26 +00:00
David Leach
0ac386683f soc: Kconfig.v2: Add SOC_PART_NUMBER
Add SOC_PART_NUMBER to set of SOC configuration parameters

Signed-off-by: David Leach <david.leach@nxp.com>
2024-03-01 14:17:26 +00:00
Abderrahmane Jarmouni
9242c3c78f soc: stm32: soc.yml: reorder series
reorder series in alphabetical order

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:26 +00:00
Abderrahmane Jarmouni
248d17f160 boards: stm32: cleanup
delete obsolete .conf files

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:26 +00:00
Abderrahmane Jarmouni
0a67265e99 boards: stm32: fix for boards with revisions
fix .overlay name for boards with revisions.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:26 +00:00
Erwan Gouriou
f8d44317ee soc: stm32l5: Rename overlays for nucleo_l552ze_q ns target.
File name should now be nucleo_l552ze_q_stm32l552xx_ns.overlay

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:26 +00:00
Erwan Gouriou
400343d17e soc: stm32: Set default on USE_DT_CODE_PARTITION
Rather than configuring USE_DT_CODE_PARTITION in all ns targets,
do it conditionally as part of SoC description.

This allows cleaning up some BOARD dedicated symbols that are now
useless.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:26 +00:00
Erwan Gouriou
d783ef549a soc: stm32l5: Update stm32l5 non secure targets in various places
Need to update board name scheme for L5 ns targets.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:26 +00:00
Erwan Gouriou
643aeac552 boards: Convert stm32l562e_dk to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:26 +00:00
Erwan Gouriou
e601d64344 boards: Convert nucleo_l552ze_q to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:26 +00:00
Erwan Gouriou
2f7a387b32 soc: st: Migrate stm32l5 series to new hw model
Migrate STM2L5 series to new HW model.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:26 +00:00
Grzegorz Swiderski
519752efcd boards: xenvm: doc: Remove reference to deleted file
`xenvm_xenvm_defconfig` no longer exists. Take this opportunity to refer
to board configurations by their actual identifiers.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-01 14:17:26 +00:00
Grzegorz Swiderski
06263dd717 boards: xenvm: Unset HEAP_MEM_POOL_SIZE in gicv3 variant
In HWMv1, the `xenvm` and `xenvm_gicv3` boards used different heap sizes
- 16384 and 0 (default) respectively. Due to HWMv2 defconfig inheritance
the setting must be moved to `Kconfig.defconfig`.

As a result, `xenvm_xenvm_gicv3_defconfig` can be removed, because it is
now equal to `xenvm_defconfig` (base).

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-01 14:17:26 +00:00
Grzegorz Swiderski
66b0df5526 boards: qemu_cortex_a53: Fix Kconfig warnings in SMP variant
A combination of multiple defconfigs resulted in this:

   CONFIG_QEMU_ICOUNT=y
   CONFIG_QEMU_ICOUNT_SHIFT=4  # depends on QEMU_ICOUNT
   CONFIG_QEMU_ICOUNT_SLEEP=y  # depends on QEMU_ICOUNT
   CONFIG_QEMU_ICOUNT=n        # warning: unsatisfied dependencies

Fix this by setting the symbols in `Kconfig.defconfig` instead. Not only
does this allow for proper defconfig inheritance, it also allows samples
to control the value of QEMU_ICOUNT.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-01 14:17:26 +00:00
Grzegorz Swiderski
fa07bd9419 boards: mps3: Fix non-secure variant
Both TRUSTED_EXECUTION_SECURE and TRUSTED_EXECUTION_NONSECURE were being
enabled, through a combination of multiple defconfigs.

Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no>
2024-03-01 14:17:26 +00:00
Erwan Gouriou
8f6f0726dd boards: Move xenvm under xen
Doesn't looks ok to be directly under boards.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:25 +00:00
Erwan Gouriou
7b155a7031 boards: Raspberry Pi vendor fix
Use same vendor name for all R-Pi boards.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:25 +00:00
Erwan Gouriou
804697afa5 boards: Move 96b_aerocore to 96boards
Debatable, but since doc link points to www.96boards.org, it would make
more sense to me.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:25 +00:00
Dmitrii Golovanov
d2f001e320 boards: x86: acrn: move and convert to HWMv2
Move and convert to HWMv2 `acrn` and `acrn_ehl_crb` board
configurations.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:25 +00:00
Dmitrii Golovanov
ec7f7b3c30 tests: kernel: qemu_x86: adjust to the HWMv2
Adjust qemu_x86 board configuration names to HWMv2 scheme.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:25 +00:00
Dmitrii Golovanov
89dfcddc7e boards: x86: qemu_x86_tiny@768: change to board variant
Change `qemu_x86_tiny@768` board revision to `qemu_x86_tiny/ia32/768`
board variant configuration.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:25 +00:00
Dmitrii Golovanov
eb724eb6a7 boards: x86: qemu_x86: optimize default HWMv2 configurations
Remove duplicated Kconfig default options from qemu_x86 board
variants' configuration keeping only differences in regard
of the appropriate board configurations.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:25 +00:00
Dmitrii Golovanov
6f1043cde6 boards: x86: qemu_x86: move and convert to HWMv2
Move and convert qemu_x86 board configurations to HWMv2.

Several board configurations have changed their identifiers
to the HWMv2 scheme:

 - qemu_x86_nokpti --> qemu_x86/ia32/nokpti
 - qemu_x86_nommu  --> qemu_x86/ia32/nommu
 - qemu_x86_nopae  --> qemu_x86/ia32/nopae
 - qemu_x86_virt   --> qemu_x86/ia32/virt
 - qemu_x86_xip    --> qemu_x86/ia32/xip

 - qemu_x86_64_nokpti --> qemu_x86_64/ia32/nokpti

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:25 +00:00
Dmitrii Golovanov
cab924cbfb soc: x86: ia32: move and convert to HWMv2
Move and convert soc/x86/ia32 to HWMv2.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:25 +00:00
Dmitrii Golovanov
237fdff918 soc: x86: lakemont: move and convert to HWMv2
Move and convert soc/x86/lakemont to HWMv2

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:25 +00:00
Abderrahmane Jarmouni
03042b7704 boards: move 96b_carbon to 96boards folder
move 96b_carbon board to 96boards folder

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:25 +00:00
Abderrahmane Jarmouni
767b94414e boards: rename vendor seeed to seeed_studio
rename seeed folder to seeed_studio

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:25 +00:00
Abderrahmane Jarmouni
07fa3a3d79 boards: Convert olimex_lora_stm32wl_devkit to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:25 +00:00
Abderrahmane Jarmouni
ba01d3beca boards: Convert nucleo_wl55jc to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:25 +00:00
Abderrahmane Jarmouni
7ce84f4041 boards: Convert lora_e5_mini to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:25 +00:00
Abderrahmane Jarmouni
b988bae576 boards: Convert lora_e5_dev_board to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:24 +00:00
Abderrahmane Jarmouni
6fbf39c726 soc: v2: stm32: Migrate STM32WL series
Port STM32WL series to HW model V2

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:24 +00:00
Guillaume Gautier
4a41878442 soc: st: stm32g4: add missing include
Add missing soc.h include.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:24 +00:00
Guillaume Gautier
1e79ba15f6 boards: Convert weact_stm32g431_core to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:24 +00:00
Guillaume Gautier
ffdcb60185 boards: Convert nucleo_g474re to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:24 +00:00
Guillaume Gautier
d6acb08d3e boards: Convert nucleo_g431rb to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:24 +00:00
Guillaume Gautier
90e592ffd1 boards: Convert b_g474e_dpow1 to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:24 +00:00
Guillaume Gautier
eb8a7e3441 soc: st: stm32: Migrate STM32G4 series
Port STM32G4 series to HW model v2

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:24 +00:00
Jamie McCrae
ada469f237 tests: Update board names for hwmv2
Updates tests that use board names which have changed with
boards v2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:24 +00:00
Jamie McCrae
0342433187 boards: arm: npcx9m6f_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:24 +00:00
Jamie McCrae
c10248d964 boards: arm: npcx7m6fb_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:24 +00:00
Jamie McCrae
21ddc5e6a6 boards: arm: npcx4m8f_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:24 +00:00
Jamie McCrae
5500f3ef21 soc: npcx*: Port to HWMv2
Ports the npcx* SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:24 +00:00
Jamie McCrae
e7baf09ede soc: m48x: Port to HWMv2
Ports the m48x SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:24 +00:00
Jamie McCrae
5bae4a6480 boards: arm: numaker_pfm_m467: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:24 +00:00
Jamie McCrae
3b0bd70c8c soc: m46x: Port to HWMv2
Ports the m46x SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:23 +00:00
Guillaume Gautier
d52eab9e83 boards: Convert stm32g081b_eval to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:23 +00:00
Guillaume Gautier
6f2835cb11 boards: Convert stm32g071b_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:23 +00:00
Guillaume Gautier
ca36d331d2 boards: Convert stm32g0316_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:23 +00:00
Guillaume Gautier
662cc4e09b boards: Convert nucleo_g0b1re to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:23 +00:00
Guillaume Gautier
dd9bc29769 boards: Convert nucleo_g071rb to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:23 +00:00
Guillaume Gautier
353da23ffb boards: Convert nucleo_g070rb to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:23 +00:00
Guillaume Gautier
acc932b424 boards: Convert nucleo_g031k8 to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:23 +00:00
Guillaume Gautier
cea9b140fd boards: Convert google_twinkie_v2 to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:23 +00:00
Guillaume Gautier
52e025943a soc: st: stm32: Migrate STM32G0 series
Port STM32G0 series to HW model v2

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:23 +00:00
Torsten Rasmussen
1c7347686a ci: update check_compliance to not create duplicate lines in Kconfig
check_compliance generates Kconfig files for sourcing board and soc
Kconfig tree in order to run compliance.

Each board and soc generated a source entry, however several socs are
using same soc dir and thus multiple identical source lines where
created.

Use a set() to ensure unique folders before generating Kconfig files.
This ensures that each Kconfig file is only sourced once.
This improves both compliance as fewer lines needs to be written, as
well as improves Kconfiglib as fewer Kconfig files must be sourced, as
redundant sourcing is not avoided.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:23 +00:00
Dmitrii Golovanov
9debd98799 hwmv2: boards: up_squared_pro_700: Add missed intel_adl changes
Align with changes at `boards/x86/intel_adl` done by #62694
and #67452 while the `up_squared_pro_700` board was in migration
to HWMv2 at `collab-hwm' branch.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:23 +00:00
Jamie McCrae
adab07c42f boards: Convert msp_exp432p401r_launchxl to HWM v2
Port the board to HWMv2.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:23 +00:00
Jamie McCrae
642aacdcdf soc: ti_simplelink: Add missing SoC
Adds a missing SoC that was previously converted

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:23 +00:00
Jamie McCrae
48637066d3 boards: Fix file paths in documentation
Fixes file paths which have not been updated since converting
boards to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:23 +00:00
Jamie McCrae
e983bc2a23 samples/tests: Fix mps3 board name
Fixes an issue with missed board name updates

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:22 +00:00
Abderrahmane Jarmouni
61e0f32716 boards: Convert stm32f3_seco_d23 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:22 +00:00
Abderrahmane Jarmouni
a1688ff641 boards: Convert stm32f3_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:22 +00:00
Abderrahmane Jarmouni
35fb228599 boards: Convert stm32373c_eval to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:22 +00:00
Abderrahmane Jarmouni
10e5d1122b boards: Convert nucleo_f334r8 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:22 +00:00
Abderrahmane Jarmouni
c319cb19f0 boards: Convert nucleo_f303re to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:22 +00:00
Abderrahmane Jarmouni
11725ccac1 boards: Convert nucleo_f303k8 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:22 +00:00
Abderrahmane Jarmouni
400f7f6a4f boards: Convert nucleo_f302r8 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:22 +00:00
Abderrahmane Jarmouni
8d84861390 soc: v2: stm32: Migrate STM32F3 series
Port STM32F3 series to HW model V2

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:22 +00:00
Jamie McCrae
85b9eee7e8 boards: arm: kv260_r5: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:22 +00:00
Jamie McCrae
dafbd638e4 boards: arm: mercury_xu: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:22 +00:00
Jamie McCrae
3ecd12f415 boards: arm: qemu_cortex_r5: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:22 +00:00
Jamie McCrae
5db2390e9d soc: xilinx_zyncmp: Port to HWMv2
Ports the xilinx_zynqmp SoC configuration to hardware model
version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:22 +00:00
Jamie McCrae
9ba8195cdc boards: arm: qemu_cortex_a9: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:22 +00:00
Jamie McCrae
8e94b85361 boards: arm: zybo: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
c970127fc2 soc: xilinx_zynq7000: Port to HWMv2
Ports the xilinx_zynq7000 SoC configuration to hardware model
version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
394c75373c boards: arm: ast1030_evb: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
f2a1cc8714 soc: ast10x0: Port to HWMv2
Ports the ast10x0 SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
28f3f25945 boards: arm: cc3235sf_launchxl: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
c3e480f740 boards: arm: cc3220sf_launchxl: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
fd5847123f boards: arm: beagleconnect_freedom: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
76ba9a0587 boards: arm: cc1352p1_launchxl: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
719baa8850 boards: arm: cc1352r1_launchxl: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
5060a61ae1 boards: arm: cc1352r_sensortag: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
99584be1c5 boards: arm: cc26x2r1_launchxl: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Jamie McCrae
2dc8933942 soc: ti_simplelink: Port to HWMv2
Ports the ti_simplelink SoC configurations to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:21 +00:00
Yves Vandervennet
a5b004663b scripts/utils/board_v1_to_v2.py: couple of fixes
- the variable 'copyright' can be accessed without
   being initialized
 - the yaml package (ruamel) has been changed, the API
   yaml.safe_load() is deprecated. See error message
   with the original code below.

$ python3 ./scripts/utils/board_v1_to_v2.py -b frdm_k64f -g blob -v blob -s k6x

New board already exists, updating board with additional SoC
Moving files to the new board folder...
Creating or updating board.yaml...
Traceback (most recent call last):
File "/home/yves/sw/zephyr/zephyrproject/zephyr/./scripts/utils/board_v1_to_v2.py", line 206, in
board_v1_to_v2(
File "/home/yves/sw/zephyr/zephyrproject/zephyr/./scripts/utils/board_v1_to_v2.py", line 78, in board_v1_to_v2
board_settings = ruamel.yaml.safe_load(f) # pylint: disable=assignment-from-no-return
File "/home/yves/.local/lib/python3.10/site-packages/ruamel/yaml/main.py", line 1105, in safe_load
error_deprecation('safe_load', 'load', arg="typ='safe', pure=True")
File "/home/yves/.local/lib/python3.10/site-packages/ruamel/yaml/main.py", line 1039, in error_deprecation
raise AttributeError(s, name=None)
AttributeError:

"safe_load()" has been removed, use
yaml = YAML(typ='safe', pure=True)

yaml.load(...)

instead of file "/home/yves/sw/zephyr/zephyrproject/zephyr/./scripts/utils/board_v1_to_v2.py", line 78

Signed-off-by: yves <yves.vandervennet@nxp.com>
2024-03-01 14:17:21 +00:00
Abderrahmane Jarmouni
77c2c333e5 boards: move 96b_stm32_sensor_mez to 96boards
move 96b_stm32_sensor_mez from ST to 96boards' folder

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:21 +00:00
Abderrahmane Jarmouni
c14ff98650 boards: stm32f411e_disco: delete obsolete file
delete revision.cmake & fix default revision

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:21 +00:00
Abderrahmane Jarmouni
bcdc268ccf boards: Convert stm32mp157c_dk2 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:20 +00:00
Abderrahmane Jarmouni
0c8ba92e1f boards: Convert 96b_avenger96 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:20 +00:00
Abderrahmane Jarmouni
b54fe33077 soc: v2: stm32: Migrate STM32MP1 series
Port STM32MP1 series to HW model V2

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:20 +00:00
Guillaume Gautier
2ba3639b2a boards: Convert nucleo_c031c6 to HWM v2
Port the board to HWMv2.

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:20 +00:00
Guillaume Gautier
dbc5ed79f5 soc: st: stm32: Migrate STM32C0 series
Port STM32C0 series to HW model v2

Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
2024-03-01 14:17:20 +00:00
Abderrahmane Jarmouni
ce6d493aa3 boards: Convert stm32l1_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:20 +00:00
Abderrahmane Jarmouni
a28086a9ca boards: Convert nucleo_l152re to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:20 +00:00
Abderrahmane Jarmouni
1b2a511d06 boards: Convert 96b_wistrio to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:20 +00:00
Abderrahmane Jarmouni
ce281f09ab soc: v2: stm32: Migrate STM32L1 series
Port STM32L1 series to HW model V2

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:20 +00:00
Erwan Gouriou
cdb5364fd7 boards: Convert stm32f769i_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:20 +00:00
Erwan Gouriou
768f173dcb boards: Convert stm32f7508_dk to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:20 +00:00
Erwan Gouriou
21bbbbd9cb boards: Convert stm32f746g_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:20 +00:00
Erwan Gouriou
bab4265693 boards: Convert stm32f723e_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:20 +00:00
Erwan Gouriou
58f8fe82ba boards: Convert nucleo_f767zi to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:20 +00:00
Erwan Gouriou
37e9084070 boards: Convert nucleo_f756zg to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:20 +00:00
Erwan Gouriou
d467e7053a boards: Convert nucleo_f746zg to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:19 +00:00
Erwan Gouriou
5f2808d7cc boards: Convert nucleo_f722ze to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:19 +00:00
Erwan Gouriou
bbb73e7550 soc: st: Migrate stm32f7 series to new hw model
Migrate STM2F7 series to new HW model.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
e9094afc4d soc: st: stm32: stm32f4: change SOC_STM32F405XG to SOC_STM32F405XX
Change SOC_STM32F405XG flag to SOC_STM32F405XX since it refers to SoC
stm32f405xx in kconfig.soc

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
a1712cdd53 boards: Convert stm32f4_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
5be404b365 boards: Convert stm32f469i_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
baaa697ab2 boards: Convert stm32f429i_disc1 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
69ecab3c90 boards: Convert stm32f412g_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
2a572e3fb0 boards: Convert stm32f411e_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
ecfbf42757 boards: Convert stm32f401_mini to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
e0191d03bb boards: Convert steval_fcu001v1 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
4454648976 boards: Convert segger_trb_stm32f407 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
f0ad6ee6b8 boards: Convert olimex_stm32_p405 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
1f5e228ec8 boards: Convert olimex_stm32_h407 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:19 +00:00
Abderrahmane Jarmouni
834bdb615e boards: Convert olimex_stm32_h405 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
8f27fa8de2 boards: Convert olimex_stm32_e407 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
f8633a9038 boards: Convert nucleo_f446ze to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
07e0bd2c07 boards: Convert nucleo_f446re to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
24d7f625dc boards: Convert nucleo_f429zi to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
157a8cde53 boards: Convert nucleo_f413zh to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
4ec99c31b0 boards: Convert nucleo_f412zg to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
a21546140a boards: Convert nucleo_f411re to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
43f01ab6de boards: Convert nucleo_f410rb to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
60c16bcb8b boards: Convert nucleo_f401re to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
2db228d730 boards: Convert mikroe_mini_m4_for_stm32 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
73fc26225c boards: Convert mikroe_clicker_2 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
6b62d90114 boards: Convert google_dragonclaw to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:18 +00:00
Abderrahmane Jarmouni
fa845af309 boards: Convert blackpill_f411ce to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
5c8c3c3be0 boards: Convert blackpill_f401ce to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
3c02db1290 boards: Convert blackpill_f401cc to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
7eeb723cb7 boards: Convert black_f407zg_pro to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
4f9461d068 boards: Convert black_f407ve to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
a821de8532 boards: Convert az3166_iotdevkit to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
ba580c7236 boards: Convert adi_sdp_k1 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
eb272ddf19 boards: Convert adafruit_feather_stm32f405 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
58ed121c3a boards: Convert 96b_stm32_sensor_mez to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
b0d70959d3 boards: Convert 96b_neonkey to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
b1088baadc boards: Convert 96b_carbon to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
18d867b0a9 boards: Convert 96b_argonkey to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
ee6ede7119 boards: Convert 96b_aerocore2 to HWM v2
Port the board to HWMv2.

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Abderrahmane Jarmouni
b48e70ead9 soc: v2: stm32: Migrate STM32F4 series
Port STM32F4 series to HW model V2

Signed-off-by: Abderrahmane Jarmouni <abderrahmane.jarmouni-ext@st.com>
2024-03-01 14:17:17 +00:00
Torsten Rasmussen
14d2b955da cmake: convert path to CMake style before writing Kconfig files
Fixes: #68667

Kconfig is not fond of mixed path separators, therefore ensure CMake
style path is used in generated Kconfig files. CMake path style uses
`/`, and thus ensures correct behavior in Kconfig.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:17 +00:00
Jamie McCrae
9c4ac6a202 boards: posix: bsim: Update paths
Updates paths to account for legacy in them to prevent build
failures

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:16 +00:00
Jamie McCrae
14b57f56d7 tests: drivers: gpio: gpio_ite_it8xxx2_v2: Temp fix
Resolves a test failure by changing the paths as riscv boards
cannot currently be ported

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:16 +00:00
Erwan Gouriou
f3b173be18 scripts: board_v1_to_v2: Update following move to boards_legacy
Migration script requires update now that boards to be migrated
seat under boards_legacy and move directly under boards/

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:16 +00:00
Torsten Rasmussen
05b50f6691 cmake: CMake soc dir variable improvements for HWMv2
Create SOC_<soc>_DIR in addition to SOC_<SOC>_DIR variable.
Clear intermediate variables constructed by cmake_parse_arguments.

Set SOC_V2_DIR to point to the SoC dir of the actual SoC in use.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:16 +00:00
Torsten Rasmussen
a188e01a12 hwmv2: move all ported boards and socs to their final location
To un-block continuing of soc and board porting then move all socs and
boards and support building of updated docs then move all ported socs
and boards to their final location.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:16 +00:00
Jamie McCrae
22c53e97b5 hwmv2: move all non-ported legacy boards and socs to legacy folders
To un-block continuing of soc and board porting then move all socs and
boards which have not yet been ported to boards_legacy / soc_legacy
folders.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:16 +00:00
Torsten Rasmussen
53f3b181b0 soc: ti_k3: Port to HWMv2
Ports the ti_k3 SoC configuration to hardware model version 2

This commit is a followup to commit
5207600e16

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:15 +00:00
Torsten Rasmussen
9f19a2075a soc: rk3568: Port to HWMv2
Ports the rk3568 SoC configuration to hardware model version 2

This commit is a followup to commit
e5be4e435c

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:15 +00:00
Torsten Rasmussen
b8928b1628 soc: rk3399: Port to HWMv2
Ports the rk3399 SoC configuration to hardware model version 2

This commit is a followup to commit
cc51974523

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:15 +00:00
Torsten Rasmussen
cda3a74868 boards: arm64: qemu_kvm_arm64: Convert to v2
Converts the board to hwmv2

This commit is a followup to commit
1a59434162

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:15 +00:00
Dmitrii Golovanov
70d704bd20 soc: x86: atom: move and convert to HWMv2
Move and convert soc/x86/atom to HWMv2

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:15 +00:00
Dmitrii Golovanov
4789e1068e boards: x86: intel_rpl: move and convert raptor_lake boards to HWMv2
Move and convert intel_rpl_p_crb and intel_rpl_s_crb boards to HWMv2.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:15 +00:00
Dmitrii Golovanov
384307e3dc soc: x86: raptor_lake: move and convert to HWMv2
Move and convert soc/x86/raptor_lake to HWMv2

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:15 +00:00
Dmitrii Golovanov
ed025df674 boards: x86: intel_ehl: move and convert elkhart_lake boards to HWMv2
Move and convert `intel_ehl_crb` and `intel_ehl_crb_sbl` board
configurations to HWMv2.

`intel_ehl_crb_sbl` is changed to a variant `intel_ehl_crb/elkhart_lake/sbl`

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:15 +00:00
Dmitrii Golovanov
994b6e1731 soc: x86: elkhart_lake: move and convert to HWMv2
Move and convert soc/x86/elkhart_lake ot HWMv2

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:15 +00:00
Dmitrii Golovanov
73b30a04cf boards: x86: up_squared_pro_7000: move and convert to HWMv2
Move and convert boards/x86/up_squared_pro_7000 to HWMv2

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:14 +00:00
Dmitrii Golovanov
83b133c207 boards: x86: intel_adl: move and convert alder_lake boards to HWMv2
Move and convert intel_adl_crb and intel_adl_rvp boards to HWMv2.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:14 +00:00
Dmitrii Golovanov
847a12f1e4 soc: alder_lake: move and convert to HWMv2
Move and convert soc/x86/alder_lake to HWMv2

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:14 +00:00
Dmitrii Golovanov
67f4c8d2a1 samples: up_squared: adjust gpio_counter to HWMv2
Adjust samples/boards/up_squared/gpio_counter to HWMv2 changes
of the up_squared board.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:14 +00:00
Dmitrii Golovanov
5326b5bfc0 boards: x86: up_squared: move and convert to HWMv2
Move and convert boards/x86/up_squared to HWMv2

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:14 +00:00
Dmitrii Golovanov
cfd5e691b4 soc: apollo_lake: move and convert to HWMv2
Move and convert soc/x86/apollo_lake to HWMv2.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-03-01 14:17:14 +00:00
Torsten Rasmussen
ac9c235741 boards: xtensa: qemu_xtensa: Convert to v2
Converts the board to hwmv2.

This commit is a followup to commit
86d612086e

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:14 +00:00
Torsten Rasmussen
f198c3a761 ci: update to osource for soc/Kconfig.defconfig files
This commit aligns check_compliance to use osource for SoC
Kconfig.defconfig, as that is also the rule for the Kconfig tree in
Zephyr itself.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:14 +00:00
Torsten Rasmussen
e438e6cad4 ci: add SOC_SERIES_ as false positive in check_compliance.py
CONFIG_SOC_SERIES_ is as regex in scripts/utils/board_v1_to_v2.py.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:14 +00:00
Erwan Gouriou
95e34da7c1 soc: v2: Convert st_stm32 to st/stm32
Make stm32 soc path more path more consistent using an actual vendor (st)
directory.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:14 +00:00
Jamie McCrae
313717df76 soc: mps3: Fix missing family
Fixes an issue with a missing family in the mp3 soc

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:14 +00:00
Jamie McCrae
392c3969ed boards: arm: am62x_m4: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:14 +00:00
Jamie McCrae
8f245d764d tests: Update board names for hwmv2
Updates tests that use board names which have changed with
boards v2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:14 +00:00
Jamie McCrae
8f71bb7b4f boards: arm64: khadas_edgev: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:14 +00:00
Jamie McCrae
e27d23aad0 soc: rk3399: Port to HWMv2
Ports the rk3399 SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:14 +00:00
Jamie McCrae
80823b860e boards: arm64: roc_rk3568_pc: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:14 +00:00
Jamie McCrae
72e4483dec soc: rk3568: Port to HWMv2
Ports the rk3568 SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
bed94669e3 boards: arm64: phycore_am62x_a53: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
c01af5a7b8 soc: ti_k3: Port to HWMv2
Ports the ti_k3 SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
1e563b4ca3 boards: arm64: xenvm: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
76e484adae soc: xenvm: Port to HWMv2
Ports the xenvm SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
34412f7fe2 boards: arm64: rpi_4b: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
9be50e2ca9 soc: bcm2711: Port to HWMv2
Ports the bcm2711 SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
bbbed12c2f boards: arm64: qemu_kvm_arm64: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
4f5ec7ff8f soc: qemu_virt_arm64: Port to HWMv2
Ports the qemu_virt_arm64 SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
d8d1b9f200 boards: arm64: qemu_cortex_a53: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
30bd34b31e soc: qemu_cortex_a53: Port to HWMv2
Ports the qemu_cortex_a53 SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
c20d0dcbb6 boards: arm64: fvp_baser_aemv8r: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
02ed6af463 boards: arm64: fvp_base_revc_2xaemv8a: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Jamie McCrae
1b175003a4 soc: fvp_aemv8*: Port to HWMv2
Ports the fvp_aemv8* SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:13 +00:00
Erwan Gouriou
de231b911d boards: v2: Clean up obsolete comments
Following migration, some comments don't apply anymore.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:13 +00:00
Erwan Gouriou
aa9597f6d9 boards: Convert waveshare_open103z to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:12 +00:00
Erwan Gouriou
9644828c81 boards: Convert stm32vl_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:12 +00:00
Erwan Gouriou
86ab2bd430 boards: Convert stm32_min_dev to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:12 +00:00
Erwan Gouriou
d88d3ddcc4 boards: Convert stm32f103_mini to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:12 +00:00
Erwan Gouriou
0ccc0204e1 boards: Convert stm3210c_eval to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:12 +00:00
Erwan Gouriou
dd9972d782 boards: Convert olimex_stm32_h103 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:12 +00:00
Erwan Gouriou
a2c2e1406d boards: Convert olimexino_stm32 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:12 +00:00
Erwan Gouriou
2d9c62e118 boards: Convert nucleo_f103rb to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:12 +00:00
Erwan Gouriou
e8ba99dc59 soc: v2: stm32: Migrate STM32F1 series
Port STM32F1 series to HW model V2

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:12 +00:00
Jamie McCrae
9a93916604 tests: Update board names for hwmv2
Updates tests that use board names which have changed with
boards v2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:12 +00:00
Jamie McCrae
9c4d94844d boards: arm: bcm958401m2: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:12 +00:00
Jamie McCrae
feaf4ffba1 boards: arm: bcm958402m2: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:12 +00:00
Jamie McCrae
87f0827121 soc: bcm_vk: Port to HWMv2
Ports the bcm_vk SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:12 +00:00
Jamie McCrae
4526be24a5 boards: arm: quick_feather: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:12 +00:00
Jamie McCrae
cd921d2b97 boards: arm: qomu: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:11 +00:00
Jamie McCrae
b3c04051fc soc: quicklogic_eos_s3: Port to HWMv2
Ports the quicklogic_eos_s3 SoC configuration to hardware model
version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
a73a9e7533 boards: v2: Clean up obsolete comments
Following migration, some comments don't apply anymore.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
8d87bcc167 boards: Convert stm32f0_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
1933585785 boards: Convert stm32f072_eval to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
6f9fe5429d boards: Convert stm32f072b_disco to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
9dc78e4025 boards: Convert stm32f030_demo to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
35113e8923 boards: Convert nucleo_f091rc to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
b276aee9a4 boards: Convert nucleo_f070rb to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
795f8d611b boards: Convert nucleo_f042k6 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
2d82646443 boards: Convert nucleo_f031k6 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
959786f12d boards: Convert nucleo_f030r8 to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
81670db2e9 boards: Convert legend to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
8980430aad boards: Convert google_kukui to HWM v2
Port the board to HWMv2.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
ac020f66e0 dts: stm32f0: fix few warnings
Fixes following warnings:
- zephyr.dts:419.10-426.5: Warning (simple_bus_reg): /soc/clocks:
missing or empty reg/ranges property
- zephyr.dts:477.27-484.5: Warning (simple_bus_reg): /soc/serial@40011C00:
simple-bus unit address format error, expected "40011c00"

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:11 +00:00
Erwan Gouriou
5140e4551a boards: v2: doc: Add vendors
Minimum modification to make boards doc visible in v2 model.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:10 +00:00
Erwan Gouriou
77d640e0c9 soc: v2: stm32: Migrate STM32F0 series
Port STM32F0 series to HW model V2

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:10 +00:00
Erwan Gouriou
0131e1c159 soc: v2: Add st_stm32 structure and common folder
Add minimum and common structure to start using STM32 on HW model V2.
Duplicated from soc/arm/st_stm32/common with minor modifications:
- common/Kconfig.soc moved to Kconfig as Kconfig.soc should now
be restricted to _SOC_FOO) related symbols
- "depends on LOG_BACKEND_SWO" LOG_BACKEND_SWO_REF_FREQ_HZ instead of if ..
- Symbols depending on series are not present, they'll have to be
introduced when converting respective series.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:10 +00:00
Jamie McCrae
36b63787a7 boards: v2: Add documentation index for converted boards
Adds documentation pages for rp2040-converted boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
ae02fc5047 boards: sparc: qemu_leon3: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
f38f7bb223 boards: sparc: gr716a: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
d3cca3580e soc: gr716a: Port to HWMv2
Ports the gr716a SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
6a8a0c1647 boards: sparc: generic_leon3: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
faf22185ce soc: leon3: Port to HWMv2
Ports the leon3 SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
e94762ecdc tests: Update board names for hwmv2
Updates tests that use board names which have changed with boards v2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
9afcc27e05 boards: xtensa: qemu_xtensa: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
3e4a17018f soc: dc233c: Port to HWMv2
Ports the dc233c SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
9188fdcd78 boards: xtensa: xt-sim: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
fcaa41cb5d soc: xtensa_sample_controller: Port to HWMv2
Ports the xtensa_sample_controller SoC configuration to hardware
model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Erwan Gouriou
dbc413f7f7 scripts: board_v1_to_v2: Fix CONFIG_SOC_SERIES_ exclusion
Testing r"(?!SERIES_).*$" was not correct as we need to consider
lines not starting by SERIES.
Fix this and make the condition globally more simple.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:10 +00:00
Torsten Rasmussen
6be3d4bc80 kconfig: remove Kconfig BOARD_RPI_PICO_W safe guard.
Boards are defining two Kconfigs, `BOARD_<board_name>` and
`BOARD_<board_name>_<identifier>`.

For the raspberry pi pico, this is then BOARD_RPI_PICO and
BOARD_RPI_PICO_RP2040 / BOARD_RPI_PICO_RP2040_W.

Thus there is no BOARD_RPI_PICO_W.
As all occurences with BOARD_RPI_PICO_W, is done as:
BOARD_RPI_PICO || BOARD_RPI_PICO_W, then simply remove BOARD_RPI_PICO_W.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:10 +00:00
Jamie McCrae
f4442fa698 boards: v2: Add documentation index for converted boards
Adds documentation pages for nios2-converted boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
ec5fbd67f7 boards: nios2: qemu_nios2: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
d3ef220460 soc: nios2-qemu: Port to HWMv2
Ports the nios2-qemu SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
a223f284b5 boards: nios2: altera_max10: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
c381edcb73 soc: nios2f-zephyr: Port to HWMv2
Ports the nios2f-zephyr SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
97401c7d2a boards: mips: qemu_malta: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
e7a3243a24 soc: qemu_malta: Port to HWMv2
Ports the qemu-malta SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
bec82c690d boards: v2: Add documentation index for converted boards
Adds documentation pages for rp2040-converted boards

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
94f6f9b636 boards: arm: w5500_evb_pico: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
209235ab6e boards: arm: sparkfun_pro_micro_rp2040: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
e5b1885907 boards: arm: adafruit_qt_py_rp2040: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
4c750818f9 boards: arm: adafruit_kb2040: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
8d3896caa4 boards: arm: rpi_pico: Convert to v2
Converts the board to hwmv2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:09 +00:00
Jamie McCrae
42cff42c42 soc: rpi_pico: Port to HWMv2
Ports the rpi_pico SoC configuration to hardware model version 2

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-03-01 14:17:08 +00:00
Torsten Rasmussen
c2df4ca9cb scripts: improve yaml schema and board.yml validation for revisions
Make 'default' and 'revisions' fields optional for custom revisions.
When using custom revision format, then board author must create a
revision.cmake file for revision handling, in which case revisions
don't need to be specified in the board.yml file.

Therefore make 'default' and 'revisions' fields optional in the schema
and implement custom yaml validation which can validate that 'default'
and 'revisions' are specified for all other revision formats.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:08 +00:00
Torsten Rasmussen
3970f90f71 cmake: clear BOARD_CACHE when invalid board identifier is given
Clear BOARD_CACHE when no or an invalid board identifier is provided
on first CMake invocation.

This allows users to re-run CMake and provide a valid board identifier
as well as avoiding `BOARD` to be replaced with an invalid BOARD_CACHED
value.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:08 +00:00
Torsten Rasmussen
3a70ee9ccd cmake: improve board revision handling
In old hw model, board revisions was handled by creation of a
revisions.cmake file. In the new hw model, board revisions are defined
as integral part of board.yml, and revision.cmake is only needed and
used for custom revision format.

Users familiar with revision.cmake in old hw model may not be aware of
this difference, therefore provide warnings if developers create a
revision.cmake that is ignored by the build system.

Also fail a build if users specify a board revision for a board which
doesn't support revision. Such scenario can easily occur in the case
where a board developer may be creating a revisions.cmake file and
then try to build for a revision specified in that file.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:08 +00:00
Erwan Gouriou
3cda715fae scripts: board_v1_to_v2: Don't add select CONFIG_SOC_SERIES_FOO
SOC_SERIES_FOO selection is done at soc/ level it should
not be added as part of board description

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:08 +00:00
Erwan Gouriou
dc56a543f3 scripts: board_v1_to_v2: Add License + copyright
When creating file Kconfig.<board>, get the copyright from
old Kconfig.board file and use it in the new file.
Add the License as well.

Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com>
2024-03-01 14:17:08 +00:00
Torsten Rasmussen
87147f88c4 cmake: prefer cache BOARD_IDENTIFIER over extracting from BOARD
The BOARD_IDENTIFIER is extracted from the BOARD argument provided by
the user.

Thereafter the BOARD_IDENTIFIER is compared to the list of valid board
identifiers returned by list_boards.py, and expanded with optional
fields as required.

Thereafter the expanded and full BOARD_IDENTIFIER is place as internal
variable in the CMake cache.

This means subsequent CMake invocations should use the expanded
BOARD_IDENTIFIER from the CMake cache instead of extracting it from the
BOARD variable.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:08 +00:00
Torsten Rasmussen
65f5dc5b8c cmake: fail when board identifier is applied in legacy hw model
Board is looked up without identifier string, which means a legacy
board may actually be found but later fails when board identifier is
included.

Thus test for HWMv1 and fail CMake is board identifier is provided for
board using HWMv1.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:08 +00:00
Torsten Rasmussen
7db2b6efd8 cmake: cache BOARD_IDENTIFIER to preserve it between CMake invocations
A CMake rerun would not extract or determine the BOARD_IDENTIFIER
correctly because `list_boards.py` is only invoked for first CMake
invocation.

Therefore cache the BOARD_IDENTIFIER so that it's preserved between
CMake re-runs.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:08 +00:00
Torsten Rasmussen
85dddac5a2 scripts: using extend in list_boards for variant list
Using extend instead of append to correctly extend the list of valid
board identifiers.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:08 +00:00
Gerard Marull-Paretas
6ae5c4e7fd scripts: utils: add board v1->v2 conversion utility
Assists on converting boards from hwmv1 to hwmv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:08 +00:00
Gerard Marull-Paretas
ef834a12d0 maintainers: update Renesas RZT2M path
SoC has been converted to v2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:08 +00:00
Gerard Marull-Paretas
3ab7830625 boards: renesas: add documentation entry
Add a new entry for Renesas boards.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:08 +00:00
Gerard Marull-Paretas
a0c2ca0491 boards: arm: add documentation entry
Add a new entry for ARM Holdings plc boards.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:08 +00:00
Gerard Marull-Paretas
27ff3654b7 boards: gigadevice: add documentation entry
Add an entry for Gigadevice boards.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:08 +00:00
Gerard Marull-Paretas
6e02f43c0a maintainers: update GD32 paths
Some SoC/board files have been moved, use new paths.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:08 +00:00
Gerard Marull-Paretas
1bfcf1d974 boards: gd32l233r_eval: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:08 +00:00
Gerard Marull-Paretas
6e621ee43f boards: gd32f470i_eval: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
219b149768 boards: gd32f450z_eval: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
91c52b0d39 boards: gd32f450v_start: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
f0e0a973f6 boards: gd32f407v_start: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
6f592b64c9 boards: gd32f403z_eval: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
4bcb4b2ac8 boards: gd32f350r_eval: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
fdc7ed6eb0 boards: gd32e507z_eval: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
770376250d boards: gd32e507v_start: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
a6d8b92e86 boards: gd32e103v_eval: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
a5f8e5daa1 boards: gd32a503v_eval: convert to HWMv2
Convert the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
5ee799cc5f boards: gd32f450i_eval: convert to HWMv2
Port the board to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Gerard Marull-Paretas
8aa8ce4ac8 soc: gigadevice: port to HWMv2
Port all the Gigadevice SoCs to HWMv2.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
2024-03-01 14:17:07 +00:00
Torsten Rasmussen
4e203c14c7 cmake: enhanced board entry file handling
With a single board now covering what used to be several boards, and
with the ability to omit SoC when building for a single SoC board, then
<board>_defconfig and <board>.dts lookup is improved.

A single SoC board may prefer to keep its defconfig entry point as
<board>_defconfig instead of <board>_<soc>_defconfig.

Also, a multi-SoC board / multi-core SoC board, which used to be
implemented as n-boards may wish to have common _defconfig settings in
a common <board>_defconfig file, and the SoC / cpuset specifics in
<board>_<soc>_defconfig / <board>_<soc>_<core>_defconfig.

Such defconfig support allows also to place build variant specifics in
its own <board>_<soc>_<variant>_defconfig file.

This commit allows multiple _defconfigs for a board and its identifiers.

Similar is implemented for a board's dts file.
If a <board>_<soc>_<core>.dts file is not found, the build system will
instead use <board>_<soc>.dts, and finally fallback to <board>.dts.

This allows a board to have a shared dts file for all board identifiers
which are identical while still support specific dts where required.

A dts file is a devicetree starting point and thus two dts files cannot
be used in together. For such cases, an ordinary board overlay file must
be used.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:07 +00:00
Torsten Rasmussen
312265ee04 scripts: make SoC field mandatory in board.yml
With the support of omitting SoC field for single SoC boards then there
is no reason to have this field optional.

Users are still able to use a short board name when building.

But always requiring SoC field in the board.yml paves the way for future
enhancements to the new hw model without having to do a second update
to a lot of board.yml files.

Such enhancement can be:
- Create Kconfig SoC selection and thereby remove need for Kconfig
  boilerplate code, and also thereby remove risk of naming
  inconsistencies.
- Extend board documentation, so that web doc provides option to filter
  all boards with a given SoC.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:07 +00:00
Torsten Rasmussen
c12ae3bcbc boards: update Renesas rzt2m board.yml to contain SoC information
Add Renesas_rzt2m SoC information to the board.yml for the Renesas rzt2m
starter kit.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:07 +00:00
Torsten Rasmussen
c5321c1dbe cmake: make SoC optional for boards containing a single SoC
Allowing users to omit the SoC when building for a board containing a
single SoC make less typing required when building.

Full identifier is still supported.
This means that if board 'plank' contains a single SoC 'foo', then the
following input are equivalent:
-DBOARD=plank
-DBOARD=plank/foo

When building for variants on single SoC boards, a `//` can be used to
indicate SoC field and build system will insert the SoC if the board
has just a single SoC, as example build the 'bar' variant for 'plank'
board can be specified as:
-DBOARD=plank//bar
-DBOARD=plank/foo/bar

The enhancement allows all boards to specify the SoC on the board
without forcing users to type the SoC as part of BOARD input.
As example, -DBOARD=bbc_microbit, is allowed in addition to
-DBOARD=bbc_microbit/nrf52822.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
bcc06c60ae scripts: support SoC list output for boards
Extending board output with SoC information.
This provides the possibility to print all SoCs present for boards in
new hw model.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
db9e46010c twister: update testcase.yaml and sample.yaml to mps3/an547 identifier
This commit updates testcase.yaml and sample.yaml to use mps3/an547
identifier which replaces former mps3_an547 board name.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
a988adee7d boards: update arm mps3 an547 board to HWMv2 scheme
This commit updates arm mps3 an547 board to use HWMv2.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
7dc2c9db0c soc: use HWMv2 for arm mps3 SoC
This commit move the arm mps3 SoC to soc/v2 and adopt HWMv2.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
c506675b7c boards: update Renesas Starter Kit+ for RZ/T2M board to HWMv2 scheme
This commit updates Renesas Starter Kit+ for RZ/T2M board to use HWMv2.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
3abb792073 soc: use HWMv2 for renesas_rzt2m SoC
This commit move the renesas_rzt2m SoC to soc/v2 and adopt HWMv2.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
4f52bc646e cmake: support hw model v2 in arch/Kconfig tree
This commit introduces support for Zephyr hw model v2 in the arch
Kconfig tree.

The hw model v2 requires Kconfig trees to be self-contained, meaning
that the have no Kconfig references outside the tree itself.

For hw model v2, the architecture of a board / SoC is not known until
the Kconfig tree and config file has been parsed.
There provide a new arch/Kconfig.v2 file to support loading of all arch
Kconfigs. Hw model v1 is now placed in arch/Kconfig.v1 and includes
only the arch Kconfig files determined by the arch of the board.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
a712b5005b scripts: extend kconfig compliance to verify board / SoC scheme v2
This commit extends compliance check to include a KconfigBoardV2 check.

This check verifies that a v2 scheme board / SoC does not contain
references outside the Kconfig trees.

The check is invoked as: `check_compliance.py -m KconfigBoardV2`

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
baa55141a1 twister: update twister testplan.py to handle HWMv2 boards
This commit updates twister testplan.py to handle HWMv2 boards.

It does so by switching to use list_boards.py to obtain a list of
folders containing <board>.yaml files for processing instead of a
global globbing of sub-folders under boards.

With HWMv2, boards can be organized more freely, meaning that a fixed
glob hierarchy is no longer safe.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
1f026f70eb boards: extend list_boards.py and update boards CMake module
Extend list_boards.py and update boards CMake module to handle HWMv2.

list_boards.py is extended to support board.yml file in each board
folder with various information related to the board, such as vendor,
soc, cpucluster, variants, revisions.

The HWMv2 removes the requirement for a _defconfig file.
It also unifies how board revisions, cpusets, etc is defined which again
provides an option for cleaner build system implementation for handling
of boards and their integration to the build system.

The CMake boards.cmake module is updated to take advantage of the
improved design.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
bd854a3af8 cmake: introduce arch and soc cmake modules for hw model v2
Introduce dedicated arch and soc hw model v2 CMake module files.

Rename existing arch and soc cmake file to have a `_v1` post fix.
This help to identify the purpose of each of those files and thus a
cleaner implementation.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
c9edefa8fd arch: add existing archs to archs.yml for HWMv2 support
Existing Zephyr architectures are already self-contained and thereby
HWMv2 compliant.

Add all existing architectures to archs.yml.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
61bbfb5ba2 scripts: introduce list_hardware.py for listing of architectures and SoCs
The list_hardware.py script parses archs.yml in all <arch-root>/arch
folders and soc.yml in all <soc-root>/soc sub-folders.

The archs.yml and soc.yml are introduced with hw model v2.

Hw model v2 removes the need for architecture knowledge of the SoCs,
and as part of this makes multi-arch and multi-core SoCs possible.

Hw model v2 also allows for greater flexibility in arch and SoC
organization as they can be organized freely.

As example SoCs can be organized by vendors, architecture, or any other
way as the socs.yml contains the path to the location of the SoC,
instead of relying on a specific arch.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
Torsten Rasmussen
a4d1980c35 build: board/ soc: introduce hw model v2 scheme
Hw model v2 scheme offers SoC and  maintainers the possibility to define
promptless SoCs settings which must be selected by the board Kconfig.

Having a board doing `select SOC_<name>` is a much cleaner approach then
selecting the SoC in a configuration file.

It furthermore removes the need to present all SoCs in choice groups, as
the SoC is now an internal setting to Kconfig.

This further has the benefit of not presenting users, especially
new-comers to Zephyr, with SoC selection options in menuconfig which
has potential to cause confusion.

It moves the SOC, SOC_SERIES, and SOC_FAMILY from arch/Kconfig into the
soc Kconfig tree, where they rightfully belongs.

With hw model v2, BOARD name is now passed from the build system to
Kconfig which ensures that the board name used in CMake is always in
sync with the board name used in Kconfig for hw model v2.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2024-03-01 14:17:06 +00:00
47591 changed files with 664904 additions and 2716063 deletions

View File

@@ -5,6 +5,7 @@
--min-conf-desc-length=1
--typedefsfile=scripts/checkpatch/typedefsfile
--ignore BRACES
--ignore PRINTK_WITHOUT_KERN_LEVEL
--ignore SPLIT_STRING
--ignore VOLATILE
@@ -28,5 +29,3 @@
--ignore MULTISTATEMENT_MACRO_USE_DO_WHILE
--ignore ENOSYS
--ignore IS_ENABLED_CONFIG
--ignore EXPORT_SYMBOL
--ignore COMPARISON_TO_NULL

View File

@@ -32,21 +32,17 @@ ColumnLimit: 100
ConstructorInitializerIndentWidth: 8
ContinuationIndentWidth: 8
ForEachMacros:
- 'ARRAY_FOR_EACH'
- 'ARRAY_FOR_EACH_PTR'
- 'FOR_EACH'
- 'FOR_EACH_FIXED_ARG'
- 'FOR_EACH_IDX'
- 'FOR_EACH_IDX_FIXED_ARG'
- 'FOR_EACH_NONEMPTY_TERM'
- 'FOR_EACH_FIXED_ARG_NONEMPTY_TERM'
- 'RB_FOR_EACH'
- 'RB_FOR_EACH_CONTAINER'
- 'SYS_DLIST_FOR_EACH_CONTAINER'
- 'SYS_DLIST_FOR_EACH_CONTAINER_SAFE'
- 'SYS_DLIST_FOR_EACH_NODE'
- 'SYS_DLIST_FOR_EACH_NODE_SAFE'
- 'SYS_SEM_LOCK'
- 'SYS_SFLIST_FOR_EACH_CONTAINER'
- 'SYS_SFLIST_FOR_EACH_CONTAINER_SAFE'
- 'SYS_SFLIST_FOR_EACH_NODE'
@@ -70,19 +66,8 @@ ForEachMacros:
- 'Z_GENLIST_FOR_EACH_NODE'
- 'Z_GENLIST_FOR_EACH_NODE_SAFE'
- 'STRUCT_SECTION_FOREACH'
- 'STRUCT_SECTION_FOREACH_ALTERNATE'
- 'TYPE_SECTION_FOREACH'
- 'K_SPINLOCK'
- 'COAP_RESOURCE_FOREACH'
- 'COAP_SERVICE_FOREACH'
- 'COAP_SERVICE_FOREACH_RESOURCE'
- 'HTTP_RESOURCE_FOREACH'
- 'HTTP_SERVER_CONTENT_TYPE_FOREACH'
- 'HTTP_SERVICE_FOREACH'
- 'HTTP_SERVICE_FOREACH_RESOURCE'
- 'I3C_BUS_FOR_EACH_I3CDEV'
- 'I3C_BUS_FOR_EACH_I2CDEV'
- 'MIN_HEAP_FOREACH'
IfMacros:
- 'CHECKIF'
# Disabled for now, see bug https://github.com/zephyrproject-rtos/zephyr/issues/48520
@@ -97,20 +82,11 @@ IncludeCategories:
- Regex: '.*'
Priority: 3
IndentCaseLabels: false
IndentGotoLabels: false
IndentWidth: 8
InsertBraces: true
InsertNewlineAtEOF: true
SpaceBeforeInheritanceColon: False
SpaceBeforeParens: ControlStatementsExceptControlMacros
SortIncludes: Never
UseTab: ForContinuationAndIndentation
WhitespaceSensitiveMacros:
- COND_CODE_0
- COND_CODE_1
- IF_DISABLED
- IF_ENABLED
- LISTIFY
- STRINGIFY
- Z_STRINGIFY
- DT_FOREACH_PROP_ELEM_SEP

View File

@@ -1,21 +0,0 @@
# SPDX-License-Identifier: Apache-2.0
#
# Copyright (c) 2024, Basalte bv
analyzer:
# Start by disabling all
- --disable-all
# Enable the sensitive profile
- --enable=sensitive
# Disable unused cases
- --disable=boost
- --disable=mpi
# Many identifiers in zephyr start with _
- --disable=clang-diagnostic-reserved-identifier
- --disable=clang-diagnostic-reserved-macro-identifier
# Cleanup
- --clean

View File

@@ -86,10 +86,6 @@ indent_size = 8
[COMMIT_EDITMSG]
max_line_length = 75
# Patches
[{*.patch,*.diff}]
trim_trailing_whitespace = false
# Kconfig
[Kconfig*]
indent_style = tab

View File

@@ -0,0 +1,57 @@
---
name: Bug report
about: Create a report to help us improve Zephyr
title: ''
labels: bug
assignees: ''
---
**Notes (delete this)**
Github Discussions (https://github.com/zephyrproject-rtos/zephyr/discussions)
are available to first verify that the issue is a genuine Zephyr bug and not a
consequence of Zephyr services misuse.
This issue list is only for bugs in the main Zephyr code base
(https://github.com/zephyrproject-rtos/zephyr/). If the bug is for a project
fork (such as NCS) specific feature, please open an issue in the fork project
instead.
**Describe the bug**
A clear and concise description of what the bug is.
Please also mention any information which could help others to understand
the problem you're facing:
- What target platform are you using?
- What have you tried to diagnose or workaround this issue?
- Is this a regression? If yes, have you been able to "git bisect" it to a
specific commit?
- ...
**To Reproduce**
Steps to reproduce the behavior:
1. mkdir build; cd build
2. cmake -DBOARD=board\_xyz
3. make
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Impact**
What impact does this issue have on your progress (e.g., annoyance, showstopper)
**Logs and console output**
If applicable, add console logs or other types of debug information
e.g Wireshark capture or Logic analyzer capture (upload in zip archive).
copy-and-paste text and put a code fence (\`\`\`) before and after, to help
explain the issue. (if unable to obtain text log, add a screenshot)
**Environment (please complete the following information):**
- OS: (e.g. Linux, MacOS, Windows)
- Toolchain (e.g Zephyr SDK, ...)
- Commit SHA or Version used
**Additional context**
Add any other context that could be relevant to your issue, such as pin setting,
target configuration, ...

View File

@@ -1,85 +0,0 @@
name: Bug Report
description: File a bug report.
labels: ["bug"]
type: "Bug"
assignees: []
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: textarea
id: what-happened
attributes:
label: Describe the bug
description: |
A clear and concise description of what the bug is.
placeholder: |
Please also mention any information which could help others to understand
the problem you're facing:
- What target platform are you using?
- What have you tried to diagnose or workaround this issue?
- Is this a regression? If yes, have you been able to "git bisect" it to a
specific commit?
validations:
required: true
- type: checkboxes
id: regression
attributes:
label: Regression
description: |
Check this box if this is a regression and provide a SHA if you were able to "git bisect" to a specific commit.
options:
- label: This is a regression.
required: false
- type: textarea
id: reproduce
attributes:
label: Steps to reproduce
description: |
Steps to reproduce the behavior.
placeholder: |
Steps to reproduce the behavior:
1. mkdir build; cd build
2. cmake -DBOARD=board\_xyz
3. make
4. See error
validations:
required: false
- type: textarea
id: logs
attributes:
label: Relevant log output
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
render: shell
- type: dropdown
attributes:
label: Impact
description: Impact of this bug
multiple: false
options:
- Showstopper Prevents release or major functionality; system unusable.
- Major Severely degrades functionality; workaround is difficult or unavailable.
- Functional Limitation Some features not working as expected, but system usable.
- Annoyance Minor irritation; no significant impact on usability or functionality.
- Intermittent Occurs occasionally; hard to reproduce.
- Not sure
default: 3
validations:
required: true
- type: textarea
id: env
attributes:
label: Environment
description: please complete the following information
placeholder: |
- OS: (e.g. Linux, MacOS, Windows)
- Toolchain (e.g Zephyr SDK, ...)
- Commit SHA or Version used
- type: textarea
id: context
attributes:
label: Additional Context
description: Provide other context that could be relevant to the bug, such as pin setting, target configuration,etc.

View File

@@ -0,0 +1,20 @@
---
name: Enhancement
about: Suggest enhancements to existing features
title: ''
labels: Enhancement
assignees: ''
---
**Is your enhancement proposal related to a problem? Please describe.**
A clear and concise description of what the problem is.
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or graphics (drag-and-drop an image) about the feature request here.

View File

@@ -1,42 +0,0 @@
name: Enhancement
description: Submit an Enhancement
labels: ["Enhancement"]
type: "Enhancement"
assignees: []
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this enhancement proposal.
- type: textarea
id: description
attributes:
label: Summary
description: |
Is your enhancement proposal related to a problem? Please describe.
placeholder: |
A clear and concise description of what the problem is.
validations:
required: true
- type: textarea
id: solution
attributes:
label: Describe the solution you'd like
description: |
Describe the solution you'd like
placeholder: |
A clear and concise description of what you want to happen.
validations:
required: true
- type: textarea
id: alternatives
attributes:
label: Alternatives
description: Describe alternatives you've considered
placeholder: |
A clear and concise description of any alternative solutions or features you've considered.
- type: textarea
id: context
attributes:
label: Additional Context
description: Add any other context or graphics (drag-and-drop an image) about the enhancement here.

View File

@@ -0,0 +1,51 @@
---
name: RFC / Proposal
about: Submit an RFC / Proposal
title: ''
labels: RFC
assignees: ''
---
## Introduction
This section targets end users, TSC members, maintainers and anyone else that might
need a quick explanation of your proposed change.
### Problem description
Why do we want this change and what problem are we trying to address?
### Proposed change
A brief summary of the proposed change - the 10,000 ft view on what it will
change once this change is implemented.
## Detailed RFC
In this section of the document the target audience is the dev team. Upon
reading this section each engineer should have a rather clear picture of what
needs to be done in order to implement the described feature.
### Proposed change (Detailed)
This section is freeform - you should describe your change in as much detail
as possible. Please also ensure to include any context or background info here.
For example, do we have existing components which can be reused or altered.
By reading this section, each team member should be able to know what exactly
you're planning to change and how.
### Dependencies
Highlight how the change may affect the rest of the project (new components,
modifications in other areas), or other teams/projects.
### Concerns and Unresolved Questions
List any concerns, unknowns, and generally unresolved questions etc.
## Alternatives
List any alternatives considered, and the reasons for choosing this option
over them.

View File

@@ -1,75 +0,0 @@
name: RFC / Proposal
description: Submit a Proposal (RFC)
labels: ["RFC"]
type: RFC
assignees: []
body:
- type: markdown
attributes:
value: |
## Introduction
This section targets end users, TSC members, maintainers and anyone else
that might need a quick explanation of your proposed change.
- type: textarea
id: problem-description
attributes:
label: Problem Description
description: Why do we want this change and what problem are we trying to address?
placeholder: Explain the problem or limitation this RFC is meant to resolve.
validations:
required: true
- type: textarea
id: proposed-change-summary
attributes:
label: Proposed Change (Summary)
description: A high-level summary of the proposed change.
placeholder: Brief summary of what will change if this RFC is implemented.
validations:
required: true
- type: markdown
attributes:
value: |
## Detailed RFC
This section targets the development team. Upon reading it, each engineer
should understand what must be done to implement the proposed feature.
- type: textarea
id: detailed-change
attributes:
label: Proposed Change (Detailed)
description: Describe the change in as much detail as possible. Include context or background info, and reuse of existing components if applicable.
placeholder: Explain exactly what youre planning to change and how.
validations:
required: true
- type: textarea
id: dependencies
attributes:
label: Dependencies
description: Highlight how this change may affect the rest of the project or other teams/components.
placeholder: List components, modules, or teams affected.
validations:
required: false
- type: textarea
id: concerns
attributes:
label: Concerns and Unresolved Questions
description: List any concerns, unknowns, or unresolved questions related to this proposal.
placeholder: Any areas of uncertainty?
validations:
required: false
- type: textarea
id: alternatives
attributes:
label: Alternatives Considered
description: What alternative solutions were considered? Why was this proposal chosen?
placeholder: List alternatives and explain the rationale behind your choice.
validations:
required: false

View File

@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: Feature Request
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is.
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or graphics (drag-and-drop an image) about the feature request here.

View File

@@ -1,29 +0,0 @@
name: Feature Request
description: Suggest a new feature or enhancement
labels: ["Feature Request"]
type: Feature
assignees: []
body:
- type: textarea
id: problem
attributes:
label: Is your feature request related to a problem? Please describe.
description: A clear and concise description of what the problem is.
placeholder: e.g., I'm frustrated when I need to do X manually because Y is missing.
validations:
required: true
- type: textarea
id: solution
attributes:
label: Describe the solution you'd like
description: A clear and concise description of what you want to happen.
placeholder: e.g., It would be great if the system could automatically handle X by doing Y.
validations:
required: true
- type: textarea
id: alternatives
attributes:
label: Describe alternatives you've considered
description: Include any alternative solutions or features

View File

@@ -0,0 +1,42 @@
---
name: Contributor Nomination
about: Nominate a GitHub user for additional rights on the Zephyr Project
title: ''
labels: Role Nomination
assignees: ''
---
# Background
The [TSC Project Roles] defines the main roles for the Zephyr Project, including
Maintainer, Collaborator, and Contributor.
By default anyone that contributes code or documentation is a Contributor, but
with the lowest [GitHub Permission Level] of Read. For example, Contributors
with Read permission do not have the permission to add reviewers to a pull
request.
Use this template to nominate a GitHub user for the Contributor role with
Triage permission level, which allows the user to add reviewers to a pull
request and be added as a reviewer by other users.
# Nomination
## GitHub User
Provide the following information about the GitHub user:
1. Full Name
1. GitHub username
1. Organization (optional)
## Supporting Documents
Add links to 3-5 GitHub pull requests, in the Zephyr project, authored or
reviewed by the GitHub user that demonstrate the user's dedication to the
Zephyr project.
[TSC Project Roles]: <https://docs.zephyrproject.org/latest/project/project_roles.html>
[GitHub Permission Level]: <https://docs.github.com/en/organizations/managing-access-to-your-organizations-repositories/repository-roles-for-an-organization>

View File

@@ -1,57 +0,0 @@
name: Contributor Nomination
description: Nominate a GitHub user for the Contributor role with triage permissions
labels: [Role Nomination]
assignees: ['nashif']
body:
- type: markdown
attributes:
value: |
## Background
The [TSC Project Roles](https://docs.zephyrproject.org/latest/project/project_roles.html) defines the main roles for the Zephyr Project, including Maintainer, Collaborator, and Contributor.
By default, anyone who contributes code or documentation is a Contributor, but with the lowest [GitHub Permission Level](https://docs.github.com/en/organizations/managing-access-to-your-organizations-repositories/repository-roles-for-an-organization) of **Read**.
Use this form to nominate a user for the **Contributor** role with **Triage** permission, which allows the user to:
- Add reviewers to pull requests
- Be added as a reviewer by others
- type: input
id: full-name
attributes:
label: Full Name
description: Full name of the nominated contributor.
placeholder: e.g., Jane Doe
validations:
required: true
- type: input
id: github-username
attributes:
label: GitHub Username
description: GitHub handle of the nominated contributor.
placeholder: e.g., @janedoe
validations:
required: true
- type: input
id: organization
attributes:
label: Organization
description: Organization the nominee is affiliated with (optional).
placeholder: e.g., Acme Corp
validations:
required: false
- type: textarea
id: supporting-documents
attributes:
label: Supporting Documents
description: Provide links to 35 pull requests authored or reviewed by the nominee that demonstrate their dedication to the Zephyr project.
placeholder: |
e.g.,
- https://github.com/zephyrproject-rtos/zephyr/pull/12345
- https://github.com/zephyrproject-rtos/zephyr/pull/23456
- https://github.com/zephyrproject-rtos/zephyr/pull/34567
validations:
required: true

View File

@@ -0,0 +1,68 @@
---
name: External Source Code
about: Submit a proposal to integrate external source code
title: ''
labels: TSC
assignees: ''
---
## Origin
Name of project hosting the original open source code
Provide a link to the source
## Purpose
Brief description of what this software does
## Mode of integration
Describe whether you'd like to integrate this external component in the main tree
or as a module, and why. If the mode of integration is a module, suggest a
repository name for the module
## Maintainership
List the person(s) that will be maintaining the integration of this external code
for the foreseeable future. Please use GitHub IDs to identify them. You can
choose to identify a single maintainer only or add collaborators as well
## Pull Request
Pull request (if any) with the actual implementation of the integration, be it
in the main tree or as a module (pointing to your own fork for now). Make sure
the PR is correctly labeled as "DNM"
## Description
Long description that will help reviewers discuss suitability of the
component to solve the problem at hand (there may be a better options
available.)
What is its primary functionality (e.g., SQLLite is a lightweight
database)?
What problem are you trying to solve? (e.g., a state store is
required to maintain ...)
Why is this the right component to solve it (e.g., SQLite is small,
easy to use, and has a very liberal license.)
## Dependencies
What other components does this package depend on?
Will the Zephyr project have a direct dependency on the component, or
will it be included via an abstraction layer with this component as a
replaceable implementation?
## Revision
Version or SHA you would like to integrate initially
## License
Please use an SPDX identifier (https://spdx.org/licenses/), such as
``BSD-3-Clause``

View File

@@ -1,106 +0,0 @@
name: External Component Integration
description: Propose integration of an external open source component
labels: ["TSC"]
assignees: []
body:
- type: textarea
id: origin
attributes:
label: Origin
description: Name of project hosting the original open source code. Provide a link to the source.
placeholder: e.g., SQLite - https://sqlite.org
validations:
required: true
- type: textarea
id: purpose
attributes:
label: Purpose
description: Brief description of what this software does.
placeholder: |
e.g., A small, fast, self-contained SQL database engine.
validations:
required: true
- type: textarea
id: integration-mode
attributes:
label: Mode of Integration
description: Should this be integrated in the main tree or as a module? Explain your choice and suggest a module repo name if applicable.
placeholder: |
e.g., As a module - proposed repo name: zephyr-sqlite
validations:
required: true
- type: textarea
id: maintainership
attributes:
label: Maintainership
description: List maintainers (GitHub IDs) for this integration. Include at least one primary maintainer.
placeholder: |
e.g., @username1 (primary), @username2 (collaborator)
validations:
required: true
- type: input
id: pull-request
attributes:
label: Pull Request
description: Link to the pull request (if any) for this integration. Must be labeled "DNM" (Do Not Merge).
placeholder: |
e.g., https://github.com/zephyrproject-rtos/zephyr/pull/12345
validations:
required: false
- type: textarea
id: description
attributes:
label: Description
description: Long-form description to justify suitability of this component.
placeholder: |
- What is its primary functionality?
- What problem does it solve?
- Why is this the right component?
validations:
required: true
- type: textarea
id: security
attributes:
label: Security
description: Security-related aspects of this component, including cryptographic functions and known vulnerabilities.
placeholder: |
- Does it use cryptography?
- How are vulnerabilities handled?
- Any known CVEs?
validations:
required: false
- type: textarea
id: dependencies
attributes:
label: Dependencies
description: What does this component depend on, and how will it be integrated (directly or via abstraction)?
placeholder: |
- Other external packages?
- Direct or abstracted use in Zephyr?
validations:
required: false
- type: input
id: revision
attributes:
label: Version or SHA
description: Which version or specific commit should be initially integrated?
placeholder: e.g., v3.45.0 or 79cc94d
validations:
required: true
- type: input
id: license
attributes:
label: License (SPDX)
description: Provide the license using a valid SPDX identifier (e.g., BSD-3-Clause).
placeholder: e.g., MIT or BSD-3-Clause
validations:
required: true

41
.github/ISSUE_TEMPLATE/008_bin-blobs.md vendored Normal file
View File

@@ -0,0 +1,41 @@
---
name: Binary blobs
about: Submit a proposal to integrate binary blob(s)
title: ''
labels: TSC
assignees: ''
---
## Origin
Describe where the binary blob(s) originate from
## Type
- [ ] Precompiled library
- [ ] Firmware image
## Module
The Zephyr module that this blob(s) will be referenced from
## Purpose
Brief description of what the blob(s) do. It is especially important to describe
the functionality that the blob(s) provide, to the largest extent possible
## Pull Request
Link to the Pull request with the actual implementation of the integration. If
you are submitting this as part of a new module you may link to the same Pull
Request that introduced the new module.
## Dependencies
What other components do the blob(s) depend on, if any?
## License
Document the license the blob(s) are distributed under

View File

@@ -1,5 +0,0 @@
blank_issues_enabled: false
contact_links:
- name: Zephyr Community Support
url: https://github.com/zephyrproject-rtos/zephyr/discussions
about: Please ask and answer questions here.

8
.github/SECURITY.md vendored
View File

@@ -8,12 +8,12 @@ updates:
- The most recent release, and the release prior to that.
- Active LTS releases.
At this time, with the latest release of v4.3, the supported
At this time, with the latest release of v3.6, the supported
versions are:
- v4.3: Current release
- v4.2: Prior release
- v3.7: Current LTS
- v2.7: Current LTS
- v3.5: Prior release
- v3.6: Current release
## Reporting process

View File

@@ -1,2 +0,0 @@
paths:
- .github

View File

@@ -1,2 +0,0 @@
paths:
- doc

View File

@@ -1,30 +0,0 @@
version: 2
enable-beta-ecosystems: true
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
cooldown:
default-days: 7
commit-message:
prefix: "ci: github: "
labels: []
groups:
actions-deps:
patterns:
- "*"
- package-ecosystem: "uv"
directory: "/doc"
schedule:
interval: "weekly"
cooldown:
default-days: 7
commit-message:
prefix: "ci: doc: "
labels: []
groups:
doc-deps:
patterns:
- "*"

View File

@@ -1,4 +1,4 @@
name: Pull Request/Issue Assigner
name: Pull Request Assigner
on:
pull_request_target:
@@ -15,74 +15,38 @@ on:
types:
- labeled
permissions:
contents: read
jobs:
assignment:
name: Pull Request/Issue Assignment
name: Pull Request Assignment
if: github.event.pull_request.draft == false
runs-on: ubuntu-24.04
permissions:
issues: write # to add assignees to issues
runs-on: ubuntu-22.04
steps:
- name: Install Python dependencies
run: |
sudo pip3 install -U setuptools wheel pip
pip3 install -U PyGithub>=1.55 west
- name: Check out source code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: zephyrproject-rtos/action-python-env@32e53bef090c33d53aa94f1d9a9d29c93cfdc5f7 # main
with:
python-version: 3.12
- name: Fetch west.yml/Maintainer.yml from pull request
if: >
github.event_name == 'pull_request_target' && github.base_ref == 'main'
run: |
git fetch origin pull/${{ github.event.pull_request.number }}/merge
git show FETCH_HEAD:west.yml > pr_west.yml
git show FETCH_HEAD:MAINTAINERS.yml > pr_MAINTAINERS.yml
- name: west setup
if: >
github.event_name == 'pull_request_target'
run: |
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
west init -l . || true
uses: actions/checkout@v4
- name: Run assignment script
env:
GITHUB_TOKEN: ${{ secrets.ZB_PR_ASSIGNER_GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.ZB_GITHUB_TOKEN }}
run: |
FLAGS="-v"
FLAGS+=" -o ${{ github.event.repository.owner.login }}"
FLAGS+=" -r ${{ github.event.repository.name }}"
FLAGS+=" -M MAINTAINERS.yml"
if [ "${{ github.event_name }}" = "pull_request_target" ]; then
if [ "${{ github.base_ref }}" = "main" ]; then
FLAGS+=" -P ${{ github.event.pull_request.number }} --updated-manifest pr_west.yml --updated-maintainer-file pr_MAINTAINERS.yml"
else
FLAGS+=" -P ${{ github.event.pull_request.number }}"
fi
elif [ "${{ github.event_name }}" = "issues" ]; then
FLAGS+=" -I ${{ github.event.issue.number }}"
FLAGS+=" -I ${{ github.event.issue.number }}"
elif [ "${{ github.event_name }}" = "schedule" ]; then
FLAGS+=" --modules"
FLAGS+=" --modules"
else
echo "Unknown event: ${{ github.event_name }}"
exit 1
fi
python3 scripts/ci/set_assignees.py $FLAGS
- name: Check maintainer file changes
if: >
github.event_name == 'pull_request_target' && github.base_ref == 'main'
env:
GITHUB_TOKEN: ${{ secrets.ZB_PR_ASSIGNER_GITHUB_TOKEN }}
run: |
python ./scripts/ci/check_maintainer_changes.py \
--repo zephyrproject-rtos/zephyr MAINTAINERS.yml pr_MAINTAINERS.yml
python3 scripts/set_assignees.py $FLAGS

View File

@@ -7,17 +7,10 @@ on:
branches:
- main
permissions:
contents: read
jobs:
backport:
name: Backport
runs-on: ubuntu-24.04
permissions:
contents: write # to create/push backport branches
pull-requests: write # to create backport PRs
issues: write # to add labels to issue created if backport fails
runs-on: ubuntu-22.04
# Only react to merged PRs for security reasons.
# See https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request_target.
if: >
@@ -31,8 +24,8 @@ jobs:
)
steps:
- name: Backport
uses: zephyrproject-rtos/action-backport@7e74f601d11eaca577742445e87775b5651a965f # v2.0.3-3
uses: zephyrproject-rtos/action-backport@v2.0.3-3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
github_token: ${{ secrets.ZB_GITHUB_TOKEN }}
issue_labels: Backport
labels_template: '["Backport"]'

View File

@@ -2,49 +2,30 @@ name: Backport Issue Check
on:
pull_request_target:
types:
- edited
- opened
- reopened
- synchronize
branches:
- v*-branch
permissions:
contents: read
jobs:
backport:
name: Backport Issue Check
concurrency:
group: backport-issue-check-${{ github.ref }}
cancel-in-progress: true
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
if: github.repository == 'zephyrproject-rtos/zephyr'
permissions:
issues: read # to check if associated issue exists for backport
steps:
- name: Check out source code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
- name: Install Python dependencies
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
sudo pip3 install -U setuptools wheel pip
pip3 install -U pygithub
- name: Run backport issue checker
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.ZB_GITHUB_TOKEN }}
run: |
./scripts/release/list_backports.py \
-o ${{ github.event.repository.owner.login }} \
-r ${{ github.event.repository.name }} \
-b ${{ github.event.pull_request.base.ref }} \
-p ${{ github.event.pull_request.number }}
-o ${{ github.event.repository.owner.login }} \
-r ${{ github.event.repository.name }} \
-b ${{ github.event.pull_request.base.ref }} \
-p ${{ github.event.pull_request.number }}

View File

@@ -5,26 +5,20 @@ on:
workflows: ["BabbleSim Tests"]
types:
- completed
permissions:
contents: read
jobs:
bsim-test-results:
name: "Publish BabbleSim Test Results"
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
if: github.event.workflow_run.conclusion != 'skipped'
permissions:
checks: write # to create the check run entry with test results
steps:
- name: Download artifacts
uses: dawidd6/action-download-artifact@0bd50d53a6d7fb5cb921e607957e9cc12b4ce392 # v12
uses: dawidd6/action-download-artifact@v2
with:
run_id: ${{ github.event.workflow_run.id }}
- name: Publish BabbleSim Test Results
uses: EnricoMi/publish-unit-test-result-action@27d65e188ec43221b20d26de30f4892fad91df2f # v2.22.0
uses: EnricoMi/publish-unit-test-result-action@v2
with:
check_name: BabbleSim Test Results
comment_mode: off

View File

@@ -8,18 +8,13 @@ on:
- "west.yml"
- "subsys/bluetooth/**"
- "tests/bsim/**"
- "boards/nordic/nrf5*/*dt*"
- "dts/*/nordic/**"
- "tests/bluetooth/**"
- "samples/bluetooth/**"
- "boards/native/**"
- "soc/native/**"
- "boards/posix/**"
- "soc/posix/**"
- "arch/posix/**"
- "include/zephyr/arch/posix/**"
- "scripts/native_simulator/**"
- "samples/net/sockets/echo_*/**"
- "modules/hal_nordic/**"
- "modules/mbedtls/**"
- "modules/openthread/**"
- "subsys/net/l2/openthread/**"
- "include/zephyr/net/openthread.h"
@@ -27,10 +22,6 @@ on:
- "include/zephyr/net/ieee802154*"
- "drivers/serial/*nrfx*"
- "tests/drivers/uart/**"
- '!**.rst'
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
@@ -39,19 +30,22 @@ concurrency:
jobs:
bsim-test:
if: github.repository_owner == 'zephyrproject-rtos'
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
runs-on: zephyr-runner-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
image: ghcr.io/zephyrproject-rtos/ci:v0.26.7
options: '--entrypoint /bin/bash'
volumes:
- /repo-cache/zephyrproject:/github/cache/zephyrproject
env:
ZEPHYR_TOOLCHAIN_VARIANT: zephyr
BSIM_OUT_PATH: /opt/bsim/
BSIM_COMPONENTS_PATH: /opt/bsim/components
EDTT_PATH: ../tools/edtt
permissions:
checks: write # to create the check run entry with test results
bsim_bt_52_test_results_file: ./bsim_bt/52_bsim_results.xml
bsim_bt_53_test_results_file: ./bsim_bt/53_bsim_results.xml
bsim_bt_53split_test_results_file: ./bsim_bt/53_bsim_split_results.xml
bsim_net_52_test_results_file: ./bsim_net/52_bsim_results.xml
bsim_uart_test_results_file: ./bsim_uart/uart_bsim_results.xml
steps:
- name: Apply container owner mismatch workaround
run: |
@@ -61,20 +55,14 @@ jobs:
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Print cloud service information
run: |
echo "ZEPHYR_RUNNER_CLOUD_PROVIDER = ${ZEPHYR_RUNNER_CLOUD_PROVIDER}"
echo "ZEPHYR_RUNNER_CLOUD_NODE = ${ZEPHYR_RUNNER_CLOUD_NODE}"
echo "ZEPHYR_RUNNER_CLOUD_POD = ${ZEPHYR_RUNNER_CLOUD_POD}"
- name: Clone cached Zephyr repository
continue-on-error: true
run: |
git clone --shared /repo-cache/zephyrproject/zephyr .
git clone --shared /github/cache/zephyrproject/zephyr .
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
fetch-depth: 0
@@ -85,127 +73,141 @@ jobs:
git config --global user.email "bot@zephyrproject.org"
git config --global user.name "Zephyr Bot"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
git log --pretty=oneline | head -n 10
west init -l . || true
west config manifest.group-filter -- +ci
west config --global update.narrow true
west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /repo-cache/zephyrproject)
west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /github/cache/zephyrproject)
west forall -c 'git reset --hard HEAD'
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Check common triggering files
uses: tj-actions/changed-files@e0021407031f5be11a464abee9a0776171c79891 # v47.0.1
uses: tj-actions/changed-files@v41
id: check-common-files
with:
files: |
.github/workflows/bsim-tests.yaml
.github/workflows/bsim-tests-publish.yaml
west.yml
boards/native/
soc/native/
arch/posix/
include/zephyr/arch/posix/
scripts/native_simulator/
boards/posix/**
soc/posix/**
arch/posix/**
include/zephyr/arch/posix/**
scripts/native_simulator/**
tests/bsim/*
boards/nordic/nrf5*/*dt*
dts/*/nordic/
modules/mbedtls/**
modules/hal_nordic/**
- name: Check if Bluethooth files changed
uses: tj-actions/changed-files@e0021407031f5be11a464abee9a0776171c79891 # v47.0.1
uses: tj-actions/changed-files@v41
id: check-bluetooth-files
with:
files: |
samples/bluetooth/
subsys/bluetooth/
tests/bluetooth/
tests/bsim/bluetooth/
tests/bsim/bluetooth/**
samples/bluetooth/**
subsys/bluetooth/**
- name: Check if Networking files changed
uses: tj-actions/changed-files@e0021407031f5be11a464abee9a0776171c79891 # v47.0.1
uses: tj-actions/changed-files@v41
id: check-networking-files
with:
files: |
tests/bsim/net/
samples/net/sockets/echo_*/
modules/openthread/
subsys/net/l2/openthread/
tests/bsim/net/**
samples/net/sockets/echo_*/**
modules/openthread/**
subsys/net/l2/openthread/**
include/zephyr/net/openthread.h
drivers/ieee802154/
drivers/ieee802154/**
include/zephyr/net/ieee802154*
- name: Check if UART files changed
uses: tj-actions/changed-files@e0021407031f5be11a464abee9a0776171c79891 # v47.0.1
uses: tj-actions/changed-files@v41
id: check-uart-files
with:
files: |
tests/bsim/drivers/uart/
tests/bsim/drivers/uart/**
drivers/serial/*nrfx*
tests/drivers/uart/
tests/drivers/uart/**
- name: Update BabbleSim to manifest revision
if: >
steps.check-bluetooth-files.outputs.any_modified == 'true'
|| steps.check-networking-files.outputs.any_modified == 'true'
|| steps.check-uart-files.outputs.any_modified == 'true'
|| steps.check-common-files.outputs.any_modified == 'true'
steps.check-bluetooth-files.outputs.any_changed == 'true'
|| steps.check-networking-files.outputs.any_changed == 'true'
|| steps.check-uart-files.outputs.any_changed == 'true'
|| steps.check-common-files.outputs.any_changed == 'true'
run: |
export BSIM_VERSION=$( west list bsim -f {revision} )
echo "Manifest points to bsim sha $BSIM_VERSION"
cd /opt/bsim_west/bsim
git fetch -n origin ${BSIM_VERSION}
git -c advice.detachedHead=false checkout ${BSIM_VERSION}
git config --global advice.detachedHead false
git checkout ${BSIM_VERSION}
west update
make everything -s -j 8
- name: Run Bluetooth Tests with BSIM
if: steps.check-bluetooth-files.outputs.any_modified == 'true' || steps.check-common-files.outputs.any_modified == 'true'
if: steps.check-bluetooth-files.outputs.any_changed == 'true' || steps.check-common-files.outputs.any_changed == 'true'
run: |
tests/bsim/ci.bt.sh
export ZEPHYR_BASE=${PWD}
export WORK_DIR=${ZEPHYR_BASE}/bsim_bt
# Build and run the BT tests for nrf52_bsim:
nice tests/bsim/bluetooth/compile.sh
RESULTS_FILE=${ZEPHYR_BASE}/${bsim_bt_52_test_results_file} \
TESTS_FILE=tests/bsim/bluetooth/tests.nrf52bsim.txt tests/bsim/run_parallel.sh
# Build and run the BT controller tests also for the nrf5340bsim_nrf5340_cpunet
BOARD=nrf5340bsim_nrf5340_cpunet \
nice tests/bsim/bluetooth/compile.nrf5340bsim_nrf5340_cpunet.sh
BOARD=nrf5340bsim_nrf5340_cpunet \
RESULTS_FILE=${ZEPHYR_BASE}/${bsim_bt_53_test_results_file} \
TESTS_FILE=tests/bsim/bluetooth/tests.nrf5340bsim_nrf5340_cpunet.txt \
tests/bsim/run_parallel.sh
# Build and run the nrf5340 split stack tests set
BOARD=nrf5340bsim_nrf5340_cpuapp \
nice tests/bsim/bluetooth/compile.nrf5340bsim_nrf5340_cpuapp.sh
BOARD=nrf5340bsim_nrf5340_cpuapp \
RESULTS_FILE=${ZEPHYR_BASE}/${bsim_bt_53split_test_results_file} \
TESTS_FILE=tests/bsim/bluetooth/tests.nrf5340bsim_nrf5340_cpuapp.txt \
tests/bsim/run_parallel.sh
- name: Run Networking Tests with BSIM
if: steps.check-networking-files.outputs.any_modified == 'true' || steps.check-common-files.outputs.any_modified == 'true'
if: steps.check-networking-files.outputs.any_changed == 'true' || steps.check-common-files.outputs.any_changed == 'true'
run: |
tests/bsim/ci.net.sh
export ZEPHYR_BASE=${PWD}
WORK_DIR=${ZEPHYR_BASE}/bsim_net nice tests/bsim/net/compile.sh
RESULTS_FILE=${ZEPHYR_BASE}/${bsim_net_52_test_results_file} \
SEARCH_PATH=tests/bsim/net/ tests/bsim/run_parallel.sh
- name: Run UART Tests with BSIM
if: steps.check-uart-files.outputs.any_modified == 'true' || steps.check-common-files.outputs.any_modified == 'true'
if: steps.check-uart-files.outputs.any_changed == 'true' || steps.check-common-files.outputs.any_changed == 'true'
run: |
tests/bsim/ci.uart.sh
echo "UART: Single device tests"
./scripts/twister -T tests/drivers/uart/ --force-color --inline-logs -v -M -p nrf52_bsim \
--fixture gpio_loopback -- -uart0_loopback
echo "UART: Multi device tests"
export ZEPHYR_BASE=${PWD}
WORK_DIR=${ZEPHYR_BASE}/bsim_uart nice tests/bsim/drivers/uart/compile.sh
RESULTS_FILE=${ZEPHYR_BASE}/${bsim_uart_test_results_file} \
SEARCH_PATH=tests/bsim/drivers/uart/ tests/bsim/run_parallel.sh
- name: Merge Test Results
run: |
junitparser merge --glob "./bsim_*/*bsim_results.*.xml" "./twister-out/twister.xml" junit.xml
junit2html junit.xml junit.html
- name: Upload Unit Test Results in HTML
- name: Upload Test Results
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
name: HTML Unit Test Results
if-no-files-found: ignore
name: bsim-test-results
path: |
junit.html
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@27d65e188ec43221b20d26de30f4892fad91df2f # v2.22.0
with:
check_name: Bsim Test Results
files: "junit.xml"
comment_mode: off
./bsim_bt/52_bsim_results.xml
./bsim_bt/53_bsim_results.xml
./bsim_bt/53_bsim_split_results.xml
./bsim_net/52_bsim_results.xml
./bsim_uart/uart_bsim_results.xml
./twister-out/twister.xml
./twister-out/twister.json
${{ github.event_path }}
if-no-files-found: warn
- name: Upload Event Details
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
name: event
path: |

View File

@@ -8,34 +8,25 @@ name: Bug Snapshot
on:
workflow_dispatch:
branches: [main]
schedule:
# Run daily at 00:05
- cron: '5 00 * * *'
permissions:
contents: read
# Run daily at 14:05
- cron: '5 14 * * *'
jobs:
make_bugs_pickle:
name: Make bugs pickle
runs-on: ubuntu-24.04
if: github.repository_owner == 'zephyrproject-rtos' && github.ref == 'refs/heads/main'
runs-on: ubuntu-22.04
if: github.repository_owner == 'zephyrproject-rtos'
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
- name: Install Python dependencies
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
sudo pip3 install -U setuptools wheel pip
pip3 install -U pygithub
- name: Snapshot bugs
env:
@@ -51,7 +42,7 @@ jobs:
echo "BUGS_PICKLE_PATH=${BUGS_PICKLE_PATH}" >> ${GITHUB_ENV}
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.1
uses: aws-actions/configure-aws-credentials@v2
with:
aws-access-key-id: ${{ vars.AWS_BUILDS_ZEPHYR_BUG_SNAPSHOT_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_BUILDS_ZEPHYR_BUG_SNAPSHOT_SECRET_ACCESS_KEY }}

View File

@@ -1,12 +1,6 @@
name: Build with Clang/LLVM
on:
push:
branches:
- main
- v*-branch
- collab-*
permissions:
contents: read
on: pull_request_target
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
@@ -15,22 +9,22 @@ concurrency:
jobs:
clang-build:
if: github.repository_owner == 'zephyrproject-rtos'
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
runs-on: zephyr-runner-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
image: ghcr.io/zephyrproject-rtos/ci:v0.26.7
options: '--entrypoint /bin/bash'
volumes:
- /repo-cache/zephyrproject:/github/cache/zephyrproject
strategy:
fail-fast: false
matrix:
subset: [1, 2]
platform: ["native_sim"]
env:
CCACHE_DIR: /node-cache/ccache-zephyr
CCACHE_REMOTE_STORAGE: "redis://cache-*.keydb-cache.svc.cluster.local|shards=1,2,3"
CCACHE_REMOTE_ONLY: "true"
CCACHE_IGNOREOPTIONS: '-specs=* --specs=*'
LLVM_TOOLCHAIN_PATH: /usr/lib/llvm-20
LLVM_TOOLCHAIN_PATH: /usr/lib/llvm-16
COMMIT_RANGE: ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}
BASE_REF: ${{ github.base_ref }}
outputs:
report_needed: ${{ steps.twister.outputs.report_needed }}
steps:
- name: Apply container owner mismatch workaround
run: |
@@ -40,21 +34,16 @@ jobs:
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Print cloud service information
run: |
echo "ZEPHYR_RUNNER_CLOUD_PROVIDER = ${ZEPHYR_RUNNER_CLOUD_PROVIDER}"
echo "ZEPHYR_RUNNER_CLOUD_NODE = ${ZEPHYR_RUNNER_CLOUD_NODE}"
echo "ZEPHYR_RUNNER_CLOUD_POD = ${ZEPHYR_RUNNER_CLOUD_POD}"
- name: Clone cached Zephyr repository
continue-on-error: true
run: |
git clone --shared /repo-cache/zephyrproject/zephyr .
git clone --shared /github/cache/zephyrproject/zephyr .
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
persist-credentials: false
@@ -64,8 +53,7 @@ jobs:
git config --global user.email "bot@zephyrproject.org"
git config --global user.name "Zephyr Bot"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git clean -f -d
git rebase origin/${BASE_REF}
git log --pretty=oneline | head -n 10
west init -l . || true
west config --global update.narrow true
@@ -75,7 +63,7 @@ jobs:
# So first retry to update, if that does not work, remove all modules
# and start over. (Workaround until we implement more robust module
# west caching).
west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.log || west update --path-cache /repo-cache/zephyrproject 2>&1 1> west2.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /repo-cache/zephyrproject)
west update --path-cache /github/cache/zephyrproject 2>&1 1> west.log || west update --path-cache /github/cache/zephyrproject 2>&1 1> west2.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /github/cache/zephyrproject)
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
@@ -86,26 +74,31 @@ jobs:
gcc --version
ls -la
- name: Install Python packages
- name: Prepare ccache timestamp/data
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
string(REPLACE "/" "_" repo ${{github.repository}})
string(REPLACE "-" "_" repo2 ${repo})
file(APPEND $ENV{GITHUB_OUTPUT} "repo=${repo2}\n")
- name: Set up ccache
run: |
mkdir -p ${CCACHE_DIR}
ccache -M 10G
ccache -p
ccache -z -s -vv
- name: use cache
id: cache-ccache
uses: zephyrproject-rtos/action-s3-cache@v1.2.0
with:
key: ${{ steps.ccache_cache_timestamp.outputs.repo }}-${{ github.ref_name }}-clang-${{ matrix.platform }}-ccache
path: /github/home/.cache/ccache
aws-s3-bucket: ccache.zephyrproject.org
aws-access-key-id: ${{ vars.AWS_CCACHE_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_CCACHE_SECRET_ACCESS_KEY }}
aws-region: us-east-2
- name: Update BabbleSim to manifest revision
- name: ccache stats initial
run: |
export BSIM_VERSION=$( west list bsim -f {revision} )
echo "Manifest points to bsim sha $BSIM_VERSION"
cd /opt/bsim_west/bsim
git fetch -n origin ${BSIM_VERSION}
git -c advice.detachedHead=false checkout ${BSIM_VERSION}
west update
make everything -s -j 8
mkdir -p /github/home/.cache
test -d github/home/.cache/ccache && rm -rf /github/home/.cache/ccache && mv github/home/.cache/ccache /github/home/.cache/ccache
ccache -M 10G -s
- name: Run Tests with Twister
id: twister
@@ -113,62 +106,50 @@ jobs:
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=llvm
./scripts/twister -p native_sim --force-color --inline-logs -M -N -v --retry-failed 2 \
-T tests --subset ${{matrix.subset}}/2 -j 16
# check if we need to run a full twister or not based on files changed
python3 ./scripts/ci/test_plan.py --platform ${{ matrix.platform }} -c origin/${BASE_REF}..
- name: Print ccache stats
if: always()
# We can limit scope to just what has changed
if [ -s testplan.json ]; then
echo "report_needed=1" >> $GITHUB_OUTPUT
# Full twister but with options based on changes
./scripts/twister --force-color --inline-logs -M -N -v --load-tests testplan.json --retry-failed 2
else
# if nothing is run, skip reporting step
echo "report_needed=0" >> $GITHUB_OUTPUT
fi
- name: ccache stats post
run: |
ccache -s -vv
ccache -s
ccache -p
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
if: always() && steps.twister.outputs.report_needed != 0
uses: actions/upload-artifact@v4
with:
name: Unit Test Results (Subset ${{ matrix.subset }})
path: |
twister-out/twister.xml
twister-out/twister.json
if-no-files-found: ignore
name: Unit Test Results (Subset ${{ matrix.platform }})
path: twister-out/twister.xml
clang-build-results:
name: "Publish Unit Tests Results"
needs: clang-build
runs-on: ubuntu-24.04
permissions:
checks: write # to create GitHub annotations
if: (success() || failure())
runs-on: ubuntu-22.04
if: (success() || failure() ) && needs.clang-build.outputs.report_needed != 0
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
persist-credentials: false
- name: Download Artifacts
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Merge Test Results
run: |
junitparser merge --glob 'artifacts/*/twister.xml' 'artifacts/*/*/twister.xml' junit.xml
pip3 install junitparser junit2html
junitparser merge artifacts/*/twister.xml junit.xml
junit2html junit.xml junit-clang.html
- name: Upload Unit Test Results in HTML
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
name: HTML Unit Test Results
if-no-files-found: ignore
@@ -176,7 +157,7 @@ jobs:
junit-clang.html
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@27d65e188ec43221b20d26de30f4892fad91df2f # v2.22.0
uses: EnricoMi/publish-unit-test-result-action@v2
if: always()
with:
check_name: Unit Test Results

View File

@@ -1,14 +1,8 @@
name: Code Coverage with codecov
on:
push:
branches:
- main
- v*-branch
- collab-*
permissions:
contents: read
schedule:
- cron: '25 06,18 * * 1-5'
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
@@ -16,31 +10,17 @@ concurrency:
jobs:
codecov:
if: github.repository_owner == 'zephyrproject-rtos'
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
if: github.repository == 'zephyrproject-rtos/zephyr'
runs-on: zephyr-runner-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
image: ghcr.io/zephyrproject-rtos/ci:v0.26.7
options: '--entrypoint /bin/bash'
volumes:
- /repo-cache/zephyrproject:/github/cache/zephyrproject
strategy:
fail-fast: false
matrix:
platform: ["mps2/an385", "native_sim", "qemu_x86", "unit_testing"]
include:
- platform: 'mps2/an385'
normalized: 'mps2_an385'
- platform: 'native_sim'
normalized: 'native_sim'
- platform: 'qemu_x86'
normalized: 'qemu_x86'
- platform: 'unit_testing'
normalized: 'unit_testing'
env:
CCACHE_DIR: /node-cache/ccache-zephyr
CCACHE_REMOTE_STORAGE: "redis://cache-*.keydb-cache.svc.cluster.local|shards=1,2,3"
CCACHE_REMOTE_ONLY: "true"
# `--specs` is ignored because ccache is unable to resovle the toolchain specs file path.
CCACHE_IGNOREOPTIONS: '-specs=* --specs=*'
steps:
- name: Apply container owner mismatch workaround
run: |
@@ -50,12 +30,6 @@ jobs:
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Print cloud service information
run: |
echo "ZEPHYR_RUNNER_CLOUD_PROVIDER = ${ZEPHYR_RUNNER_CLOUD_PROVIDER}"
echo "ZEPHYR_RUNNER_CLOUD_NODE = ${ZEPHYR_RUNNER_CLOUD_NODE}"
echo "ZEPHYR_RUNNER_CLOUD_POD = ${ZEPHYR_RUNNER_CLOUD_POD}"
- name: Update PATH for west
run: |
echo "$HOME/.local/bin" >> $GITHUB_PATH
@@ -63,25 +37,14 @@ jobs:
- name: Clone cached Zephyr repository
continue-on-error: true
run: |
git clone --shared /repo-cache/zephyrproject/zephyr .
git clone --shared /github/cache/zephyrproject/zephyr .
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: west setup
run: |
west init -l . || true
@@ -95,12 +58,30 @@ jobs:
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Set up ccache
- name: Prepare ccache keys
id: ccache_cache_prop
shell: cmake -P {0}
run: |
mkdir -p ${CCACHE_DIR}
ccache -M 10G
ccache -p
ccache -z -s -vv
string(REPLACE "/" "_" repo ${{github.repository}})
string(REPLACE "-" "_" repo2 ${repo})
file(APPEND $ENV{GITHUB_OUTPUT} "repo=${repo2}\n")
- name: use cache
id: cache-ccache
uses: zephyrproject-rtos/action-s3-cache@v1.2.0
with:
key: ${{ steps.ccache_cache_prop.outputs.repo }}-${{github.event_name}}-${{matrix.platform}}-codecov-ccache
path: /github/home/.cache/ccache
aws-s3-bucket: ccache.zephyrproject.org
aws-access-key-id: ${{ vars.AWS_CCACHE_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_CCACHE_SECRET_ACCESS_KEY }}
aws-region: us-east-2
- name: ccache stats initial
run: |
mkdir -p /github/home/.cache
test -d github/home/.cache/ccache && mv github/home/.cache/ccache /github/home/.cache/ccache
ccache -M 10G -s
- name: Run Tests with Twister (Push)
continue-on-error: true
@@ -108,84 +89,46 @@ jobs:
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
mkdir -p coverage/reports
./scripts/twister --save-tests ${{matrix.normalized}}-testplan.json
ls -la
./scripts/twister \
-i --force-color -N -v --filter runnable -p ${{ matrix.platform }} --coverage \
-T tests --coverage-tool gcovr -xCONFIG_TEST_EXTRA_STACK_SIZE=4096 -e nano \
--timeout-multiplier 2
pip3 install gcovr==6.0
./scripts/twister -i --force-color -N -v --filter runnable -p ${{ matrix.platform }} --coverage -T tests --coverage-tool gcovr -xCONFIG_TEST_EXTRA_STACK_SIZE=4096 -e nano
- name: Build Doxygen Coverage
if: matrix.platform == 'unit_testing'
- name: ccache stats post
run: |
pip install -r doc/requirements.txt --require-hashes
sudo apt-get update
sudo apt-get install -y graphviz # dot is needed but currently missing from the Docker image
cmake -B doc/_build -S doc
cmake --build doc/_build --target doxygen-coverage
- name: Upload Doxygen Coverage Results
if: matrix.platform == 'unit_testing'
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: doxygen-coverage-results
path: |
doc/_build/new.info
doc/_build/coverage-report
- name: Print ccache stats
if: always()
run: |
ccache -s -vv
ccache -s
ccache -p
- name: Rename coverage files
if: always()
run: |
mv twister-out/coverage.json coverage/reports/${{matrix.normalized}}.json
cp twister-out/coverage.json coverage/reports/${{ matrix.platform }}.json
- name: Upload Coverage Results
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
name: Coverage Data (Subset ${{ matrix.normalized }})
path: |
coverage/reports/${{ matrix.normalized }}.json
${{ matrix.normalized }}-testplan.json
name: Coverage Data (Subset ${{ matrix.platform }})
path: coverage/reports/${{ matrix.platform }}.json
codecov-results:
name: "Publish Coverage Results"
needs: codecov
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
# the codecov job might be skipped, we don't need to run this job then
if: success() || failure()
steps:
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Download Artifacts
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
uses: actions/download-artifact@v4
with:
path: coverage/reports
- name: Move coverage files
run: |
ls -lRt ./coverage/reports
mv ./coverage/reports/*/*testplan.json .
mv ./coverage/reports/*/coverage/reports/*.json ./coverage/reports
mv ./coverage/reports/*/*.json ./coverage/reports
ls -la ./coverage/reports
- name: Generate list of coverage files
@@ -216,60 +159,26 @@ jobs:
- name: Merge coverage files
run: |
pushd ./coverage/reports
cd ./coverage/reports
pip3 install gcovr==6.0
gcovr ${{ steps.get-coverage-files.outputs.mergefiles }} --merge-mode-functions=separate --json merged.json
gcovr ${{ steps.get-coverage-files.outputs.mergefiles }} --merge-mode-functions=separate --cobertura merged.xml
popd
- name: Get current date
id: run_date
run: |
echo "run_date=$(date --iso-8601=minutes)" >> "$GITHUB_OUTPUT"
echo "run_date_short=$(date +'%Y-%m-%d')" >> "$GITHUB_OUTPUT"
echo "run_date_year=$(date +'%Y')" >> "$GITHUB_OUTPUT"
echo "run_date_month=$(date +'%m')" >> "$GITHUB_OUTPUT"
- name: Generate Coverage Report
- name: Upload Merged Coverage Results
if: always()
run: |
python3 ./scripts/ci/coverage/coverage_analysis.py \
-t native_sim-testplan.json \
-m MAINTAINERS.yml \
-c coverage/reports/merged.json \
-o coverage-report-${{ steps.run_date.outputs.run_date_short }} \
-f all
cp coverage-report-* coverage/reports/
- name: Upload Merged Coverage Results and Report
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
name: Coverage Data and report
name: Merged Coverage Data
path: |
coverage/reports/merged.json
coverage/reports/merged.xml
coverage/reports/coverage-report-${{ steps.run_date.outputs.run_date_short }}.json
coverage/reports/coverage-report-${{ steps.run_date.outputs.run_date_short }}.xlsx
- name: Upload test coverage to Codecov
- name: Upload coverage to Codecov
if: always()
uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2
uses: codecov/codecov-action@v3
with:
directory: ./coverage/reports
env_vars: OS,PYTHON
fail_ci_if_error: false
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}
files: coverage/reports/merged.xml
flags: unittests-coverage
- name: Upload Doxygen coverage to Codecov
if: always()
uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2
with:
env_vars: OS,PYTHON
fail_ci_if_error: false
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}
files: coverage/reports/doxygen-coverage-results/new.info
disable_search: true
flags: doxygen-coverage
files: merged.xml

View File

@@ -1,58 +0,0 @@
name: "CodeQL"
on:
push:
branches:
- main
- v*-branch
- collab-*
schedule:
- cron: '34 16 * * 6'
pull_request:
branches:
- main
- v*-branch
- collab-*
permissions:
contents: read
jobs:
analyze:
name: Analyze (${{ matrix.language }})
runs-on: ubuntu-24.04
permissions:
security-events: write
strategy:
fail-fast: false
matrix:
include:
- language: python
build-mode: none
- language: actions
build-mode: none
config: ./.github/codeql/codeql-actions-config.yml
- language: javascript-typescript
build-mode: none
config: ./.github/codeql/codeql-js-config.yml
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Initialize CodeQL
uses: github/codeql-action/init@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
queries: security-extended
config-file: ${{ matrix.config }}
- if: matrix.build-mode == 'manual'
shell: bash
run: |
echo "nothing yet"
exit 0
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
with:
category: "/language:${{matrix.language}}"

View File

@@ -2,37 +2,35 @@ name: Coding Guidelines
on: pull_request
permissions:
contents: read
jobs:
compliance_job:
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
name: Run coding guidelines checks on patch series (PR)
steps:
- name: Checkout the code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
- name: cache-pip
uses: actions/cache@v4
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('.github/workflows/coding_guidelines.yml') }}
- name: Install Python packages
- name: Install python dependencies
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
pip3 install unidiff
pip3 install wheel
pip3 install sh
- name: Install Packages
run: |
sudo apt-get update
sudo apt-get install coccinelle
- name: Run Coding Guidelines Checks
- name: Run Coding Guildeines Checks
continue-on-error: true
id: coding_guidelines
env:
@@ -42,10 +40,7 @@ jobs:
git config --global user.email "actions@zephyrproject.org"
git config --global user.name "Github Actions"
git remote -v
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
source zephyr-env.sh
# debug
ls -la

View File

@@ -1,19 +1,10 @@
name: Compliance Checks
on:
pull_request:
types:
- edited
- opened
- reopened
- synchronize
permissions:
contents: read
on: pull_request
jobs:
check_compliance:
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
name: Run compliance checks on patch series (PR)
steps:
- name: Update PATH for west
@@ -21,12 +12,25 @@ jobs:
echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Checkout the code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Rebase onto the target branch
- name: cache-pip
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('.github/workflows/compliance.yml') }}
- name: Install python dependencies
run: |
pip3 install setuptools
pip3 install wheel
pip3 install python-magic lxml junitparser gitlint pylint pykwalify yamllint
pip3 install west
- name: west setup
env:
BASE_REF: ${{ github.base_ref }}
run: |
@@ -36,41 +40,13 @@ jobs:
# Ensure there's no merge commits in the PR
[[ "$(git rev-list --merges --count origin/${BASE_REF}..)" == "0" ]] || \
(echo "::error ::Merge commits not allowed, rebase instead";false)
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
# debug
git log --pretty=oneline | head -n 10
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: west setup
run: |
west init -l . || true
west config manifest.group-filter -- +ci,-optional
west update -o=--depth=1 -n 2>&1 1> west.update.log || west update -o=--depth=1 -n 2>&1 1> west.update2.log
- name: Setup Node.js
uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
with:
node-version: "lts/*"
cache: npm
check-latest: true
cache-dependency-path: ./scripts/ci/package-lock.json
- name: Install Node dependencies
run: npm --prefix ./scripts/ci ci
- name: Run Compliance Tests
continue-on-error: true
id: compliance
@@ -83,56 +59,35 @@ jobs:
git log --pretty=oneline | head -n 10
# Increase rename limit to allow for large PRs
git config diff.renameLimit 10000
excludes="-e KconfigBasic -e SysbuildKconfigBasic -e ClangFormat"
# The signed-off-by check for dependabot should be skipped
if [ "${{ github.actor }}" == "dependabot[bot]" ]; then
excludes="$excludes -e Identity"
fi
./scripts/ci/check_compliance.py --annotate $excludes -c origin/${BASE_REF}..
./scripts/ci/check_compliance.py --annotate -e KconfigBasic \
-c origin/${BASE_REF}..
- name: upload-results
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
continue-on-error: true
with:
name: compliance.xml
path: compliance.xml
- name: Upload dts linter patch
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
continue-on-error: true
if: hashFiles('dts_linter.patch') != ''
with:
name: dts_linter.patch
path: dts_linter.patch
- name: check-warns
run: |
if [[ ! -s "compliance.xml" ]]; then
exit 1;
fi
warns=("ClangFormat" "LicenseAndCopyrightCheck")
files=($(./scripts/ci/check_compliance.py -l))
for file in "${files[@]}"; do
f="${file}.txt"
if [[ -s $f ]]; then
results=$(cat $f)
results="${results//'%'/'%25'}"
results="${results//$'\n'/'%0A'}"
results="${results//$'\r'/'%0D'}"
if [[ "${warns[@]}" =~ "${file}" ]]; then
echo "::warning file=${f}::$results"
else
echo "::error file=${f}::$results"
exit=1
fi
errors=$(cat $f)
errors="${errors//'%'/'%25'}"
errors="${errors//$'\n'/'%0A'}"
errors="${errors//$'\r'/'%0D'}"
echo "::error file=${f}::$errors"
exit=1
fi
done
if [ "${exit}" == "1" ]; then
echo "Compliance error, check for error messages in the \"Run Compliance Tests\" step"
echo "You can run this step locally with the ./scripts/ci/check_compliance.py script."
exit 1;
fi

View File

@@ -10,38 +10,28 @@ on:
branches:
- refs/tags/*
permissions:
contents: read
jobs:
get_version:
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
if: github.repository == 'zephyrproject-rtos/zephyr'
steps:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.1
uses: aws-actions/configure-aws-credentials@v2
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: install-pip
run: |
pip3 install gitpython
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Upload to AWS S3
run: |
python3 scripts/ci/version_mgr.py --update .

View File

@@ -20,32 +20,55 @@ on:
- 'scripts/dts/**'
- '.github/workflows/devicetree_checks.yml'
permissions:
contents: read
jobs:
devicetree-checks:
name: Devicetree script tests
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
os: [ubuntu-22.04, macos-14, windows-2022]
python-version: [3.8, 3.9, '3.10', '3.11', '3.12']
os: [ubuntu-22.04, macos-11, windows-2022]
exclude:
- os: macos-11
python-version: 3.6
- os: windows-2022
python-version: 3.6
steps:
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
- name: cache-pip-linux
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: cache-pip-mac
if: startsWith(runner.os, 'macOS')
uses: actions/cache@v4
with:
path: ~/Library/Caches/pip
# Trailing '-' was just to get a different cache name
key: ${{ runner.os }}-pip-${{ matrix.python-version }}-
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}-
- name: cache-pip-win
if: startsWith(runner.os, 'Windows')
uses: actions/cache@v4
with:
path: ~\AppData\Local\pip\Cache
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: install python dependencies
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
pip3 install wheel
pip3 install pytest pyyaml tox
- name: run tox
working-directory: scripts/dts/python-devicetree
run: |

20
.github/workflows/do_not_merge.yml vendored Normal file
View File

@@ -0,0 +1,20 @@
name: Do Not Merge
on:
pull_request:
types: [synchronize, opened, reopened, labeled, unlabeled]
jobs:
do-not-merge:
if: ${{ contains(github.event.*.labels.*.name, 'DNM') ||
contains(github.event.*.labels.*.name, 'TSC') ||
contains(github.event.*.labels.*.name, 'Architecture Review') ||
contains(github.event.*.labels.*.name, 'dev-review') }}
name: Prevent Merging
runs-on: ubuntu-22.04
steps:
- name: Check for label
run: |
echo "Pull request is labeled as 'DNM', 'TSC', 'Architecture Review' or 'dev-review'."
echo "This workflow fails so that the pull request cannot be merged."
exit 1

View File

@@ -4,126 +4,109 @@
name: Documentation Build
on:
schedule:
- cron: '0 */3 * * *'
push:
branches:
- main
tags:
- v*
pull_request:
permissions:
contents: read
env:
DOXYGEN_VERSION: 1.15.0
DOXYGEN_SHA256SUM: 0ec2e5b2c3cd82b7106d19cb42d8466450730b8cb7a9e85af712be38bf4523a1
JOB_COUNT: 8
# NOTE: west docstrings will be extracted from the version listed here
WEST_VERSION: 1.2.0
# The latest CMake available directly with apt is 3.18, but we need >=3.20
# so we fetch that through pip.
CMAKE_VERSION: 3.20.5
DOXYGEN_VERSION: 1.9.6
jobs:
doc-file-check:
name: Check for doc changes
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
if: >
github.repository_owner == 'zephyrproject-rtos'
outputs:
file_check: ${{ steps.check-doc-files.outputs.any_modified }}
file_check: ${{ steps.check-doc-files.outputs.any_changed }}
steps:
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Check if Documentation related files changed
uses: tj-actions/changed-files@e0021407031f5be11a464abee9a0776171c79891 # v47.0.1
uses: tj-actions/changed-files@v42
id: check-doc-files
with:
files: |
doc/
boards/**/doc/
doc/**
**.rst
include/
include/**
kernel/include/kernel_arch_interface.h
lib/libc/**
subsys/testsuite/ztest/include/**
tests/**
**/Kconfig*
west.yml
scripts/dts/
scripts/dts/**
doc/requirements.txt
.github/workflows/doc-build.yml
scripts/pylib/pytest-twister-harness/src/twister_harness/device/device_adapter.py
scripts/pylib/pytest-twister-harness/src/twister_harness/helpers/shell.py
doc-build-html:
name: "Documentation Build (HTML)"
needs: [doc-file-check]
if: >
needs.doc-file-check.outputs.file_check == 'true' || github.event_name != 'pull_request'
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
options: '--entrypoint /bin/bash'
timeout-minutes: 60
if: github.repository_owner == 'zephyrproject-rtos' && needs.doc-file-check.outputs.file_check == 'true'
runs-on: zephyr-runner-linux-x64-4xlarge
timeout-minutes: 45
concurrency:
group: doc-build-html-${{ github.ref }}
cancel-in-progress: true
env:
BASE_REF: ${{ github.base_ref }}
steps:
- name: Print cloud service information
run: |
echo "ZEPHYR_RUNNER_CLOUD_PROVIDER = ${ZEPHYR_RUNNER_CLOUD_PROVIDER}"
echo "ZEPHYR_RUNNER_CLOUD_NODE = ${ZEPHYR_RUNNER_CLOUD_NODE}"
echo "ZEPHYR_RUNNER_CLOUD_POD = ${ZEPHYR_RUNNER_CLOUD_POD}"
- name: Apply container owner mismatch workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
# match the container user UID because of the way GitHub
# Actions runner is implemented. Remove this workaround when
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Clone cached Zephyr repository
continue-on-error: true
run: |
git clone --shared /repo-cache/zephyrproject/zephyr .
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: checkout
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Environment Setup
- name: Rebase
if: github.event_name == 'pull_request'
continue-on-error: true
env:
BASE_REF: ${{ github.base_ref }}
PR_HEAD: ${{ github.event.pull_request.head.sha }}
run: |
if [ "${{github.event_name}}" = "pull_request" ]; then
git config --global user.email "bot@zephyrproject.org"
git config --global user.name "Zephyr Builder"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
git log --pretty=oneline | head -n 10
fi
echo "$HOME/.local/bin" >> $GITHUB_PATH
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
git config --global user.email "actions@zephyrproject.org"
git config --global user.name "Github Actions"
git rebase origin/${BASE_REF}
git log --graph --oneline HEAD...${PR_HEAD}
west init -l . || true
west config --global update.narrow true
west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /repo-cache/zephyrproject)
west forall -c 'git reset --hard HEAD'
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Install Python packages required for documentation build
- name: install-pkgs
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
pip install -r doc/requirements.txt --require-hashes
sudo apt-get update
sudo apt-get install -y ninja-build graphviz lcov
wget --no-verbose "https://github.com/doxygen/doxygen/releases/download/Release_${DOXYGEN_VERSION//./_}/doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz"
tar xf doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz
echo "${PWD}/doxygen-${DOXYGEN_VERSION}/bin" >> $GITHUB_PATH
- name: Build HTML documentation
- name: cache-pip
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: pip-${{ hashFiles('doc/requirements.txt') }}
- name: install-pip
run: |
sudo pip3 install -U setuptools wheel pip
pip3 install -r doc/requirements.txt
pip3 install west==${WEST_VERSION}
pip3 install cmake==${CMAKE_VERSION}
pip3 install coverxygen
- name: west setup
run: |
west init -l .
- name: build-docs
shell: bash
run: |
if [[ "$GITHUB_REF" =~ "refs/tags/v" ]]; then
@@ -137,11 +120,7 @@ jobs:
else
DOC_TARGET="html"
fi
DOC_TAG=${DOC_TAG} \
SPHINXOPTS="-j ${JOB_COUNT} -W --keep-going -T" \
SPHINXOPTS_EXTRA="-q -t publish" \
make -C doc ${DOC_TARGET}
DOC_TAG=${DOC_TAG} SPHINXOPTS_EXTRA="-q -t publish" make -C doc ${DOC_TARGET}
# API documentation coverage
python3 -m coverxygen --xml-dir doc/_build/html/doxygen/xml/ --src-dir include/ --output doc-coverage.info
@@ -149,26 +128,25 @@ jobs:
lcov --remove doc-coverage.info \*/deprecated > new.info
genhtml --no-function-coverage --no-branch-coverage new.info -o coverage-report
- name: Compress documentation build artifacts
- name: compress-docs
run: |
tar --use-compress-program="xz -T0" -cf html-output.tar.xz --exclude html/_sources --exclude html/doxygen/xml --directory=doc/_build html
tar --use-compress-program="xz -T0" -cf api-output.tar.xz --directory=doc/_build html/doxygen/html
tar --use-compress-program="xz -T0" -cf api-coverage.tar.xz coverage-report
tar cfJ html-output.tar.xz --directory=doc/_build html
tar cfJ api-output.tar.xz --directory=doc/_build html/doxygen/html
tar cfJ api-coverage.tar.xz coverage-report
- name: Upload HTML output
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
- name: upload-build
uses: actions/upload-artifact@v4
with:
name: html-output
path: html-output.tar.xz
- name: Upload Doxygen coverage artifacts
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
- name: upload-api-coverage
uses: actions/upload-artifact@v4
with:
name: api-coverage
path: api-coverage.tar.xz
- name: Summarize PR documentation URLs
- name: process-pr
if: github.event_name == 'pull_request'
run: |
REPO_NAME="${{ github.event.repository.name }}"
@@ -182,8 +160,8 @@ jobs:
echo "API Documentation will be available shortly at: ${API_DOC_URL}" >> $GITHUB_STEP_SUMMARY
echo "API Coverage Report will be available shortly at: ${API_COVERAGE_URL}" >> $GITHUB_STEP_SUMMARY
- name: Upload PR number
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
- name: upload-pr-number
uses: actions/upload-artifact@v4
if: github.event_name == 'pull_request'
with:
name: pr_num
@@ -191,59 +169,54 @@ jobs:
doc-build-pdf:
name: "Documentation Build (PDF)"
needs: [doc-file-check]
if: |
github.event_name != 'pull_request'
runs-on: ubuntu-24.04
timeout-minutes: 120
github.event_name != 'pull_request' &&
github.repository_owner == 'zephyrproject-rtos'
runs-on: zephyr-runner-linux-x64-4xlarge
container: texlive/texlive:latest
timeout-minutes: 60
concurrency:
group: doc-build-pdf-${{ github.ref }}
cancel-in-progress: true
steps:
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: zephyr
- name: Apply container owner mismatch workaround
run: |
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: doc/requirements.txt
- name: checkout
uses: actions/checkout@v4
- name: install-pkgs
run: |
sudo apt-get update
sudo apt-get install --no-install-recommends graphviz librsvg2-bin \
texlive-latex-base texlive-latex-extra latexmk \
texlive-fonts-recommended texlive-fonts-extra texlive-xetex \
imagemagick fonts-noto xindy
wget --no-verbose "https://github.com/doxygen/doxygen/releases/download/Release_${DOXYGEN_VERSION//./_}/doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz"
echo "${DOXYGEN_SHA256SUM} doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz" | sha256sum -c
if [ $? -ne 0 ]; then
echo "Failed to verify doxygen tarball"
exit 1
fi
sudo tar xf doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz -C /opt
echo "/opt/doxygen-${DOXYGEN_VERSION}/bin" >> $GITHUB_PATH
apt-get update
apt-get install -y python3-pip python3-venv ninja-build doxygen graphviz librsvg2-bin
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@360ff9b36e58499d9eb28015cdcde7ca03a5b04d # v1.0.12
- name: cache-pip
uses: actions/cache@v4
with:
app-path: zephyr
toolchains: 'arm-zephyr-eabi'
enable-ccache: false
path: ~/.cache/pip
key: pip-${{ hashFiles('doc/requirements.txt') }}
- name: install-pip-pkgs
working-directory: zephyr
- name: setup-venv
run: |
pip install -r doc/requirements.txt --require-hashes
python3 -m venv .venv
. .venv/bin/activate
echo PATH=$PATH >> $GITHUB_ENV
- name: install-pip
run: |
pip3 install -U setuptools wheel pip
pip3 install -r doc/requirements.txt
pip3 install west==${WEST_VERSION}
pip3 install cmake==${CMAKE_VERSION}
- name: west setup
run: |
west init -l .
- name: build-docs
shell: bash
working-directory: zephyr
continue-on-error: true
run: |
if [[ "$GITHUB_REF" =~ "refs/tags/v" ]]; then
@@ -252,20 +225,17 @@ jobs:
DOC_TAG="development"
fi
DOC_TAG=${DOC_TAG} \
SPHINXOPTS="-q -j ${JOB_COUNT}" \
LATEXMKOPTS="-quiet -halt-on-error" \
make -C doc pdf
DOC_TAG=${DOC_TAG} SPHINXOPTS="-q -j auto" LATEXMKOPTS="-quiet -halt-on-error" make -C doc pdf
- name: upload-build
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
name: pdf-output
if-no-files-found: ignore
path: |
zephyr/doc/_build/latex/zephyr.pdf
zephyr/doc/_build/latex/zephyr.log
doc/_build/latex/zephyr.pdf
doc/_build/latex/zephyr.log
doc-build-status-check:
if: always()

View File

@@ -10,13 +10,10 @@ on:
types:
- completed
permissions:
contents: read
jobs:
doc-publish:
name: Publish Documentation
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
if: |
github.event.workflow_run.event == 'pull_request' &&
github.event.workflow_run.conclusion == 'success' &&
@@ -24,64 +21,47 @@ jobs:
steps:
- name: Download artifacts
id: download-artifacts
uses: dawidd6/action-download-artifact@0bd50d53a6d7fb5cb921e607957e9cc12b4ce392 # v12
uses: dawidd6/action-download-artifact@v2
with:
workflow: doc-build.yml
run_id: ${{ github.event.workflow_run.id }}
if_no_artifact_found: ignore
- name: Load PR number
if: steps.download-artifacts.outputs.found_artifact == 'true'
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
with:
script: |
let fs = require("fs");
let pr_number = Number(fs.readFileSync("./pr_num/pr_num"));
core.exportVariable("PR_NUM", pr_number);
run: |
echo "PR_NUM=$(<pr_num/pr_num)" >> $GITHUB_ENV
- name: Check PR number
if: steps.download-artifacts.outputs.found_artifact == 'true'
id: check-pr
uses: carpentries/actions/check-valid-pr@083bb9952b1414bd2b9e10ecec1717c938aba4c5 # v0.17.0
uses: carpentries/actions/check-valid-pr@v0.14.0
with:
pr: ${{ env.PR_NUM }}
sha: ${{ github.event.workflow_run.head_sha }}
- name: Validate PR number
if: |
steps.download-artifacts.outputs.found_artifact == 'true' &&
steps.check-pr.outputs.VALID != 'true'
if: steps.check-pr.outputs.VALID != 'true'
run: |
echo "ABORT: PR number validation failed!"
exit 1
- name: Uncompress HTML docs
if: steps.download-artifacts.outputs.found_artifact == 'true'
run: |
tar xf html-output/html-output.tar.xz -C html-output
if [ -f api-coverage/api-coverage.tar.xz ]; then
tar xf api-coverage/api-coverage.tar.xz -C api-coverage
fi
tar xf api-coverage/api-coverage.tar.xz -C api-coverage
- name: Configure AWS Credentials
if: steps.download-artifacts.outputs.found_artifact == 'true'
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.1
uses: aws-actions/configure-aws-credentials@v2
with:
aws-access-key-id: ${{ vars.AWS_BUILDS_ZEPHYR_PR_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_BUILDS_ZEPHYR_PR_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Upload to AWS S3
if: steps.download-artifacts.outputs.found_artifact == 'true'
env:
HEAD_BRANCH: ${{ github.event.workflow_run.head_branch }}
run: |
aws s3 sync --quiet html-output/html \
s3://builds.zephyrproject.org/${{ github.event.repository.name }}/pr/${PR_NUM}/docs \
--delete
if [ -d api-coverage/coverage-report ]; then
aws s3 sync --quiet api-coverage/coverage-report/ \
s3://builds.zephyrproject.org/${{ github.event.repository.name }}/pr/${PR_NUM}/api-coverage \
--delete
fi
aws s3 sync --quiet api-coverage/coverage-report/ \
s3://builds.zephyrproject.org/${{ github.event.repository.name }}/pr/${PR_NUM}/api-coverage \
--delete

View File

@@ -13,13 +13,10 @@ on:
types:
- completed
permissions:
contents: read
jobs:
doc-publish:
name: Publish Documentation
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
if: |
github.event.workflow_run.event != 'pull_request' &&
github.event.workflow_run.conclusion == 'success' &&
@@ -27,7 +24,7 @@ jobs:
steps:
- name: Download artifacts
uses: dawidd6/action-download-artifact@0bd50d53a6d7fb5cb921e607957e9cc12b4ce392 # v12
uses: dawidd6/action-download-artifact@v2
with:
workflow: doc-build.yml
run_id: ${{ github.event.workflow_run.id }}
@@ -35,12 +32,10 @@ jobs:
- name: Uncompress HTML docs
run: |
tar xf html-output/html-output.tar.xz -C html-output
if [ -f api-coverage/api-coverage.tar.xz ]; then
tar xf api-coverage/api-coverage.tar.xz -C api-coverage
fi
tar xf api-coverage/api-coverage.tar.xz -C api-coverage
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.1
uses: aws-actions/configure-aws-credentials@v2
with:
aws-access-key-id: ${{ vars.AWS_DOCS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_DOCS_SECRET_ACCESS_KEY }}
@@ -58,7 +53,5 @@ jobs:
aws s3 sync --quiet html-output/html s3://docs.zephyrproject.org/${VERSION} --delete
aws s3 sync --quiet html-output/html/doxygen/html s3://docs.zephyrproject.org/apidoc/${VERSION} --delete
if [ -d api-coverage/coverage-report ]; then
aws s3 sync --quiet api-coverage/coverage-report/ s3://docs.zephyrproject.org/api-coverage/${VERSION} --delete
fi
aws s3 sync --quiet api-coverage/coverage-report/ s3://docs.zephyrproject.org/api-coverage/${VERSION} --delete
aws s3 cp --quiet pdf-output/zephyr.pdf s3://docs.zephyrproject.org/${VERSION}/zephyr.pdf

View File

@@ -5,32 +5,30 @@ on:
- '.github/workflows/errno.yml'
- 'lib/libc/minimal/include/errno.h'
- 'scripts/ci/errno.py'
- 'SDK_VERSION'
permissions:
contents: read
jobs:
check-errno:
runs-on: ubuntu-24.04
steps:
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: zephyr
runs-on: ubuntu-22.04
container:
image: ghcr.io/zephyrproject-rtos/ci:v0.26.7
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@360ff9b36e58499d9eb28015cdcde7ca03a5b04d # v1.0.12
with:
app-path: zephyr
toolchains: 'arm-zephyr-eabi'
west-group-filter: -hal,-tools,-bootloader,-babblesim
west-project-filter: -nrf_hw_models
enable-ccache: false
steps:
- name: Apply container owner mismatch workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
# match the container user UID because of the way GitHub
# Actions runner is implemented. Remove this workaround when
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: checkout
uses: actions/checkout@v4
- name: Environment Setup
run: |
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Run errno.py
working-directory: zephyr
run: |
export ZEPHYR_SDK_INSTALL_DIR=${{ github.workspace }}/zephyr-sdk
export ZEPHYR_BASE=${PWD}
./scripts/ci/errno.py

View File

@@ -1,8 +1,9 @@
name: Footprint Tracking
# Run every 12 hours and on tags
on:
schedule:
- cron: '50 00 * * *'
- cron: '50 1/12 * * *'
push:
paths:
- 'VERSION'
@@ -15,24 +16,17 @@ on:
# same commit
- 'v*'
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
jobs:
footprint-tracking:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
runs-on: zephyr-runner-linux-x64-4xlarge
if: github.repository_owner == 'zephyrproject-rtos'
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
image: ghcr.io/zephyrproject-rtos/ci:v0.26.7
options: '--entrypoint /bin/bash'
defaults:
run:
shell: bash
strategy:
fail-fast: false
env:
@@ -46,12 +40,6 @@ jobs:
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Print cloud service information
run: |
echo "ZEPHYR_RUNNER_CLOUD_PROVIDER = ${ZEPHYR_RUNNER_CLOUD_PROVIDER}"
echo "ZEPHYR_RUNNER_CLOUD_NODE = ${ZEPHYR_RUNNER_CLOUD_NODE}"
echo "ZEPHYR_RUNNER_CLOUD_POD = ${ZEPHYR_RUNNER_CLOUD_POD}"
- name: Update PATH for west
run: |
echo "$HOME/.local/bin" >> $GITHUB_PATH
@@ -60,24 +48,14 @@ jobs:
run: |
sudo apt-get update
sudo apt-get install -y python3-venv
sudo pip3 install -U setuptools wheel pip gitpython
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Environment Setup
run: |
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
@@ -89,7 +67,7 @@ jobs:
west update 2>&1 1> west.update.log || west update 2>&1 1> west.update2.log
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.1
uses: aws-actions/configure-aws-credentials@v2
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}
@@ -106,33 +84,5 @@ jobs:
run: |
python3 -m venv .venv
. .venv/bin/activate
pip3 install awscli
aws s3 sync --quiet footprint_data/ s3://testing.zephyrproject.org/footprint_data/
- name: Transform Footprint data to Twister JSON reports
run: |
shopt -s globstar
export ZEPHYR_BASE=${PWD}
python3 ./scripts/footprint/pack_as_twister.py -vvv \
--plan ./scripts/footprint/plan.txt \
--test-name='name.feature' \
./footprint_data/**/
- name: Upload to ElasticSearch
env:
ELASTICSEARCH_KEY: ${{ secrets.ELASTICSEARCH_KEY }}
ELASTICSEARCH_SERVER: "https://elasticsearch.zephyrproject.io:443"
ELASTICSEARCH_INDEX: ${{ vars.FOOTPRINT_TRACKING_INDEX }}
run: |
shopt -s globstar
run_date=`date --iso-8601=minutes`
python3 ./scripts/ci/upload_test_results_es.py -r ${run_date} \
--flatten footprint \
--flatten-list-names "{'children':'name'}" \
--transform "{ 'footprint_name': '^(?P<footprint_area>([^\/]+\/){0,2})(?P<footprint_path>([^\/]*\/)*)(?P<footprint_symbol>[^\/]*)$' }" \
--run-id "${{ github.run_id }}" \
--run-attempt "${{ github.run_attempt }}" \
--run-workflow "footprint-tracking:${{ github.event_name }}" \
--run-branch "${{ github.ref_name }}" \
-i ${ELASTICSEARCH_INDEX} \
./footprint_data/**/twister_footprint.json
#

View File

@@ -6,20 +6,14 @@ on:
pull_request_target:
types: [opened, closed]
permissions:
contents: read
jobs:
check_for_first_interaction:
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
if: github.repository == 'zephyrproject-rtos/zephyr'
permissions:
pull-requests: write # to comment on pull requests
issues: write # to comment on issues
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: zephyrproject-rtos/action-first-interaction@58853996b1ac504b8e0f6964301f369d2bb22e5c # v1.1.1+zephyr.6
- uses: actions/checkout@v4
- uses: zephyrproject-rtos/action-first-interaction@v1.1.1-zephyr-5
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
@@ -45,7 +39,7 @@ jobs:
and update (by amending and force-pushing the commits) your pull request if necessary.
If you are stuck or need help please join us on [Discord](https://chat.zephyrproject.org/)
and ask your question there. Additionally, you can [escalate the review](https://docs.zephyrproject.org/latest/contribute/contributor_expectations.html#pr-technical-escalation)
and ask your question there. Additionally, you can [escalate the review](https://docs.zephyrproject.org/latest/contribute/contributor_expectations.html#pr-review-escalation)
when applicable. 😊
pr-merged-message: >

View File

@@ -12,13 +12,11 @@ on:
- v*-branch
- collab-*
paths:
- 'scripts/**'
- 'scripts/build/**'
- 'scripts/requirements*.txt'
- '.github/workflows/hello_world_multiplatform.yaml'
- 'SDK_VERSION'
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
@@ -28,11 +26,11 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-22.04, ubuntu-24.04, ubuntu-24.04-arm, macos-14, windows-2022]
os: [ubuntu-22.04, macos-12, macos-14, windows-2022]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
path: zephyr
fetch-depth: 0
@@ -47,23 +45,19 @@ jobs:
run: |
git config --global user.email "actions@zephyrproject.org"
git config --global user.name "Github Actions"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
git log --graph --oneline HEAD...${PR_HEAD}
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
uses: actions/setup-python@v4
with:
python-version: 3.12
python-version: 3.11
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@360ff9b36e58499d9eb28015cdcde7ca03a5b04d # v1.0.12
uses: zephyrproject-rtos/action-zephyr-setup@v1
with:
app-path: zephyr
toolchains: arm-zephyr-eabi:riscv64-zephyr-elf
ccache-cache-key: hw-${{ matrix.os }}
toolchains: all
- name: Build firmware
working-directory: zephyr
@@ -73,24 +67,13 @@ jobs:
EXTRA_TWISTER_FLAGS="-P native_sim --build-only"
elif [ "${{ runner.os }}" = "Windows" ]; then
EXTRA_TWISTER_FLAGS="-P native_sim --short-build-path -O/tmp/twister-out"
elif [ "${{ runner.os }}-${{ runner.arch }}" == "Linux-ARM64" ]; then
EXTRA_TWISTER_FLAGS="--exclude-platform native_sim/native"
fi
west twister \
-p native_sim -p qemu_cortex_m0 -p qemu_riscv32 -p qemu_riscv64 \
--runtime-artifact-cleanup \
--force-color \
--inline-logs \
-T samples/hello_world \
-T samples/cpp/hello_world \
-v \
$EXTRA_TWISTER_FLAGS
./scripts/twister --force-color --inline-logs -T samples/hello_world -v $EXTRA_TWISTER_FLAGS
- name: Upload artifacts
if: failure()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
if-no-files-found: ignore
path:
zephyr/twister-out/*/samples/hello_world/sample.basic.helloworld/build.log
zephyr/twister-out/*/samples/cpp/hello_world/sample.cpp.helloworld/build.log

View File

@@ -2,10 +2,7 @@ name: Issue Tracker
on:
schedule:
- cron: '10 1/4 * * *'
permissions:
contents: read
- cron: '*/10 * * * *'
env:
OUTPUT_FILE_NAME: IssuesReport.md
@@ -17,7 +14,7 @@ env:
jobs:
track-issues:
name: "Collect Issue Stats"
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
if: github.repository == 'zephyrproject-rtos/zephyr'
steps:
@@ -30,7 +27,7 @@ jobs:
sudo apt-get update
sudo apt-get install discount
- uses: brcrista/summarize-issues@54c549b7d38b7db39e5c6e06fd9617e12e5c3491 # v4
- uses: brcrista/summarize-issues@v3
with:
title: 'Issues Report for ${{ github.repository }}'
configPath: 'issues-report-config.json'
@@ -38,14 +35,14 @@ jobs:
token: ${{ secrets.GITHUB_TOKEN }}
- name: upload-stats
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
continue-on-error: true
with:
name: ${{ env.OUTPUT_FILE_NAME }}
path: ${{ env.OUTPUT_FILE_NAME }}
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # v5.1.1
uses: aws-actions/configure-aws-credentials@v2
with:
aws-access-key-id: ${{ vars.AWS_TESTING_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_TESTING_SECRET_ACCESS_KEY }}

View File

@@ -2,25 +2,22 @@ name: Scancode
on: [pull_request]
permissions:
contents: read
jobs:
scancode_job:
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
name: Scan code for licenses
steps:
- name: Checkout the code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Scan the code
id: scancode
uses: zephyrproject-rtos/action_scancode@23ef91ce31cd4b954366a7b71eea47520da9b380 # v4
uses: zephyrproject-rtos/action_scancode@v4
with:
directory-to-scan: 'scan/'
- name: Artifact Upload
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
name: scancode
path: ./artifacts

View File

@@ -2,20 +2,16 @@ name: Manifest
on:
pull_request_target:
permissions:
contents: read
jobs:
contribs:
runs-on: ubuntu-24.04
permissions:
pull-requests: write # to create/update pull request comments
runs-on: ubuntu-22.04
name: Manifest
steps:
- name: Checkout the code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
path: zephyrproject/zephyr
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
persist-credentials: false
@@ -24,22 +20,19 @@ jobs:
BASE_REF: ${{ github.base_ref }}
working-directory: zephyrproject/zephyr
run: |
pip install -r scripts/requirements-west.txt --require-hashes
pip3 install west
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
west init -l . || true
- name: Manifest
uses: zephyrproject-rtos/action-manifest@09983f53d3d878791aa37a7755ae44d695f4c1e5 # v2.0.0
uses: zephyrproject-rtos/action-manifest@v1.2.2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
github-token: ${{ secrets.ZB_GITHUB_TOKEN }}
manifest-path: 'west.yml'
checkout-path: 'zephyrproject/zephyr'
use-tree-checkout: 'true'
check-impostor-commits: 'true'
label-prefix: 'manifest-'
verbosity-level: '1'
labels: 'manifest'
dnm-labels: 'DNM (manifest)'
blobs-added-labels: 'Binary Blobs Added'
blobs-modified-labels: 'Binary Blobs Modified'
dnm-labels: 'DNM'

View File

@@ -1,19 +0,0 @@
name: Check SHA-pinned GitHub Actions
on:
pull_request:
paths:
- '.github/workflows/**'
permissions:
contents: read
jobs:
check-sha-pinned-actions:
name: Verify GitHub Actions
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Ensure SHA pinned actions
uses: zgosalvez/github-actions-ensure-sha-pinned-actions@6124774845927d14c601359ab8138699fa5b70c3 # v4.0.1

View File

@@ -1,46 +0,0 @@
name: PR Metadata Check
on:
pull_request:
types:
- synchronize
- opened
- reopened
- labeled
- unlabeled
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
jobs:
do-not-merge:
name: Prevent Merging
runs-on: ubuntu-24.04
timeout-minutes: 30
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python dependencies
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Run the check script
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
python -u scripts/ci/do_not_merge.py \
-p "${{ github.event.pull_request.number }}" \
-o "${{ github.event.repository.owner.login }}" \
-r "${{ github.event.repository.name }}"

View File

@@ -19,31 +19,32 @@ on:
- 'scripts/pylib/build_helpers/**'
- '.github/workflows/pylib_tests.yml'
permissions:
contents: read
jobs:
pylib-tests:
name: Misc. Pylib Unit Tests
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
os: [ubuntu-24.04]
python-version: [3.8, 3.9, '3.10', '3.11', '3.12']
os: [ubuntu-22.04]
steps:
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
- name: cache-pip-linux
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: install-packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
pip3 install -r scripts/requirements-base.txt -r scripts/requirements-build-test.txt
- name: Run pytest for build_helpers
env:
ZEPHYR_BASE: ./

View File

@@ -7,9 +7,6 @@ on:
type: string
required: true
permissions:
contents: read
jobs:
all_jobs_passed:
name: all jobs passed

View File

@@ -6,16 +6,11 @@ on:
- 'v*'
- '!v*rc*'
permissions:
contents: read
jobs:
release:
runs-on: ubuntu-24.04
permissions:
contents: write # to create GitHub release entry
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@v4
with:
fetch-depth: 0
@@ -26,12 +21,12 @@ jobs:
echo "TRIMMED_VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
- name: REUSE Compliance Check
uses: fsfe/reuse-action@676e2d560c9a403aa252096d99fcab3e1132b0f5 # v6.0.0
uses: fsfe/reuse-action@v1
with:
args: spdx -o zephyr-${{ steps.get_version.outputs.VERSION }}.spdx
- name: upload-results
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
continue-on-error: true
with:
name: zephyr-${{ steps.get_version.outputs.VERSION }}.spdx
@@ -43,7 +38,7 @@ jobs:
- name: Create Release
id: create_release
uses: actions/create-release@0cb9c9b65d5d1901c1f53e5e66eaf4afd303e70e # v1.1.4
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
@@ -55,7 +50,7 @@ jobs:
- name: Upload Release Assets
id: upload-release-asset
uses: actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1.0.2
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:

View File

@@ -1,61 +0,0 @@
# This workflow uses actions that are not certified by GitHub. They are provided
# by a third-party and are governed by separate terms of service, privacy
# policy, and support documentation.
name: Scorecards supply-chain security
on:
# For Branch-Protection check. Only the default branch is supported. See
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection
branch_protection_rule:
# To guarantee Maintained check is occasionally updated. See
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained
schedule:
- cron: '43 7 * * 6'
push:
branches:
- main
permissions: read-all
jobs:
analysis:
name: Scorecard analysis
runs-on: ubuntu-latest
permissions:
# Needed for Code scanning upload
security-events: write
# Needed for GitHub OIDC token if publish_results is true
id-token: write
steps:
- name: "Checkout code"
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: "Run analysis"
uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.4.3
with:
results_file: results.sarif
results_format: sarif
# Publish results to OpenSSF REST API for easy access by consumers.
# - Allows the repository to include the Scorecard badge.
# - See https://github.com/ossf/scorecard-action#publishing-results.
publish_results: true
# Upload the results as artifacts (optional). Commenting out will disable
# uploads of run results in SARIF format to the repository Actions tab.
# https://docs.github.com/en/actions/advanced-guides/storing-workflow-data-as-artifacts
- name: "Upload artifact"
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: SARIF file
path: results.sarif
retention-days: 5
# Upload the results to GitHub's code scanning dashboard (optional).
# Commenting out will disable upload of results to your repo's Code Scanning dashboard
- name: "Upload to code-scanning"
uses: github/codeql-action/upload-sarif@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
with:
sarif_file: results.sarif

View File

@@ -19,20 +19,17 @@ on:
- 'scripts/build/**'
- '.github/workflows/scripts_tests.yml'
permissions:
contents: read
jobs:
scripts-tests:
name: Scripts tests
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
os: [ubuntu-24.04]
python-version: [3.8, 3.9, '3.10', '3.11', '3.12']
os: [ubuntu-20.04]
steps:
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -45,22 +42,26 @@ jobs:
run: |
git config --global user.email "actions@zephyrproject.org"
git config --global user.name "Github Actions"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
git log --graph --oneline HEAD...${PR_HEAD}
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
- name: cache-pip-linux
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: install-packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
pip3 install -r scripts/requirements-base.txt -r scripts/requirements-build-test.txt
- name: Run pytest
env:

View File

@@ -2,13 +2,11 @@ name: Stale Workflow Queue Cleanup
on:
workflow_dispatch:
branches: [main]
schedule:
# everyday at 15:00
- cron: '0 15 * * *'
permissions:
contents: read
concurrency:
group: stale-workflow-queue-cleanup
cancel-in-progress: true
@@ -16,14 +14,11 @@ concurrency:
jobs:
cleanup:
name: Cleanup
runs-on: ubuntu-24.04
if: github.ref == 'refs/heads/main'
permissions:
actions: write # to delete stale workflow runs
runs-on: ubuntu-22.04
steps:
- name: Delete stale queued workflow runs
uses: MajorScruffy/delete-old-workflow-runs@78b5af714fefaefdf74862181c467b061782719e # v0.3.0
uses: MajorScruffy/delete-old-workflow-runs@v0.3.0
with:
repository: ${{ github.repository }}
# Remove any workflow runs in "queued" state for more than 1 day

View File

@@ -3,20 +3,13 @@ on:
schedule:
- cron: "16 00 * * *"
permissions:
contents: read
jobs:
stale:
name: Find Stale issues and PRs
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
if: github.repository == 'zephyrproject-rtos/zephyr'
permissions:
pull-requests: write # to comment on stale pull requests
issues: write # to comment on stale issues
steps:
- uses: actions/stale@997185467fa4f803885201cee163a9f38240193d # v10.1.1
- uses: actions/stale@v8
with:
stale-pr-message: 'This pull request has been marked as stale because it has been open (more
than) 60 days with no activity. Remove the stale label or add a comment saying that you

View File

@@ -6,28 +6,13 @@ on:
- main
- v*-branch
types: [closed]
permissions:
contents: read
jobs:
record_merged:
if: github.event.pull_request.merged == true && github.repository == 'zephyrproject-rtos/zephyr'
runs-on: ubuntu-24.04
runs-on: ubuntu-22.04
steps:
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
uses: actions/checkout@v4
- name: PR event
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -35,4 +20,5 @@ jobs:
ELASTICSEARCH_SERVER: "https://elasticsearch.zephyrproject.io:443"
PR_STAT_ES_INDEX: ${{ vars.PR_STAT_ES_INDEX }}
run: |
pip3 install pygithub elasticsearch
python3 ./scripts/ci/stats/merged_prs.py --pull-request ${{ github.event.pull_request.number }} --repo ${{ github.repository }}

View File

@@ -1,64 +0,0 @@
name: Publish Twister Test Results
on:
workflow_run:
workflows: ["Run tests with twister"]
branches:
- main
types:
- completed
permissions:
contents: read
jobs:
upload-to-elasticsearch:
if: |
github.repository == 'zephyrproject-rtos/zephyr' &&
github.event.workflow_run.event != 'pull_request'
env:
ELASTICSEARCH_KEY: ${{ secrets.ELASTICSEARCH_KEY }}
ELASTICSEARCH_SERVER: "https://elasticsearch.zephyrproject.io:443"
runs-on: ubuntu-24.04
steps:
# Needed for elasticearch and upload script
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Download Artifacts
id: download-artifacts
uses: dawidd6/action-download-artifact@0bd50d53a6d7fb5cb921e607957e9cc12b4ce392 # v12
with:
path: artifacts
workflow: twister.yml
run_id: ${{ github.event.workflow_run.id }}
if_no_artifact_found: ignore
- name: Upload to elasticsearch
if: steps.download-artifacts.outputs.found_artifact == 'true'
run: |
# set run date on upload to get consistent and unified data across the matrix.
run_date=`date --iso-8601=minutes`
if [ "${{github.event.workflow_run.event}}" = "push" ]; then
python3 ./scripts/ci/upload_test_results_es.py -r ${run_date} \
--run-attempt ${{github.run_attempt}} \
--run-branch ${{github.ref_name}} \
--index zephyr-main-ci-push-1 artifacts/*/*/twister.json
elif [ "${{github.event.workflow_run.event}}" = "schedule" ]; then
python3 ./scripts/ci/upload_test_results_es.py -r ${run_date} \
--run-attempt ${{github.run_attempt}} \
--run-branch ${{github.ref_name}} \
--index zephyr-main-ci-weekly-1 artifacts/*/*/twister.json
fi

View File

@@ -6,17 +6,14 @@ on:
- main
- v*-branch
- collab-*
pull_request:
pull_request_target:
branches:
- main
- v*-branch
- collab-*
schedule:
# Run at 02:00 UTC on every Sunday
- cron: '0 2 * * 0'
permissions:
contents: read
# Run at 03:00 UTC on every Sunday
- cron: '0 3 * * 0'
concurrency:
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.head_ref || github.ref }}
@@ -25,66 +22,67 @@ concurrency:
jobs:
twister-build-prep:
if: github.repository_owner == 'zephyrproject-rtos'
runs-on: ubuntu-24.04
runs-on: zephyr-runner-linux-x64-4xlarge
container:
image: ghcr.io/zephyrproject-rtos/ci:v0.26.7
options: '--entrypoint /bin/bash'
volumes:
- /repo-cache/zephyrproject:/github/cache/zephyrproject
outputs:
subset: ${{ steps.output-services.outputs.subset }}
size: ${{ steps.output-services.outputs.size }}
fullrun: ${{ steps.output-services.outputs.fullrun }}
env:
MATRIX_SIZE: 10
PUSH_MATRIX_SIZE: 20
WEEKLY_MATRIX_SIZE: 200
PUSH_MATRIX_SIZE: 15
DAILY_MATRIX_SIZE: 80
BSIM_OUT_PATH: /opt/bsim/
BSIM_COMPONENTS_PATH: /opt/bsim/components
TESTS_PER_BUILDER: 900
TESTS_PER_BUILDER: 700
COMMIT_RANGE: ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}
BASE_REF: ${{ github.base_ref }}
steps:
- name: Apply container owner mismatch workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
# match the container user UID because of the way GitHub
# Actions runner is implemented. Remove this workaround when
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Clone cached Zephyr repository
if: github.event_name == 'pull_request_target'
continue-on-error: true
run: |
git clone --shared /github/cache/zephyrproject/zephyr .
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
if: github.event_name == 'pull_request'
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
if: github.event_name == 'pull_request_target'
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
path: zephyr
persist-credentials: false
- name: Set up Python
if: github.event_name == 'pull_request'
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: install-packages
working-directory: zephyr
if: github.event_name == 'pull_request'
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Setup Zephyr project
if: github.event_name == 'pull_request'
uses: zephyrproject-rtos/action-zephyr-setup@360ff9b36e58499d9eb28015cdcde7ca03a5b04d # v1.0.12
with:
app-path: zephyr
enable-ccache: false
- name: Environment Setup
working-directory: zephyr
if: github.event_name == 'pull_request'
if: github.event_name == 'pull_request_target'
run: |
git config --global user.email "bot@zephyrproject.org"
git config --global user.name "Zephyr Bot"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
git log --pretty=oneline | head -n 10
west init -l . || true
west config manifest.group-filter -- +ci,+optional
west config --global update.narrow true
west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /github/cache/zephyrproject)
west forall -c 'git reset --hard HEAD'
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Generate Test Plan with Twister
working-directory: zephyr
if: github.event_name == 'pull_request'
if: github.event_name == 'pull_request_target'
id: test-plan
run: |
export ZEPHYR_BASE=${PWD}
@@ -100,62 +98,49 @@ jobs:
- name: Determine matrix size
id: output-services
run: |
if [ "${{github.event_name}}" = "push" ]; then
subset="[$(seq -s',' 1 ${PUSH_MATRIX_SIZE})]"
size=${MATRIX_SIZE}
elif [ "${{github.event_name}}" = "pull_request" ]; then
if [ "${{github.event_name}}" = "pull_request_target" ]; then
if [ -n "${TWISTER_NODES}" ]; then
subset="[$(seq -s',' 1 ${TWISTER_NODES})]"
else
subset="[$(seq -s',' 1 ${MATRIX_SIZE})]"
fi
size=${TWISTER_NODES}
elif [ "${{github.event_name}}" = "push" ]; then
subset="[$(seq -s',' 1 ${PUSH_MATRIX_SIZE})]"
size=${MATRIX_SIZE}
elif [ "${{github.event_name}}" = "schedule" -a "${{github.repository}}" = "zephyrproject-rtos/zephyr" ]; then
subset="[$(seq -s',' 1 ${WEEKLY_MATRIX_SIZE})]"
size=${WEEKLY_MATRIX_SIZE}
subset="[$(seq -s',' 1 ${DAILY_MATRIX_SIZE})]"
size=${DAILY_MATRIX_SIZE}
else
size=0
fi
echo "subset=${subset}" >> $GITHUB_OUTPUT
echo "size=${size}" >> $GITHUB_OUTPUT
echo "fullrun=${TWISTER_FULL}" >> $GITHUB_OUTPUT
twister-build:
runs-on:
group: zephyr-runner-v2-linux-x64-4xlarge
runs-on: zephyr-runner-linux-x64-4xlarge
needs: twister-build-prep
if: needs.twister-build-prep.outputs.size != 0
container:
image: ghcr.io/zephyrproject-rtos/ci-repo-cache:v0.28.7.20251127
image: ghcr.io/zephyrproject-rtos/ci:v0.26.7
options: '--entrypoint /bin/bash'
volumes:
- /repo-cache/zephyrproject:/github/cache/zephyrproject
strategy:
fail-fast: false
matrix:
subset: ${{fromJSON(needs.twister-build-prep.outputs.subset)}}
timeout-minutes: 1440
env:
CCACHE_DIR: /node-cache/ccache-zephyr
CCACHE_REMOTE_STORAGE: "redis://cache-*.keydb-cache.svc.cluster.local|shards=1,2,3"
CCACHE_REMOTE_ONLY: "true"
# `--specs` is ignored because ccache is unable to resolve the toolchain specs file path.
CCACHE_IGNOREOPTIONS: '-specs=* --specs=*'
BSIM_OUT_PATH: /opt/bsim/
BSIM_COMPONENTS_PATH: /opt/bsim/components
TWISTER_COMMON: ' --test-config tests/test_config_ci.yaml --force-color --inline-logs -v -N -M --retry-failed 3 --timeout-multiplier 2 '
WEEKLY_OPTIONS: ' -M --build-only --all --show-footprint --report-filtered -j 32'
PR_OPTIONS: ' --clobber-output --integration -j 16'
PUSH_OPTIONS: ' --clobber-output -M --show-footprint --report-filtered -j 16'
TWISTER_COMMON: ' --force-color --inline-logs -v -N -M --retry-failed 3 '
DAILY_OPTIONS: ' -M --build-only --all --show-footprint'
PR_OPTIONS: ' --clobber-output --integration'
PUSH_OPTIONS: ' --clobber-output -M --show-footprint'
COMMIT_RANGE: ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}
BASE_REF: ${{ github.base_ref }}
LLVM_TOOLCHAIN_PATH: /usr/lib/llvm-20
steps:
- name: Print cloud service information
run: |
echo "ZEPHYR_RUNNER_CLOUD_PROVIDER = ${ZEPHYR_RUNNER_CLOUD_PROVIDER}"
echo "ZEPHYR_RUNNER_CLOUD_NODE = ${ZEPHYR_RUNNER_CLOUD_NODE}"
echo "ZEPHYR_RUNNER_CLOUD_POD = ${ZEPHYR_RUNNER_CLOUD_POD}"
- name: Apply container owner mismatch workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
@@ -167,11 +152,11 @@ jobs:
- name: Clone cached Zephyr repository
continue-on-error: true
run: |
git clone --shared /repo-cache/zephyrproject/zephyr .
git clone --shared /github/cache/zephyrproject/zephyr .
git remote set-url origin ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
@@ -179,62 +164,67 @@ jobs:
- name: Environment Setup
run: |
if [ "${{github.event_name}}" = "pull_request" ]; then
if [ "${{github.event_name}}" = "pull_request_target" ]; then
git config --global user.email "bot@zephyrproject.org"
git config --global user.name "Zephyr Builder"
rm -fr ".git/rebase-apply"
rm -fr ".git/rebase-merge"
git rebase origin/${BASE_REF}
git clean -f -d
git log --pretty=oneline | head -n 10
fi
echo "$HOME/.local/bin" >> $GITHUB_PATH
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
west init -l . || true
west config manifest.group-filter -- +ci,+optional,+testing
west config manifest.group-filter -- +ci,+optional
west config --global update.narrow true
west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /repo-cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /repo-cache/zephyrproject)
west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /github/cache/zephyrproject)
west forall -c 'git reset --hard HEAD'
# Hotfix until we have kitware ninja in the docker image.
# Needed for full functionality of the job server functionality in twister which only works with
# kitware supplied ninja version.
wget -c https://github.com/Kitware/ninja/releases/download/v1.11.1.g95dee.kitware.jobserver-1/ninja-1.11.1.g95dee.kitware.jobserver-1_x86_64-linux-gnu.tar.gz -O - | tar xz --strip-components=1
sudo cp ninja /usr/local/bin
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Check Environment
run: |
cmake --version
gcc --version
cargo --version
rustup target list --installed
ls -la
echo "github.ref: ${{ github.ref }}"
echo "github.base_ref: ${{ github.base_ref }}"
echo "github.ref_name: ${{ github.ref_name }}"
- name: Install Python packages
- name: Prepare ccache timestamp/data
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
west packages pip --install
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
string(REPLACE "/" "_" repo ${{github.repository}})
string(REPLACE "-" "_" repo2 ${repo})
file(APPEND $ENV{GITHUB_OUTPUT} "repo=${repo2}\n")
- name: Set up ccache
run: |
mkdir -p ${CCACHE_DIR}
ccache -M 10G
ccache -p
ccache -z -s -vv
- name: use cache
id: cache-ccache
uses: zephyrproject-rtos/action-s3-cache@v1.2.0
continue-on-error: true
with:
key: ${{ steps.ccache_cache_timestamp.outputs.repo }}-${{ github.ref_name }}-${{github.event_name}}-${{ matrix.subset }}-ccache
path: /github/home/.cache/ccache
aws-s3-bucket: ccache.zephyrproject.org
aws-access-key-id: ${{ vars.AWS_CCACHE_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_CCACHE_SECRET_ACCESS_KEY }}
aws-region: us-east-2
- name: Update BabbleSim to manifest revision
- name: ccache stats initial
run: |
export BSIM_VERSION=$( west list bsim -f {revision} )
echo "Manifest points to bsim sha $BSIM_VERSION"
cd /opt/bsim_west/bsim
git fetch -n origin ${BSIM_VERSION}
git -c advice.detachedHead=false checkout ${BSIM_VERSION}
west update
make everything -s -j 8
mkdir -p /github/home/.cache
test -d github/home/.cache/ccache && rm -rf /github/home/.cache/ccache && mv github/home/.cache/ccache /github/home/.cache/ccache
ccache -M 10G -s
- if: github.event_name == 'push'
name: Run Tests with Twister (Push)
id: run_twister
run: |
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
@@ -246,9 +236,8 @@ jobs:
fi
fi
- if: github.event_name == 'pull_request'
- if: github.event_name == 'pull_request_target'
name: Run Tests with Twister (Pull Request)
id: run_twister_pr
run: |
rm -f testplan.json
export ZEPHYR_BASE=${PWD}
@@ -263,27 +252,26 @@ jobs:
fi
- if: github.event_name == 'schedule'
name: Run Tests with Twister (Weekly)
id: run_twister_sched
name: Run Tests with Twister (Daily)
run: |
export ZEPHYR_BASE=${PWD}
export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
./scripts/twister --subset ${{matrix.subset}}/${{ strategy.job-total }} ${TWISTER_COMMON} ${WEEKLY_OPTIONS}
./scripts/twister --subset ${{matrix.subset}}/${{ strategy.job-total }} ${TWISTER_COMMON} ${DAILY_OPTIONS}
if [ "${{matrix.subset}}" = "1" ]; then
./scripts/zephyr_module.py --twister-out module_tests.args
if [ -s module_tests.args ]; then
./scripts/twister +module_tests.args --outdir module_tests ${TWISTER_COMMON} ${WEEKLY_OPTIONS}
./scripts/twister +module_tests.args --outdir module_tests ${TWISTER_COMMON} ${DAILY_OPTIONS}
fi
fi
- name: Print ccache stats
if: always()
- name: ccache stats post
run: |
ccache -s -vv
ccache -p
ccache -s
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
name: Unit Test Results (Subset ${{ matrix.subset }})
if-no-files-found: ignore
@@ -301,11 +289,11 @@ jobs:
timestamp="$(date)"
version="$(git describe --abbrev=12 --always)"
echo -e "# Generated at $timestamp ($version)\n" > $FREEZE_FILE
pip freeze | tee -a $FREEZE_FILE
pip3 freeze | tee -a $FREEZE_FILE
- if: matrix.subset == 1 && github.event_name == 'push'
name: Upload the list of Python packages
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
name: Frozen PIP package set
path: |
@@ -313,84 +301,63 @@ jobs:
twister-test-results:
name: "Publish Unit Tests Results"
needs:
- twister-build
runs-on: ubuntu-24.04
permissions:
checks: write # to create the check run entry with Twister test results
env:
ELASTICSEARCH_KEY: ${{ secrets.ELASTICSEARCH_KEY }}
ELASTICSEARCH_SERVER: "https://elasticsearch.zephyrproject.io:443"
needs: twister-build
runs-on: ubuntu-22.04
# the build-and-test job might be skipped, we don't need to run this job then
if: success() || failure()
steps:
- name: Check out source code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
# Needed for opensearch and upload script
- if: github.event_name == 'push' || github.event_name == 'schedule'
name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
with:
python-version: 3.12
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
- name: Download Artifacts
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
uses: actions/download-artifact@v4
with:
path: artifacts
- if: github.event_name == 'push' || github.event_name == 'schedule'
name: Upload to opensearch
run: |
pip3 install elasticsearch
# set run date on upload to get consistent and unified data across the matrix.
run_date=`date --iso-8601=minutes`
if [ "${{github.event_name}}" = "push" ]; then
python3 ./scripts/ci/upload_test_results_es.py -r ${run_date} \
--index zephyr-main-ci-push-1 artifacts/*/*/twister.json
elif [ "${{github.event_name}}" = "schedule" ]; then
python3 ./scripts/ci/upload_test_results_es.py -r ${run_date} \
--index zephyr-main-ci-weekly-1 artifacts/*/*/twister.json
fi
- name: Merge Test Results
run: |
junitparser merge --glob 'artifacts/*/twister.xml' 'artifacts/*/*/twister.xml' junit.xml
pip3 install junitparser junit2html
junitparser merge artifacts/*/*/twister.xml junit.xml
junit2html junit.xml junit.html
- name: Upload Unit Test Results
- name: Upload Unit Test Results in HTML
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
uses: actions/upload-artifact@v4
with:
name: Unit Test Results
name: HTML Unit Test Results
if-no-files-found: ignore
path: |
junit.html
junit.xml
- name: Upload test results to Codecov
if: ${{ !cancelled() && (github.event_name == 'push') }}
uses: codecov/test-results-action@0fa95f0e1eeaafde2c782583b36b28ad0d8c77d3 # v1.2.1
with:
token: ${{ secrets.CODECOV_TOKEN }}
- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@27d65e188ec43221b20d26de30f4892fad91df2f # v2.22.0
uses: EnricoMi/publish-unit-test-result-action@v2
with:
check_name: Unit Test Results
files: "**/twister.xml"
comment_mode: off
- name: Analyze Twister Reports
if: needs.twister-build.result == 'failure'
run: |
./scripts/ci/twister_report_analyzer.py artifacts/*/*/twister.json --long-summary --platforms --output-md errors.md
if [[ -s "errors.md" ]]; then
echo '### Error Summary! 🚀' >> $GITHUB_STEP_SUMMARY
cat errors.md >> $GITHUB_STEP_SUMMARY
fi
- name: Upload Twister Analysis Results
if: needs.twister-build.result == 'failure'
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: Twister Analysis Results
if-no-files-found: ignore
path: |
twister_report_summary.json
twister-status-check:
if: always()
name: "Check Twister Status"

View File

@@ -8,13 +8,11 @@ on:
branches:
- main
- v*-branch
- collab-*
paths:
- 'scripts/pylib/**'
- 'scripts/twister'
- 'scripts/tests/twister/**'
- '.github/workflows/twister_tests.yml'
- 'scripts/schemas/twister/'
pull_request:
branches:
- main
@@ -24,10 +22,6 @@ on:
- 'scripts/twister'
- 'scripts/tests/twister/**'
- '.github/workflows/twister_tests.yml'
- 'scripts/schemas/twister/'
permissions:
contents: read
jobs:
twister-tests:
@@ -35,23 +29,26 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
os: [ubuntu-24.04]
python-version: [3.8, 3.9, '3.10', '3.11', '3.12']
os: [ubuntu-22.04]
steps:
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
- name: cache-pip-linux
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: install-packages
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
pip3 install -r scripts/requirements-base.txt -r scripts/requirements-build-test.txt -r scripts/requirements-run-test.txt
- name: Run pytest for twisterlib
env:
ZEPHYR_BASE: ./

View File

@@ -7,60 +7,85 @@ on:
pull_request:
branches:
- main
- collab-*
- v*-branch
paths:
- 'scripts/pylib/twister/**'
- 'scripts/twister'
- 'scripts/tests/twister_blackbox/**'
- '.github/workflows/twister_tests_blackbox.yml'
permissions:
contents: read
env:
PYTHONIOENCODING: utf-8
jobs:
twister-tests:
name: Twister Black Box Tests
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
fail-fast: false
runs-on: ubuntu-24.04
python-version: [3.8, 3.9, '3.10', '3.11', '3.12']
os: [ubuntu-22.04]
container:
image: ghcr.io/zephyrproject-rtos/ci:v0.26.7
steps:
- name: Apply Container Owner Mismatch Workaround
run: |
# FIXME: The owner UID of the GITHUB_WORKSPACE directory may not
# match the container user UID because of the way GitHub
# Actions runner is implemented. Remove this workaround when
# GitHub comes up with a fundamental fix for this problem.
git config --global --add safe.directory ${GITHUB_WORKSPACE}
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: zephyr
fetch-depth: 0
uses: actions/checkout@v4
- name: Environment Setup
run: |
echo "$HOME/.local/bin" >> $GITHUB_PATH
west init -l . || true
west config --global update.narrow true
west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || west update --path-cache /github/cache/zephyrproject 2>&1 1> west.update.log || ( rm -rf ../modules ../bootloader ../tools && west update --path-cache /github/cache/zephyrproject)
west forall -c 'git reset --hard HEAD'
echo "ZEPHYR_SDK_INSTALL_DIR=/opt/toolchains/zephyr-sdk-$( cat SDK_VERSION )" >> $GITHUB_ENV
- name: Set Up Python ${{ matrix.python-version }}
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Setup Zephyr project
uses: zephyrproject-rtos/action-zephyr-setup@360ff9b36e58499d9eb28015cdcde7ca03a5b04d # v1.0.12
with:
app-path: zephyr
toolchains: 'arm-zephyr-eabi:riscv64-zephyr-elf:x86_64-zephyr-elf'
enable-ccache: false
west-group-filter: -tools,-bootloader,-babblesim,-hal
west-project-filter: -nrf_hw_models,+cmsis,+hal_xtensa,+cmsis_6
- name: Go Into Venv
shell: bash
run: |
python3 -m pip install --user virtualenv
python3 -m venv env
source env/bin/activate
echo "$(which python)"
- name: Install Packages
run: |
python3 -m pip install -U -r scripts/requirements-base.txt -r scripts/requirements-build-test.txt -r scripts/requirements-run-test.txt
- name: Run Pytest For Twister Black Box Tests
working-directory: zephyr
shell: bash
env:
ZEPHYR_BASE: ./
ZEPHYR_TOOLCHAIN_VARIANT: zephyr
run: |
export ZEPHYR_SDK_INSTALL_DIR=${{ github.workspace }}/zephyr-sdk
sudo apt-get install -y lcov
echo "Run twister tests"
source zephyr-env.sh
PYTHONPATH="./scripts/tests" pytest ./scripts/tests/twister_blackbox/
PYTHONPATH="./scripts/tests" pytest ./scripts/tests/twister_blackbox
- name: Upload Unit Test Results
if: success() || failure()
uses: actions/upload-artifact@v2
with:
name: Black Box Test Results (Python ${{ matrix.python-version }})
path: |
twister-out*/twister.log
twister-out*/twister.json
twister-out*/testplan.log
retention-days: 14
- name: Clear Workspace
if: success() || failure()
run: |
rm -rf twister-out*/

View File

@@ -8,7 +8,6 @@ on:
branches:
- main
- v*-branch
- collab-*
paths:
- 'scripts/west-commands.yml'
- 'scripts/west_commands/**'
@@ -17,43 +16,64 @@ on:
branches:
- main
- v*-branch
- collab-*
paths:
- 'scripts/west-commands.yml'
- 'scripts/west_commands/**'
- '.github/workflows/west_cmds.yml'
permissions:
contents: read
jobs:
west-commands:
west-commnads:
name: West Command Tests
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']
os: [ubuntu-22.04, macos-14, windows-2022]
python-version: [3.8, 3.9, '3.10', '3.11', '3.12']
os: [ubuntu-22.04, macos-11, windows-2022]
exclude:
- os: macos-11
python-version: 3.6
- os: windows-2022
python-version: 3.6
steps:
- name: checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: scripts/requirements-actions.txt
- name: Install Python packages
- name: cache-pip-linux
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: cache-pip-mac
if: startsWith(runner.os, 'macOS')
uses: actions/cache@v4
with:
path: ~/Library/Caches/pip
# Trailing '-' was just to get a different cache name
key: ${{ runner.os }}-pip-${{ matrix.python-version }}-
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}-
- name: cache-pip-win
if: startsWith(runner.os, 'Windows')
uses: actions/cache@v4
with:
path: ~\AppData\Local\pip\Cache
key: ${{ runner.os }}-pip-${{ matrix.python-version }}
restore-keys: |
${{ runner.os }}-pip-${{ matrix.python-version }}
- name: install pytest
run: |
pip install -r scripts/requirements-actions.txt --require-hashes
pip3 install wheel
pip3 install pytest west pyelftools canopen natsort progress mypy intelhex psutil ply pyserial
- name: run pytest-win
if: runner.os == 'Windows'
run: |
python ./scripts/west_commands/run_tests.py
- name: run pytest-mac-linux
if: runner.os != 'Windows'
run: |

41
.gitignore vendored
View File

@@ -1,6 +1,3 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-FileCopyrightText: Copyright The Zephyr Project Contributors
*.o
*.a
*.d
@@ -10,14 +7,11 @@
*.swp
*.swo
*~
# Emacs
.\#*
\#*\#
build*/
!doc/build/
!scripts/build
!share/sysbuild/build
!tests/drivers/build_all
!scripts/pylib/build_helpers
cscope.*
@@ -33,8 +27,6 @@ outdir
outdir-*
scripts/basic/fixdep
scripts/gen_idt/gen_idt
coverage-report
doc-coverage.info
doc/_build
doc/doxygen
doc/xml
@@ -47,7 +39,6 @@ sanity-out*
twister-out*
bsim_out
bsim_bt_out
myresults.xml
tests/RunResults.xml
scripts/grub
doc/reference/kconfig/*.rst
@@ -59,25 +50,11 @@ doc/doc.warnings
hide-defaults-note
venv
.venv
.envrc
.DS_Store
.clangd
new.info
# Cargo drops lock files in projects to capture resolved dependencies.
# We don't want to record these.
Cargo.lock
# Cargo encourages a .cargo/config.toml file to symlink to a generated file. Don't save these.
.cargo/
# Normal west builds will place the Rust target directory under the build directory. However,
# sometimes IDEs and such will litter these target directories as well.
target/
# CI output
compliance.xml
dts_linter.patch
_error.types
# Tag files
@@ -90,13 +67,10 @@ tags
.idea
# from check_compliance.py
# zephyr-keep-sorted-start
BinaryFiles.txt
BoardYml.txt
Checkpatch.txt
ClangFormat.txt
DevicetreeBindings.txt
DevicetreeLinting.txt
GitDiffCheck.txt
Gitlint.txt
Identity.txt
@@ -106,21 +80,8 @@ KconfigBasic.txt
KconfigBasicNoModules.txt
KconfigHWMv2.txt
KeepSorted.txt
LicenseAndCopyrightCheck.txt
MaintainersFormat.txt
ModulesMaintainers.txt
Nits.txt
Pylint.txt
PythonCompat.txt
Ruff.txt
SphinxLint.txt
SysbuildKconfig.txt
SysbuildKconfigBasic.txt
SysbuildKconfigBasicNoModules.txt
TextEncoding.txt
YAMLLint.txt
ZephyrModuleFile.txt
# zephyr-keep-sorted-stop
# Node dependecies
node_modules

View File

@@ -1,7 +1,6 @@
# All these sections are optional, edit this file as you like.
# Zephyr-specific defaults are located in scripts/gitlint/zephyr_commit_rules.py
[general]
regex-style-search=true
ignore=title-trailing-punctuation, T3, title-max-length, T1, body-hard-tab, B3, B1
# verbosity should be a value between 1 and 3, the commandline -v flags take precedence over this
verbosity = 3
@@ -27,7 +26,7 @@ extra-path=scripts/gitlint
# max-line-count=200
[title-starts-with-subsystem]
regex = ^(?!subsys:)(?!treewide:)(([^:]+):)(\s([^:]+):)*\s(.+)$
regex = ^(?!subsys:)(([^:]+):)(\s([^:]+):)*\s(.+)$
[title-must-not-contain-word]
# Comma-separated list of words that should not occur in the title. Matching is case
@@ -60,7 +59,3 @@ ignore-merge-commits=false
# By specifying this rule, developers can only change the file when they explicitly reference
# it in the commit message.
#files=gitlint/rules.py,README.md
[ignore-by-author-name]
regex=^dependabot\[bot\]$
ignore=all

View File

@@ -1,14 +1,14 @@
Alexandr Kolosov <rikorsev@gmail.com>
Alexandre d'Alton <alexandre.dalton@intel.com>
Amir Kaplan <amir.kaplan@intel.com>
Anas Nashif <anas.nashif@intel.com>
Amir Kaplan <amir.kaplan@intel.com> <amir.kaplan@intel.com>
Anas Nashif <anas.nashif@intel.com> <anas.nashif@intel.com>
Andrzej Kuroś <andrzej.kuros@nordicsemi.no>
Anthony Smigielski <thebasti0ncode@gmail.com>
Armand Ciejak <armand@riedonetworks.com> <armandciejak@users.noreply.github.com>
Aska Wu <aska.wu@linaro.org>
Bit Pathe <bitpathe@gmail.com>
Bit Pathe <bitpathe@gmail.com> <bitpathe@gmail.com>
Bjarki Arge Andreasen <baa@trackunit.com>
Carles Cufi <carles.cufi@nordicsemi.no>
Carles Cufi <carles.cufi@nordicsemi.no> <carles.cufi@nordicsemi.no>
chao an <anchao@xiaomi.com>
Charles E. Youse <charles.youse@intel.com>
Chen Xingyu <hi@xingrz.me>
@@ -16,32 +16,32 @@ Christoph Schnetzler <christoph.schnetzler@husqvarnagroup.com>
Christoph Schramm <schramm@makaio.com>
Christopher Friedt <cfriedt@meta.com>
Christopher Friedt <cfriedt@meta.com> <cfriedt@fb.com>
Chuck Jordan <cjordan@synopsys.com>
Chuck Jordan <cjordan@synopsys.com> <cjordan@synopsys.com>
Chunlin Han <chunlin.han@linaro.org> <chunlin.han@acer.com>
David B. Kinder <david.b.kinder@intel.com>
David Komel <a8961713@gmail.com>
David Leach <david.leach@nxp.com>
Dirk Brandewie <dirk.j.brandewie@intel.com>
Douglas Su <d0u9.su@outlook.com>
Dirk Brandewie <dirk.j.brandewie@intel.com> <dirk.j.brandewie@intel.com>
Douglas Su <d0u9.su@outlook.com> <d0u9.su@outlook.com>
Enjia Mai <enjia.mai@intel.com>
Enjia Mai <enjia.mai@intel.com>
Evan Couzens <evanx.couzens@intel.com>
Enjia Mai <enjia.mai@intel.com> <enjiax.mai@intel.com>
Evan Couzens <evanx.couzens@intel.com> <evanx.couzens@intel.com>
Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
Evgeniy Paltsev <PaltsevEvgeniy@gmail.com> <Eugeniy.Paltsev@synopsys.com>
Felipe Neves <ryukokki.felipe@gmail.com>
Felipe Neves <ryukokki.felipe@gmail.com> <ryukokki.felipe@gmail.com>
Findlay Feng <i@fengch.me>
Flavio Arieta Netto <flavio@exati.com.br>
Francois Ramu <francois.ramu@st.com>
Gerardo Aceves <gerardo.aceves@intel.com>
Gerardo Aceves <gerardo.aceves@intel.com> <gerardo.aceves@intel.com>
Gregory Shue <gregory.shue@legrand.com>
Gregory Shue <gregory.shue@legrand.com> <gregory.shue@legrand.us>
HaiLong Yang <cameledyang@pm.me>
James Johnson <james.johnson672@t-mobile.com>
Jarno Lämsä <jarno.lamsa@nordicsemi.no>
Jędrzej Ciupis <jedrzej.ciupis@nordicsemi.no>
Jeremie Garcia <jeremie.garcia@intel.com>
Jeremie Garcia <jeremie.garcia@intel.com> <jeremie.garcia@intel.com>
Jim Benjamin Luther <jilu@oticon.com>
Johan Kruger <johan.kruger@windriver.com>
Johan Kruger <johan.kruger@windriver.com> <johan.kruger@windriver.com>
Johann Fischer <j.fischer@phytec.de>
Jørgen Kvalvaag <jorgen.kvalvaag@nordicsemi.no>
Juan Manuel Cruz Alcaraz <juan.m.cruz.alcaraz@intel.com>
@@ -51,17 +51,16 @@ Jun Li <jun.r.li@intel.com>
Justin Watson <jwatson5@gmail.com>
Kamil Sroka <kamil.sroka@nordicsemi.no>
Katarzyna Giądła <katarzyna.giadla@nordicsemi.no>
Keren Siman-Tov <keren.siman-tov@intel.com>
Keren Siman-Tov <keren.siman-tov@intel.com> <keren.siman-tov@intel.com>
Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Kuo-Lang Tseng <kuo-lang.tseng@intel.com>
Lei Liu <lei.a.liu@intel.com>
Leona Cook <leonax.cook@intel.com>
Kuo-Lang Tseng <kuo-lang.tseng@intel.com> <kuo-lang.tseng@intel.com>
Lei Liu <lei.a.liu@intel.com> <lei.a.liu@intel.com>
Leona Cook <leonax.cook@intel.com> <leonax.cook@intel.com>
Leona Cook <leonax.cook@intel.com> <lsc@hackeress.com>
Lixin Guo <lixinx.guo@intel.com>
Łukasz Mazur <lukasz.mazur@hidglobal.com>
Manuel Argüelles <manuel.arguelles@nxp.com>
Manuel Argüelles <manuel.arguelles@nxp.com> <manuel.arguelles@coredumplabs.com>
Manuel Argüelles <manuel.arguelles@nxp.com> <marguelles.dev@gmail.com>
Marc Herbert <marc.herbert@intel.com> <46978960+marc-hb@users.noreply.github.com>
Marin Jurjević <marin.jurjevic@hotmail.com>
Mariusz Ryndzionek <mariusz.ryndzionek@firmwave.com>
@@ -72,14 +71,14 @@ Martí Bolívar <marti.bolivar@nordicsemi.no> <marti.bolivar@linaro.org>
Martí Bolívar <marti.bolivar@nordicsemi.no> <marti.f.bolivar@gmail.com>
Martí Bolívar <marti.bolivar@nordicsemi.no> <marti@foundries.io>
Martí Bolívar <marti.bolivar@nordicsemi.no> <marti@opensourcefoundries.com>
Martin Jäger <martin@libre.solar> <17674105+martinjaeger@users.noreply.github.com>
Martin Jäger <martin@libre.solar> <17674105+martinjaeger@users.noreply.github.com>
Mateusz Hołenko <mholenko@antmicro.com>
Michael Rosen <michael.r.rosen@intel.com>
Michal Narajowski <michal.narajowski@codecoup.pl>
Mike Hirst <michael.hirst@windriver.com>
Mike Hirst <michael.hirst@windriver.com> <michael.hirst@windriver.com>
Ming Shao <ming.shao@intel.com>
Mohan Kumar Kumar <mohankm@fb.com>
Naga Raja Rao Tulasi <tulasi.r@tcs.com>
Naga Raja Rao Tulasi <tulasi.r@tcs.com> <tulasi.r@tcs.com>
Navin Sankar Velliangiri <navin@linumiz.com>
NingX Zhao <ningx.zhao@intel.com>
Nishikant Nayak <nishikantax.nayak@intel.com>
@@ -100,23 +99,21 @@ Radosław Koppel <radoslaw.koppel@nordicsemi.no> <r.koppel@k-el.com>
Raja D. Singh <rdsingh@iotwizards.com>
Ricardo Salveti <ricardo@opensourcefoundries.com>
Ricardo Salveti <ricardo@opensourcefoundries.com> <ricardo.salveti@linaro.org>
Ruud Derwig <Ruud.Derwig@synopsys.com>
Ruud Derwig <Ruud.Derwig@synopsys.com> <Ruud.Derwig@synopsys.com>
Saku Rautio <saku.rautio@nordicsemi.no>
Scott Worley <scott.worley@microchip.com>
Sean Nyekjaer <sean@geanix.com> <sean.nyekjaer@prevas.dk>
Sean Nyekjaer <sean@geanix.com> <sean@nyekjaer.dk>
Sharron Liu <sharron.liu@intel.com>
Shilpashree L C <shilpashree.lc@intel.com>
Shuang He <shuang.he@intel.com>
Shuang He <shuang.he@intel.com> <shuang.he@intel.com>
Sigvart Hovland <sigvart.hovland@nordicsemi.no>
Stéphane D'Alu <sdalu@sdalu.com>
Stine Åkredalen <stine.akredalen@nordicsemi.no>
Thomas Heeley <thomas.heeley@intel.com>
Thomas Heeley <thomas.heeley@intel.com> <thomas.heeley@intel.com>
Tim Sørensen <tims@demant.com>
Tim Sørensen <tims@demant.com> <tims@oticon.com>
Vinayak Kariappa Chettimada <vinayak.kariappa.chettimada@nordicsemi.no>
Vinayak Kariappa Chettimada <vinayak.kariappa.chettimada@nordicsemi.no> <vich@nordicsemi.no>
Vinayak Kariappa Chettimada <vinayak.kariappa.chettimada@nordicsemi.no> <vinayak.kariappa@gmail.com>
Vinayak Kariappa Chettimada <vinayak.kariappa.chettimada@nordicsemi.no> <vinayak.kariappa.chettimada@nordicsemi.no> <vich@nordicsemi.no> <vinayak.kariappa@gmail.com>
Xiaorui Hu <xiaorui.hu@linaro.org>
Yannis Damigos <giannis.damigos@gmail.com> <ydamigos@iccs.gr>
Yonattan Louise <yonattan.a.louise.mendoza@intel.com>

File diff suppressed because it is too large Load Diff

View File

@@ -1,30 +0,0 @@
# Copyright (c) 2024 Basalte bv
# SPDX-License-Identifier: Apache-2.0
extend = ".ruff-excludes.toml"
line-length = 100
target-version = "py310"
[lint]
select = [
# zephyr-keep-sorted-start
"B", # flake8-bugbear
"E", # pycodestyle
"F", # pyflakes
"I", # isort
"SIM", # flake8-simplify
"UP", # pyupgrade
"W", # pycodestyle warnings
# zephyr-keep-sorted-stop
]
ignore = [
# zephyr-keep-sorted-start
"SIM108", # Allow if-else blocks instead of forcing ternary operator
# zephyr-keep-sorted-stop
]
[format]
quote-style = "preserve"
line-ending = "lf"

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,497 @@
# Instead of the CODEOWNERS file, The Zephyr Project uses a custom format.
# See MAINTAINERS.yml for details.
# CODEOWNERS for autoreview assigning in github
# https://help.github.com/en/articles/about-code-owners#codeowners-syntax
# Order is important; for each modified file, the last matching
# pattern takes the most precedence.
# That is, with the last pattern being
# *.rst @nashif
# if only .rst files are being modified, only nashif is
# automatically requested for review, but you can manually
# add others as needed.
# Do not use wildcard on all source yet
#
# DO NOT EDIT THIS FILE.
# +++++++++++ NOTE ++++++++++++++++
#
# Please use the MAINTAINERS file to add yourself in an area or to add a new
# component or code. This file is going to be deprecated and currently only had
# entries that are not covered by the MAINTAINERS file.
/soc/arm/aspeed/ @aspeeddylan
/soc/atmel/ @nandojve
/soc/arm/bcm*/ @sbranden
/soc/arm/infineon_cat1/ @ifyall @npal-cy
/soc/arm/infineon_xmc/ @parthitce
/soc/arm/silabs_exx32/efm32pg1b/ @rdmeneze
/soc/arm/silabs_exx32/efr32mg21/ @l-alfred
/soc/arm/st_stm32/ @erwango
/soc/arm/st_stm32/*/power.c @FRASTM
/soc/arm/st_stm32/stm32mp1/ @arnopo
/soc/arm/st_stm32/stm32h7/*stm32h735* @benediktibk
/soc/arm/st_stm32/stm32l4/*stm32l451* @benediktibk
/soc/arm/ti_simplelink/cc13x2_cc26x2/ @bwitherspoon
/soc/arm/ti_simplelink/cc32xx/ @vanti
/soc/arm/ti_simplelink/msp432p4xx/ @Mani-Sadhasivam
/soc/arm/xilinx_zynq7000/ @ibirnbaum
/soc/arm/xilinx_zynqmp/ @stephanosio
/soc/arm/renesas_rcar/ @aaillet
/soc/riscv/openisa*/ @dleach02
/soc/riscv/riscv-privileged/andes_v5/ @cwshu @kevinwang821020 @jimmyzhe
/soc/riscv/riscv-privileged/neorv32/ @henrikbrixandersen
/soc/riscv/riscv-privileged/gd32vf103/ @soburi
/soc/riscv/riscv-privileged/niosv/ @sweeaun
/boards/arm/96b_argonkey/ @avisconti
/boards/arm/96b_avenger96/ @Mani-Sadhasivam
/boards/arm/96b_carbon/ @idlethread
/boards/arm/96b_meerkat96/ @Mani-Sadhasivam
/boards/arm/96b_nitrogen/ @idlethread
/boards/arm/96b_neonkey/ @Mani-Sadhasivam
/boards/arm/96b_stm32_sensor_mez/ @Mani-Sadhasivam
/boards/arm/96b_wistrio/ @Mani-Sadhasivam
/boards/arm/acn52832/ @sven-hm
/boards/arm/arduino_mkrzero/ @soburi
/boards/arm/bbc_microbit_v2/ @LingaoM
/boards/arm/bl5340_dvk/ @lairdjm
/boards/arm/bl65*/ @lairdjm
/boards/arm/blackpill_f401ce/ @coderkalyan
/boards/arm/blackpill_f411ce/ @coderkalyan
/boards/arm/bt*10/ @greg-leach
/boards/arm/cc1352r1_launchxl/ @bwitherspoon
/boards/arm/cc26x2r1_launchxl/ @bwitherspoon
/boards/arm/cc3220sf_launchxl/ @vanti
/boards/arm/cy8ckit_062_ble/ @ifyall @npal-cy
/boards/arm/cy8ckit_062s4/ @DaWei8823
/boards/arm/cy8ckit_062_wifi_bt/ @ifyall @npal-cy
/boards/arm/cy8cproto_062_4343w/ @ifyall @npal-cy
/boards/arm/disco_l475_iot1/ @erwango
/boards/arm/efm32pg_stk3401a/ @rdmeneze
/boards/arm/faze/ @mbittan @simonguinot
/boards/arm/frdm*/ @mmahadevan108 @dleach02
/boards/arm/gd32*/ @nandojve
/boards/arm/google_*/ @jackrosenthal
/boards/arm/hexiwear*/ @mmahadevan108 @dleach02
/boards/arm/ip_k66f/ @parthitce @lmajewski
/boards/arm/legend/ @mbittan @simonguinot
/boards/arm/lpcxpresso*/ @mmahadevan108 @dleach02
/boards/arm/mg100/ @rerickson1
/boards/arm/mimx8mm_evk/ @Mani-Sadhasivam
/boards/arm/mimx8mm_phyboard_polis @pefech
/boards/arm/mimxrt*/ @mmahadevan108 @dleach02
/boards/arm/mps2_an385/ @fvincenzo
/boards/arm/msp_exp432p401r_launchxl/ @Mani-Sadhasivam
/boards/arm/npcx7m6fb_evb/ @MulinChao @ChiHuaL
/boards/arm/nrf*/ @carlescufi @lemrey
/boards/arm/nucleo*/ @erwango @ABOSTM @FRASTM
/boards/arm/nucleo_f401re/ @idlethread
/boards/arm/nuvoton_pfm_m487/ @ssekar15
/boards/arm/pinnacle_100_dvk/ @rerickson1
/boards/arm/qemu_cortex_a9/ @ibirnbaum
/boards/arm/qemu_cortex_r*/ @stephanosio
/boards/arm/qemu_cortex_m*/ @ioannisg @stephanosio
/boards/arm/quick_feather/ @fkokosinski @kgugala
/boards/arm/rak4631_nrf52840/ @gpaquet85
/boards/arm/rak5010_nrf52840/ @gpaquet85
/boards/arm/rpi_pico/ @yonsch
/boards/arm/ronoth_lodev/ @NorthernDean
/boards/arm/xmc45_relax_kit/ @parthitce
/boards/atmel/ @nandojve
/boards/arm/scobc_module1/ @yashi
/boards/arm/v2m_beetle/ @fvincenzo
/boards/arm/olimexino_stm32/ @ydamigos
/boards/arm/s32*/ @manuargue
/boards/arm/sensortile_box/ @avisconti
/boards/arm/steval_fcu001v1/ @Navin-Sankar
/boards/arm/stm32l1_disco/ @karlp
/boards/arm/stm32*_disco/ @erwango @ABOSTM @FRASTM
/boards/arm/stm32h735g_disco/ @benediktibk
/boards/arm/stm32f3_disco/ @ydamigos
/boards/arm/stm32*_eval/ @erwango @ABOSTM @FRASTM
/boards/arm/rcar_*/ @aaillet
/boards/arm/ubx_bmd345eval_nrf52840/ @Navin-Sankar @brec-u-blox
/boards/arm/nrf5340_audio_dk_nrf5340 @koffes @alexsven @erikrobstad @rick1082 @gWacey
/boards/arm/stm32_min_dev/ @sidcha
/boards/riscv/rv32m1_vega/ @dleach02
/boards/riscv/adp_xc7k_ae350/ @cwshu @kevinwang821020 @jimmyzhe
/boards/riscv/longan_nano/ @soburi
/boards/riscv/neorv32/ @henrikbrixandersen
/boards/riscv/niosv*/ @sweeaun
/boards/riscv/sparkfun_red_v_things_plus/ @soburi
/boards/riscv/stamp_c3/ @soburi
/boards/shields/atmel_rf2xx/ @nandojve
/boards/shields/esp_8266/ @nandojve
/boards/shields/inventek_eswifi/ @nandojve
/boards/xtensa/odroid_go/ @ydamigos
/boards/xtensa/nxp_adsp_imx8/ @iuliana-prodan @dbaluta
/boards/xtensa/kincony_kc868_a32/ @bbilas
/boards/arm64/qemu_cortex_a53/ @carlocaione
/boards/arm64/bcm958402m2_a72/ @abhishek-brcm
/boards/arm64/mimx8mm_evk/ @MrVan @JiafeiPan
/boards/arm64/mimx8mp_evk/ @MrVan @JiafeiPan
/boards/arm64/mimx8mn_evk/ @JiafeiPan
/boards/arm64/mimx93_evk/ @JiafeiPan
/boards/arm64/nxp_ls1046ardb/ @JiafeiPan
/boards/arm64/xenvm/ @lorc @firscity
/boards/arm64/fvp_baser_aemv8r/ @povergoing
/boards/arm64/fvp_base_revc_2xaemv8a/ @carlocaione
/boards/arm64/intel_socfpga_agilex_socdk/ @siclim @ngboonkhai
/boards/arm64/intel_socfpga_agilex5_socdk/ @teikheng @gdengi
/boards/arm64/rcar_*/ @lorc @xakep-amatop
# All cmake related files
/doc/develop/tools/coccinelle.rst @himanshujha199640 @JuliaLawall
/doc/services/device_mgmt/smp_protocol.rst @de-nordic @nordicjm
/doc/services/device_mgmt/smp_groups/ @de-nordic @nordicjm
/doc/services/sensing/ @lixuzha @ghu0510 @qianruh
/doc/CMakeLists.txt @carlescufi
/doc/_scripts/ @carlescufi
/drivers/*/*sam4l* @nandojve
/drivers/*/*cc13xx_cc26xx* @bwitherspoon
/drivers/*/*gd32* @nandojve
/drivers/*/*litex* @mateusz-holenko @kgugala @pgielda
/drivers/*/*mcux* @mmahadevan108 @dleach02
/drivers/*/*stm32* @erwango @ABOSTM @FRASTM
/drivers/*/*native_posix* @aescolar @daor-oti
/drivers/*/*lpc11u6x* @mbittan @simonguinot
/drivers/*/*npcx* @MulinChao @ChiHuaL
/drivers/*/*andes* @cwshu @kevinwang821020 @jimmyzhe
/drivers/*/*ifx_cat1* @ifyall @npal-cy
/drivers/*/*neorv32* @henrikbrixandersen
/drivers/*/*_s32* @manuargue
/drivers/adc/adc_ads1x1x.c @XenuIsWatching
/drivers/adc/adc_stm32.c @cybertale
/drivers/adc/adc_rpi_pico.c @soburi
/drivers/adc/*ads114s0x* @benediktibk
/drivers/adc/*max11102_17* @benediktibk
/drivers/adc/adc_ad5592.c @bbilas
/drivers/audio/*nrfx* @anangl
/drivers/auxdisplay/*pt6314* @xingrz
/drivers/auxdisplay/* @thedjnK
/drivers/bbram/* @yperess @sjg20 @jackrosenthal
/drivers/bluetooth/ @alwa-nordic @jhedberg @Vudentz
/drivers/bluetooth/hci/hci_esp32.c @sylvioalves
/drivers/can/*mcp2515* @karstenkoenig
/drivers/can/*rcar* @aaillet
/drivers/clock_control/*agilex* @siclim @gdengi
/drivers/clock_control/*nrf* @nordic-krch
/drivers/clock_control/*esp32* @extremegtx @sylvioalves
/drivers/clock_control/*cpg_mssr* @aaillet
/drivers/console/ipm_console.c @finikorg
/drivers/console/semihost_console.c @luozhongyao
/drivers/console/jailhouse_debug_console.c @MrVan
/drivers/counter/counter_cmos.c @dcpleung
/drivers/counter/counter_ll_stm32_timer.c @kentjhall
/drivers/counter/*esp32* @sylvioalves
/drivers/counter/dw_timer.c @pbalsundar
/drivers/counter/counter_timer_shell.c @pbalsundar
/drivers/crypto/*nrf_ecb* @maciekfabia @anangl
/drivers/display/*rm68200* @mmahadevan108
/drivers/display/display_ili9342c.* @extremegtx
/drivers/dac/*ad56xx* @benediktibk
/drivers/dac/dac_ad5592.c @bbilas
/drivers/dai/ @kv2019i @marcinszkudlinski @abonislawski
/drivers/dai/intel/ @kv2019i @marcinszkudlinski @abonislawski
/drivers/dai/intel/ssp/ @kv2019i @marcinszkudlinski @abonislawski
/drivers/dai/intel/dmic/ @marcinszkudlinski @abonislawski
/drivers/dai/intel/alh/ @abonislawski
/drivers/dma/*dw* @tbursztyka
/drivers/dma/*dw_common* @abonislawski
/drivers/dma/*sam0* @Sizurka
/drivers/dma/dma_stm32* @cybertale @lowlander
/drivers/dma/*pl330* @raveenp
/drivers/dma/*iproc_pax* @raveenp
/drivers/dma/*intel_adsp* @teburd @abonislawski
/drivers/dma/*rpi_pico* @soburi
/drivers/dma/*xmc4xxx* @talih0
/drivers/eeprom/eeprom_stm32.c @KwonTae-young
/drivers/entropy/*b91* @andy-liu-telink
/drivers/entropy/*bt_hci* @JordanYates
/drivers/entropy/*rv32m1* @dleach02
/drivers/entropy/*litex* @mateusz-holenko @kgugala @pgielda
/drivers/ethernet/*dwmac* @npitre
/drivers/ethernet/*stm32* @Nukersson @lochej
/drivers/ethernet/*w5500* @parthitce
/drivers/ethernet/*xlnx_gem* @ibirnbaum
/drivers/ethernet/*smsc91x* @sgrrzhf
/drivers/ethernet/*adin2111* @GeorgeCGV
/drivers/ethernet/*oa_tc6* @lmajewski
/drivers/ethernet/*lan865x* @lmajewski
/drivers/ethernet/phy/ @rlubos @tbursztyka @arvinf @jukkar
/drivers/ethernet/phy/*adin2111* @GeorgeCGV
/drivers/mdio/*adin2111* @GeorgeCGV
/drivers/flash/*stm32_qspi* @lmajewski
/drivers/flash/*b91* @andy-liu-telink
/drivers/flash/*cadence* @ngboonkhai
/drivers/flash/*cc13xx_cc26xx* @pepe2k
/drivers/flash/*nrf* @de-nordic
/drivers/flash/*esp32* @sylvioalves
/drivers/flash/flash_cadence_nand* @nbalabak
/drivers/gpio/*b91* @andy-liu-telink
/drivers/gpio/*lmp90xxx* @henrikbrixandersen
/drivers/gpio/*nct38xx* @MulinChao @ChiHuaL
/drivers/gpio/*stm32* @erwango
/drivers/gpio/*eos_s3* @fkokosinski @kgugala
/drivers/gpio/*rcar* @aaillet
/drivers/gpio/*esp32* @sylvioalves
/drivers/gpio/*rpi_pico* @yonsch
/drivers/gpio/*xlnx_ps* @ibirnbaum
/drivers/gpio/*ads114s0x* @benediktibk
/drivers/gpio/*bd8lb600fs* @benediktibk
/drivers/gpio/*pcal64xxa* @benediktibk
/drivers/gpio/gpio_altera_pio.c @shilinte
/drivers/gpio/gpio_ad5592.c @bbilas
/drivers/i2c/i2c_common.c @sjg20
/drivers/i2c/i2c_emul.c @sjg20
/drivers/i2c/i2c_ite_enhance.c @GTLin08
/drivers/i2c/i2c_ite_it8xxx2.c @GTLin08
/drivers/i2c/i2c_shell.c @nashif
/drivers/i2c/Kconfig.i2c_emul @sjg20
/drivers/i2c/Kconfig.it8xxx2 @GTLin08
/drivers/i2c/target/*eeprom* @henrikbrixandersen
/drivers/i2c/Kconfig.test @mbolivar-ampere
/drivers/i2c/i2c_test.c @mbolivar-ampere
/drivers/i2c/*rcar* @aaillet
/drivers/i2s/*litex* @mateusz-holenko @kgugala @pgielda
/drivers/i2s/i2s_ll_stm32* @avisconti
/drivers/i2s/*nrfx* @anangl
/drivers/i3c/i3c_cdns.c @XenuIsWatching
/drivers/ieee802154/ @rlubos @tbursztyka @jukkar @fgrandel
/drivers/ieee802154/*b91* @andy-liu-telink
/drivers/ieee802154/ieee802154_nrf5* @jciupis
/drivers/ieee802154/ieee802154_rf2xx* @tbursztyka @nandojve
/drivers/ieee802154/ieee802154_cc13xx* @bwitherspoon @cfriedt @vaishnavachath
/drivers/interrupt_controller/ @dcpleung @nashif
/drivers/interrupt_controller/intc_gic.c @stephanosio
/drivers/interrupt_controller/*esp32* @sylvioalves
/drivers/interrupt_controller/intc_nuclei_eclic.c @soburi
/drivers/ipm/ipm_mhu* @karl-zh
/drivers/ipm/Kconfig.nrfx @masz-nordic
/drivers/ipm/Kconfig.nrfx_ipc_channel @masz-nordic
/drivers/ipm/ipm_cavs* @dcpleung @andyross
/drivers/ipm/ipm_nrfx_ipc.c @masz-nordic
/drivers/ipm/ipm_nrfx_ipc.h @masz-nordic
/drivers/ipm/ipm_stm32_ipcc.c @arnopo
/drivers/ipm/ipm_stm32_hsem.c @cameled
/drivers/ipm/ipm_esp32.c @uLipe
/drivers/ipm/ipm_ivshmem.c @uLipe
/drivers/kscan/*xec* @franciscomunoz @sjvasanth1
/drivers/kscan/*ft5336* @MaureenHelm
/drivers/kscan/*ht16k33* @henrikbrixandersen
/drivers/led_strip/ @mbolivar-ampere
/drivers/mfd/mfd_ad5592.c @bbilas
/drivers/mfd/mfd_max20335.c @bbilas
/drivers/misc/ft8xx/ @hubertmis
/drivers/modem/hl7800.c @rerickson1
/drivers/modem/simcom-sim7080.c @lgehreke
/drivers/modem/simcom-sim7080.h @lgehreke
/drivers/modem/Kconfig.hl7800 @rerickson1
/drivers/modem/Kconfig.simcom-sim7080 @lgehreke
/drivers/pinctrl/*esp32* @sylvioalves
/drivers/pinctrl/*it8xxx2* @ite
/drivers/pm_cpu_ops/psci_shell.c @nbalabak @gdengi
/drivers/power_domain/ @ceolin
/drivers/ps2/*xec* @franciscomunoz @sjvasanth1
/drivers/ps2/*npcx* @MulinChao @ChiHuaL
/drivers/pwm/*b91* @andy-liu-telink
/drivers/pwm/*pca9685* @nixward
/drivers/pwm/*rpi_pico* @burumaj
/drivers/pwm/*rv32m1* @henrikbrixandersen
/drivers/pwm/*sam0* @nzmichaelh
/drivers/pwm/*test* @JordanYates
/drivers/pwm/*xlnx* @henrikbrixandersen
/drivers/pwm/pwm_capture.c @henrikbrixandersen
/drivers/pwm/pwm_shell.c @henrikbrixandersen
/drivers/pwm/*gecko* @sun681
/drivers/pwm/*it8xxx2* @RuibinChang
/drivers/pwm/*esp32* @LucasTambor
/drivers/pwm/*rcar* @aaillet
/drivers/pwm/*max31790* @benediktibk
/drivers/regulator/* @gmarull
/drivers/regulator/regulator_max20335.c @bbilas
/drivers/regulator/regulator_pca9420.c @danieldegrasse
/drivers/regulator/regulator_rpi_pico.c @soburi
/drivers/regulator/regulator_shell.c @danieldegrasse
/drivers/reset/reset_intel_socfpga.c @nbalabak
/drivers/reset/Kconfig.intel_socfpga @nbalabak
/drivers/sensor/ams_iAQcore/ @alexanderwachter
/drivers/sensor/ens210/ @alexanderwachter
/drivers/sensor/grow_r502a/ @DineshDK03
/drivers/sensor/hts*/ @avisconti
/drivers/sensor/ina23*/ @bbilas
/drivers/sensor/lis*/ @avisconti
/drivers/sensor/lps*/ @avisconti
/drivers/sensor/lsm*/ @avisconti
/drivers/sensor/mpr/ @sven-hm
/drivers/sensor/qdec_stm32/ @valeriosetti
/drivers/sensor/rpi_pico_temp/ @soburi
/drivers/sensor/st*/ @avisconti
/drivers/serial/*b91* @andy-liu-telink
/drivers/serial/uart_altera_jtag.c @nashif @gohshunjing
/drivers/serial/uart_altera.c @gohshunjing
/drivers/serial/*ns16550* @dcpleung @nashif @gdengi
/drivers/serial/*nrfx* @anangl
/drivers/serial/uart_liteuart.c @mateusz-holenko @kgugala @pgielda
/drivers/serial/Kconfig.mcux_iuart @Mani-Sadhasivam
/drivers/serial/uart_mcux_iuart.c @Mani-Sadhasivam
/drivers/serial/Kconfig.rtt @carlescufi @pkral78
/drivers/serial/uart_rtt.c @carlescufi @pkral78
/drivers/serial/*rpi_pico* @yonsch
/drivers/serial/Kconfig.xlnx @wjliang
/drivers/serial/uart_xlnx_ps.c @wjliang
/drivers/serial/uart_xlnx_uartlite.c @henrikbrixandersen
/drivers/serial/*xmc4xxx* @parthitce
/drivers/serial/*numicro* @ssekar15
/drivers/serial/*apbuart* @julius-barendt
/drivers/serial/*rcar* @aaillet
/drivers/serial/Kconfig.xen @lorc @firscity
/drivers/serial/uart_hvc_xen.c @lorc @firscity
/drivers/serial/uart_hvc_xen_consoleio.c @lorc @firscity
/drivers/serial/Kconfig.it8xxx2 @GTLin08
/drivers/serial/uart_ite_it8xxx2.c @GTLin08
/drivers/serial/*intel_lw* @shilinte
/drivers/disk/sdmmc_sdhc.h @JunYangNXP
/drivers/disk/sdmmc_stm32.c @anthonybrandon
/drivers/ptp_clock/ @tbursztyka @jukkar
/drivers/spi/*b91* @andy-liu-telink
/drivers/spi/spi_rv32m1_lpspi* @karstenkoenig
/drivers/spi/*esp32* @sylvioalves
/drivers/spi/*pl022* @soburi
/drivers/sdhc/ @danieldegrasse
/drivers/sdhc/sdhc_cdns* @roymurlidhar @tanmaykathpalia
/drivers/timer/*arm_arch* @carlocaione
/drivers/timer/*cortex_m_systick* @anangl
/drivers/timer/*altera_avalon* @nashif
/drivers/timer/*riscv_machine* @kgugala @pgielda
/drivers/timer/*ite_it8xxx2* @ite
/drivers/timer/*xlnx_psttc* @wjliang @stephanosio
/drivers/timer/*cc13xx_cc26xx_rtc* @vanti
/drivers/timer/*cavs* @dcpleung
/drivers/timer/*stm32_lptim* @FRASTM
/drivers/timer/*leon_gptimer* @julius-barendt
/drivers/timer/*mips_cp0* @frantony
/drivers/timer/*rcar_cmt* @aaillet
/drivers/timer/*esp32c3_sys* @uLipe
/drivers/timer/*sam0_rtc* @bendiscz
/drivers/timer/*arcv2* @ruuddw
/drivers/timer/*xtensa* @dcpleung
/drivers/timer/*rv32m1_lptmr* @mbolivar
/drivers/timer/*nrf_rtc* @anangl
/drivers/timer/*hpet* @dcpleung
/drivers/usb/device/usb_dc_stm32.c @ydamigos @loicpoulain
/drivers/i2c/*b91* @andy-liu-telink
/drivers/i2c/i2c_ll_stm32* @ydamigos
/drivers/i2c/i2c_rv32m1_lpi2c* @henrikbrixandersen
/drivers/i2c/*sam0* @Sizurka
/drivers/i2c/i2c_dw* @dcpleung
/drivers/i2c/*tca954x* @kurddt
/drivers/*/*xec* @franciscomunoz @albertofloyd @sjvasanth1
/drivers/watchdog/*gecko* @oanerer
/drivers/watchdog/*sifive* @katsuster
/drivers/watchdog/wdt_handlers.c @dcpleung @nashif
/drivers/watchdog/*cc32xx* @pavlohamov
/drivers/watchdog/wdt_ite_it8xxx2.c @RuibinChang
/drivers/watchdog/Kconfig.it8xxx2 @RuibinChang
/drivers/watchdog/wdt_counter.c @nordic-krch
/drivers/watchdog/*rpi_pico* @thedjnK
/drivers/watchdog/*dw* @softwarecki @pbalsundar
/drivers/watchdog/*ifx* @sreeramIfx
/drivers/wifi/esp_at/ @mniestroj
/drivers/wifi/eswifi/ @loicpoulain @nandojve
/drivers/wifi/winc1500/ @kludentwo
/drivers/virtualization/ @tbursztyka
/dts/arc/ @abrodkin @ruuddw @iriszzw @evgeniy-paltsev
/dts/arm/acsip/ @NorthernDean
/dts/arm/aspeed/ @aspeeddylan
/dts/arm/atmel/ @galak @nandojve
/dts/arm/broadcom/ @sbranden
/dts/arm/cypress/ @ifyall @npal-cy
/dts/arm/gd/ @nandojve
/dts/arm/infineon/xmc4* @parthitce @ifyall @npal-cy
/dts/arm/infineon/psoc6/ @ifyall @npal-cy
/dts/arm64/armv8-r.dtsi @povergoing
/dts/arm64/intel/*intel_socfpga* @siclim
/dts/arm64/nxp/ @JiafeiPan
/dts/arm64/renesas/ @lorc @xakep-amatop
/dts/arm/quicklogic/ @fkokosinski @kgugala
/dts/arm/seeed_studio/ @str4t0m
/dts/arm/st/ @erwango
/dts/arm/st/h7/*stm32h735* @benediktibk
/dts/arm/st/l4/*stm32l451* @benediktibk
/dts/arm/ti/cc13?2* @bwitherspoon
/dts/arm/ti/cc26?2* @bwitherspoon
/dts/arm/ti/cc3235* @vanti
/dts/arm/nordic/ @anangl @carlescufi
/dts/arm/nuvoton/ @ssekar15 @MulinChao @ChiHuaL
/dts/arm/nxp/ @mmahadevan108 @dleach02
/dts/arm/nxp/nxp_s32* @manuargue
/dts/arm/microchip/ @franciscomunoz @albertofloyd @sjvasanth1
/dts/arm/rpi_pico/ @yonsch
/dts/arm/silabs/efm32_pg_1b.dtsi @rdmeneze
/dts/arm/silabs/efm32gg11b* @oanerer
/dts/arm/silabs/efr32bg13p* @mnkp
/dts/arm/silabs/efr32bg22* @kgugala @fkokosinski @pczarnecki
/dts/arm/silabs/efr32xg13p* @mnkp
/dts/arm/silabs/efm32pg1b* @rdmeneze
/dts/arm/silabs/efr32mg21* @l-alfred
/dts/arm/silabs/efr32fg13* @yonsch
/dts/riscv/ite/ @ite
/dts/riscv/microchip/microchip-miv.dtsi @galak
/dts/riscv/openisa/rv32m1* @dleach02
/dts/riscv/riscv32-litex-vexriscv.dtsi @mateusz-holenko @kgugala @pgielda
/dts/riscv/starfive/ @rajnesh-kanwal
/dts/riscv/andes/andes_v5* @cwshu @kevinwang821020 @jimmyzhe
/dts/riscv/niosv/ @sweeaun
/dts/arm/armv*m.dtsi @galak @ioannisg
/dts/arm/armv7-a.dtsi @ibirnbaum
/dts/arm/armv7-r.dtsi @bbolen @stephanosio
/dts/arm/xilinx/ @bbolen @stephanosio
/dts/arm/renesas/rcar/ @aaillet
/dts/xtensa/xtensa.dtsi @ydamigos
/dts/xtensa/intel/ @dcpleung
/dts/xtensa/espressif/ @sylvioalves
/dts/xtensa/nxp/ @iuliana-prodan @dbaluta
/dts/bindings/can/ @alexanderwachter @henrikbrixandersen
/dts/bindings/i2c/zephyr*i2c-emul*.yaml @sjg20
/dts/bindings/adc/st*stm32-adc.yaml @cybertale
/dts/bindings/adc/*ads114s08.yaml @benediktibk
/dts/bindings/adc/*max111* @benediktibk
/dts/bindings/modem/*hl7800.yaml @rerickson1
/dts/bindings/serial/ns16550.yaml @dcpleung @nashif
/dts/bindings/counter/snps,dw-timers.yaml @pbalsundar
/dts/bindings/wifi/*esp-at.yaml @mniestroj
/dts/bindings/*/*gd32* @nandojve
/dts/bindings/*/*sam* @nandojve
/dts/bindings/*/*npcx* @MulinChao @ChiHuaL
/dts/bindings/*/*psoc6* @ifyall @npal-cy
/dts/bindings/*/*infineon*cat1* @ifyall @npal-cy
/dts/bindings/*/nordic* @anangl
/dts/bindings/*/nxp* @mmahadevan108 @dleach02
/dts/bindings/*/nxp*s32* @manuargue
/dts/bindings/*/openisa* @dleach02
/dts/bindings/*/raspberrypi*pico* @yonsch
/dts/bindings/*/st* @erwango
/dts/bindings/sensor/ams* @alexanderwachter
/dts/bindings/*/sifive* @mateusz-holenko @kgugala @pgielda
/dts/bindings/*/litex* @mateusz-holenko @kgugala @pgielda
/dts/bindings/*/vexriscv* @mateusz-holenko @kgugala @pgielda
/dts/bindings/*/andes* @cwshu @kevinwang821020 @jimmyzhe
/dts/bindings/*/neorv32* @henrikbrixandersen
/dts/bindings/*/*lan91c111* @sgrrzhf
/dts/bindings/i3c/ @dcpleung
/dts/bindings/pm_cpu_ops/* @carlocaione
/dts/bindings/ethernet/*gem.yaml @ibirnbaum
/dts/bindings/auxdisplay/*pt6314.yaml @xingrz
/dts/bindings/auxdisplay/* @thedjnK
/dts/bindings/sensor/*bme680* @BoschSensortec
/dts/bindings/sensor/*ina23* @bbilas
/dts/bindings/sensor/st* @avisconti
/dts/bindings/sensor/zephyr,sensing.yaml @lixuzha @ghu0510 @qianruh
/dts/bindings/sensor/zephyr,sensing*.yaml @lixuzha @ghu0510 @qianruh
/dts/bindings/smbus/ @finikorg
/dts/bindings/sip_svc/ @maheshraotm
/dts/bindings/cpu/intel,niosv.yaml @sweeaun
/dts/bindings/reset/intel,socfpga-reset.yaml @nbalabak
/dts/bindings/gpio/*pcal64* @benediktibk
/dts/bindings/gpio/*bd8lb600fs* @benediktibk
/dts/bindings/gpio/*ads114s0x* @benediktibk
/dts/bindings/pwm/*max31790* @benediktibk
/dts/bindings/dac/*ad56* @benediktibk

View File

@@ -1,4 +1,4 @@
# Zephyr Project Code of Conduct
# Contributor Covenant Code of Conduct
## Our Pledge

View File

@@ -1,19 +0,0 @@
# Constant variables to be used across Kconfig options
# Copyright (c) 2024 basalte bv
# SPDX-License-Identifier: Apache-2.0
INT8_MIN := -128
INT16_MIN := -32768
INT32_MIN := -2147483648
INT64_MIN := -9223372036854775808
INT8_MAX := 127
INT16_MAX := 32767
INT32_MAX := 2147483647
INT64_MAX := 9223372036854775807
UINT8_MAX := 255
UINT16_MAX := 65535
UINT32_MAX := 4294967295
UINT64_MAX := 18446744073709551615

View File

@@ -5,13 +5,7 @@
# Copyright (c) 2023 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
source "Kconfig.constants"
osource "$(APPLICATION_SOURCE_DIR)/VERSION"
# This should be sourced early since the autogen Kconfig.dts options
# and macros may get used by shields/boards/SoC defconfig or modules.
source "dts/Kconfig"
osource "${APPLICATION_SOURCE_DIR}/VERSION"
# Include Kconfig.defconfig files first so that they can override defaults and
# other symbol/choice properties by adding extra symbol/choice definitions.
@@ -21,13 +15,13 @@ source "dts/Kconfig"
# Shield defaults should have precedence over board defaults, which should have
# precedence over SoC defaults, so include them in that order.
#
# $ARCH and $KCONFIG_BOARD_DIR will be glob patterns when building documentation.
# $ARCH and $BOARD_DIR will be glob patterns when building documentation.
# This loads custom shields defconfigs (from BOARD_ROOT)
osource "$(KCONFIG_BINARY_DIR)/Kconfig.shield.defconfig"
# This loads Zephyr base shield defconfigs
source "boards/shields/*/Kconfig.defconfig"
osource "$(KCONFIG_BOARD_DIR)/Kconfig.defconfig"
osource "$(BOARD_DIR)/Kconfig.defconfig"
# This loads Zephyr specific SoC root defconfigs
source "$(KCONFIG_BINARY_DIR)/soc/Kconfig.defconfig"
@@ -37,6 +31,10 @@ osource "$(TOOLCHAIN_KCONFIG_DIR)/Kconfig.defconfig"
# This loads the testsuite defconfig
source "subsys/testsuite/Kconfig.defconfig"
# This should be early since the autogen Kconfig.dts symbols may get
# used by modules
source "dts/Kconfig"
menu "Modules"
source "modules/Kconfig"
@@ -215,6 +213,12 @@ config LINKER_SORT_BY_ALIGNMENT
in decreasing size of symbols. This helps to minimize
padding between symbols.
config SRAM_VECTOR_TABLE
bool "Place the vector table in SRAM instead of flash"
help
The option specifies that the vector table should be placed at the
start of SRAM instead of the start of flash.
config HAS_SRAM_OFFSET
bool
help
@@ -254,20 +258,6 @@ config LINKER_USE_PINNED_SECTION
Requires that pinned sections exist in the architecture, SoC,
board or custom linker script.
config LINKER_USE_ONDEMAND_SECTION
bool "Use Evictable Linker Section"
depends on DEMAND_MAPPING
depends on !LINKER_USE_PINNED_SECTION
depends on !ARCH_MAPS_ALL_RAM
help
If enabled, the symbols which may be evicted from memory
will be put into a linker section reserved for on-demand symbols.
During boot, the corresponding memory will be mapped as paged out.
This is conceptually the opposite of CONFIG_LINKER_USE_PINNED_SECTION.
Requires that on-demand sections exist in the architecture, SoC,
board or custom linker script.
config LINKER_GENERIC_SECTIONS_PRESENT_AT_BOOT
bool "Generic sections are present at boot" if DEMAND_PAGING && LINKER_USE_PINNED_SECTION
default y
@@ -283,7 +273,7 @@ config LINKER_GENERIC_SECTIONS_PRESENT_AT_BOOT
config LINKER_LAST_SECTION_ID
bool "Last section identifier"
default y if !ARM64
default y
depends on ARM || ARM64 || RISCV
help
If enabled, the last section will contain an identifier.
@@ -326,13 +316,6 @@ config LINKER_USE_RELAX
endmenu # "Linker Sections"
config LINKER_ITERABLE_SUBALIGN
int
default 8 if 64BIT
default 4
help
Hidden option for the default subalignment of iterable sections.
config LINKER_DEVNULL_SUPPORT
bool
default y if CPU_CORTEX_M || (RISCV && !64BIT)
@@ -355,86 +338,6 @@ endmenu
menu "Compiler Options"
config REQUIRES_STD_C99
bool
select DEPRECATED
help
Hidden option to select compiler support C99 standard or higher.
config REQUIRES_STD_C11
bool
select DEPRECATED
select REQUIRES_STD_C99
help
Hidden option to select compiler support C11 standard or higher.
config REQUIRES_STD_C17
bool
help
Hidden option to select compiler support C17 standard or higher.
config REQUIRES_STD_C23
bool
select REQUIRES_STD_C17
help
Hidden option to select compiler support C23 standard or higher.
choice STD_C
prompt "C Standard"
default STD_C23 if REQUIRES_STD_C23
default STD_C17
help
C Standards.
config STD_C90
bool "C90 [DEPRECATED]"
select DEPRECATED
depends on !REQUIRES_STD_C99
help
1989 C standard as completed in 1989 and ratified by ISO/IEC
as ISO/IEC 9899:1990. This version is known as "ANSI C".
config STD_C99
bool "C99 [DEPRECATED]"
select DEPRECATED
depends on !REQUIRES_STD_C11
help
1999 C standard.
config STD_C11
bool "C11 [DEPRECATED]"
select DEPRECATED
depends on !REQUIRES_STD_C17
help
2011 C standard.
config STD_C17
bool "C17"
depends on !REQUIRES_STD_C23
help
2017 C standard, addresses defects in C11 without introducing
new language features.
config STD_C23
bool "C23"
help
2023 C standard.
endchoice
config TOOLCHAIN_SUPPORTS_GNU_EXTENSIONS
bool
default y if "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "zephyr"
help
Hidden option to signal that toolchain supports GNU Extensions.
config GNU_C_EXTENSIONS
bool "GNU C Extensions"
depends on TOOLCHAIN_SUPPORTS_GNU_EXTENSIONS
help
Enable GNU C Extensions. GNU C provides several language features
not found in ISO standard C.
config CODING_GUIDELINE_CHECK
bool "Enforce coding guideline rules"
help
@@ -444,7 +347,6 @@ config CODING_GUIDELINE_CHECK
config NATIVE_LIBC
bool
select FULL_LIBC_SUPPORTED
select TC_PROVIDES_POSIX_C_LANG_SUPPORT_R
help
Zephyr will use the host system C library.
@@ -462,6 +364,15 @@ config NATIVE_BUILD
Zephyr will be built targeting the host system for debug and
development purposes.
config NATIVE_APPLICATION
bool
default y if ARCH_POSIX
depends on !NATIVE_LIBRARY
select NATIVE_BUILD
help
Build as a native application that can run on the host and using
resources and libraries provided by the host.
config NATIVE_LIBRARY
bool
select NATIVE_BUILD
@@ -482,7 +393,6 @@ choice COMPILER_OPTIMIZATIONS
prompt "Optimization level"
default NO_OPTIMIZATIONS if COVERAGE
default DEBUG_OPTIMIZATIONS if DEBUG
default SIZE_OPTIMIZATIONS_AGGRESSIVE if "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "llvm"
default SIZE_OPTIMIZATIONS
help
Note that these flags shall only control the compiler
@@ -495,12 +405,6 @@ config SIZE_OPTIMIZATIONS
Compiler optimizations will be set to -Os independently of other
options.
config SIZE_OPTIMIZATIONS_AGGRESSIVE
bool "Aggressively optimize for size"
help
Compiler optimizations will be set to -Oz independently of other
options.
config SPEED_OPTIMIZATIONS
bool "Optimize for speed"
help
@@ -524,34 +428,17 @@ config NO_OPTIMIZATIONS
endchoice
config LTO
bool "Link Time Optimization"
depends on !(GEN_ISR_TABLES || GEN_IRQ_VECTOR_TABLE) || ISR_TABLES_LOCAL_DECLARATION
depends on !NATIVE_LIBRARY
depends on !CODE_DATA_RELOCATION
bool "Link Time Optimization [EXPERIMENTAL]"
depends on (!(GEN_ISR_TABLES || GEN_IRQ_VECTOR_TABLE) || ISR_TABLES_LOCAL_DECLARATION) && !NATIVE_LIBRARY
select EXPERIMENTAL
help
This option enables Link Time Optimization.
config LTO_SINGLE_THREADED
bool "Single-threaded LTO"
depends on LTO
help
This option instructs the linker to use a single thread to process
LTO. See the following issue for more info:
https://github.com/zephyrproject-rtos/sdk-ng/issues/1038
config COMPILER_WARNINGS_AS_ERRORS
bool "Treat warnings as errors"
help
Turn on "warning as error" toolchain flags
config DEPRECATION_TEST
bool "Indicate test for deprecated feature"
help
This option is selected by tests which check functionality of
deprecated features. It ensures that COMPILER_WARNINGS_AS_ERRORS
is not selected as that would generate errors when the deprecated
features are used.
config COMPILER_SAVE_TEMPS
bool "Save temporary object files"
help
@@ -622,13 +509,6 @@ config MISRA_SANE
standard for safety reasons. Specifically variable length
arrays are not permitted (and gcc will enforce this).
config TOOLCHAIN_SUPPORTS_VLA_IN_STATEMENTS
bool
default y
help
Hidden symbol to state if the toolchain can handle vla in
statements.
endmenu
choice
@@ -638,17 +518,17 @@ choice
config ASSERT_ON_ERRORS
bool "Assert on all errors"
help
Assert on errors covered with the CHECKIF() macro.
Assert on errors covered with the CHECK macro.
config NO_RUNTIME_CHECKS
bool "No runtime error checks"
help
Do not do any runtime checks or asserts when using the CHECKIF() macro.
Do not do any runtime checks or asserts when using the CHECK macro.
config RUNTIME_ERROR_CHECKS
bool "Runtime error checks"
help
Always perform runtime checks covered with the CHECKIF() macro. This
Always perform runtime checks covered with the CHECK macro. This
option is the default and the only option used during testing.
endchoice
@@ -685,24 +565,6 @@ config OUTPUT_DISASSEMBLE_ALL
The .lst file will contain complete disassembly of the firmware
not just those expected to contain instructions including zeros
config OUTPUT_DISASSEMBLY_WITH_SOURCE
bool "Include source code in output disassembly file"
default y
depends on OUTPUT_DISASSEMBLY && !OUTPUT_DISASSEMBLE_ALL
help
The .lst file will also contain the source code. Having
control over this can be useful for reproducible builds
since it can be used to remove one of the elements of
the .lst file that can vary across platforms because
of reasons such as having ".." include paths.
config OUTPUT_DISASSEMBLY_NO_ALIASES
bool "Disassemble with raw instruction mnemonics"
depends on OUTPUT_DISASSEMBLY
help
The .lst file will contain raw instruction mnemonic instead of
pseudo instructions.
config OUTPUT_PRINT_MEMORY_USAGE
bool "Print memory usage to stdout"
default y
@@ -724,21 +586,8 @@ config CLEANUP_INTERMEDIATE_FILES
from the build process. Note this breaks incremental builds, west spdx
(Software Bill of Material generation), and maybe others.
config BUILD_GAP_FILL_PATTERN
hex "Gap fill pattern"
default 0xFF
help
Pattern used for gap filling of output files.
This value should be set to the value of a clean flash as this can
significantly reduce flash write times.
This setting only defines the gap fill pattern and doesn't enable gap
filling.
Note: binary files are always gap filled as they contain no address
information.
config BUILD_NO_GAP_FILL
bool "Don't fill gaps in generated hex/s19 files [DEPRECATED]."
select DEPRECATED
bool "Don't fill gaps in generated hex/bin/s19 files."
config BUILD_OUTPUT_HEX
bool "Build a binary in HEX format"
@@ -746,12 +595,6 @@ config BUILD_OUTPUT_HEX
Build an Intel HEX binary zephyr/zephyr.hex in the build directory.
The name of this file can be customized with CONFIG_KERNEL_BIN_NAME.
config BUILD_OUTPUT_HEX_GAP_FILL
bool "Fill gaps in hex files"
depends on !BUILD_NO_GAP_FILL
help
Fill gaps in hex based files.
config BUILD_OUTPUT_BIN
bool "Build a binary in BIN format"
default y
@@ -786,12 +629,6 @@ config BUILD_OUTPUT_S19
Build an S19 binary zephyr/zephyr.s19 in the build directory.
The name of this file can be customized with CONFIG_KERNEL_BIN_NAME.
config BUILD_OUTPUT_S19_GAP_FILL
bool "Fill gaps in s19 files"
depends on !BUILD_NO_GAP_FILL
help
Fill gaps in s19 based files.
config BUILD_OUTPUT_UF2
bool "Build a binary in UF2 format"
depends on BUILD_OUTPUT_BIN
@@ -799,12 +636,6 @@ config BUILD_OUTPUT_UF2
Build a UF2 binary zephyr/zephyr.uf2 in the build directory.
The name of this file can be customized with CONFIG_KERNEL_BIN_NAME.
config BUILD_OUTPUT_MOT
bool "Build a binary in MOT format"
help
Build a MOT binary zephyr/zephyr.mot in the build directory.
The name of this file can be customized with CONFIG_KERNEL_BIN_NAME.
if BUILD_OUTPUT_UF2
config BUILD_OUTPUT_UF2_FAMILY_ID
@@ -814,8 +645,7 @@ config BUILD_OUTPUT_UF2_FAMILY_ID
default "0xada52840" if SOC_NRF52840_QIAA
default "0x4fb2d5bd" if SOC_SERIES_IMXRT10XX || SOC_SERIES_IMXRT11XX
default "0x2abc77ec" if SOC_SERIES_LPC55XXX
default "0xe48bff56" if SOC_SERIES_RP2040
default "0xe48bff57" if SOC_SERIES_RP2350
default "0xe48bff56" if SOC_SERIES_RP2XXX
default "0x68ed2b88" if SOC_SERIES_SAMD21
default "0x55114460" if SOC_SERIES_SAMD51
default "0x647824b6" if SOC_SERIES_STM32F0X
@@ -856,11 +686,6 @@ config BUILD_OUTPUT_STRIPPED
Build a stripped binary zephyr/zephyr.strip in the build directory.
The name of this file can be customized with CONFIG_KERNEL_BIN_NAME.
config BUILD_OUTPUT_COMPRESS_DEBUG_SECTIONS
bool "Compress debug sections in the ELF file"
help
Compress debug sections in the ELF file to reduce the file size.
config BUILD_OUTPUT_ADJUST_LMA
string
help
@@ -885,23 +710,6 @@ config BUILD_OUTPUT_ADJUST_LMA
default "$(dt_chosen_reg_addr_hex,$(DT_CHOSEN_IMAGE_M4))-\
$(dt_chosen_reg_addr_hex,$(DT_CHOSEN_Z_FLASH))"
config BUILD_OUTPUT_ADJUST_LMA_SECTIONS
def_string "*"
depends on BUILD_OUTPUT_ADJUST_LMA!=""
help
This determines the output sections to which the above LMA adjustment
will be applied.
The value can be the name of a section in the final ELF, like "text".
It can also be a pattern with wildcards, such as "*bss", which could
match more than one section name. Multiple such patterns can be given
as a ";"-separated list. It's possible to supply a 'negative' pattern
starting with "!", to exclude sections matched by a preceding pattern.
By default, all sections will have their LMA adjusted. The following
example excludes one section produced by the code relocation feature:
config BUILD_OUTPUT_ADJUST_LMA_SECTIONS
default "*;!.extflash_text_reloc"
config BUILD_OUTPUT_INFO_HEADER
bool "Create a image information header"
help
@@ -973,7 +781,7 @@ config BUILD_OUTPUT_STRIP_PATHS
bool "Strip absolute paths from binaries"
default y
help
If the compiler supports it, strip the $(ZEPHYR_BASE) prefix from the
If the compiler supports it, strip the ${ZEPHYR_BASE} prefix from the
__FILE__ macro used in __ASSERT*, in the
.noinit."/home/joe/zephyr/fu/bar.c" section names and in any
application code.
@@ -1012,8 +820,6 @@ config DEPRECATED
help
Symbol that must be selected by a feature or module if it is
considered to be deprecated.
When adding this to an option, remember to follow the instructions in
https://docs.zephyrproject.org/latest/develop/api/api_lifecycle.html#deprecated
config WARN_DEPRECATED
bool
@@ -1021,8 +827,7 @@ config WARN_DEPRECATED
prompt "Warn on deprecated usage"
help
Print a warning when the Kconfig tree is parsed if any deprecated
features are enabled, or at compile time, when deprecated macros or
symbols are used.
features are enabled.
config EXPERIMENTAL
bool
@@ -1037,12 +842,6 @@ config WARN_EXPERIMENTAL
Print a warning when the Kconfig tree is parsed if any experimental
features are enabled.
config NOT_SECURE
bool
help
Symbol to be selected by a feature to indicate that feature is
not secure.
config TAINT
bool
help
@@ -1072,10 +871,47 @@ menu "Boot Options"
config IS_BOOTLOADER
bool "Act as a bootloader"
depends on XIP
depends on ARM
help
This option indicates that Zephyr will act as a bootloader to execute
a separate Zephyr image payload.
config BOOTLOADER_SRAM_SIZE
int "SRAM reserved for bootloader [DEPRECATED]"
default 0
depends on !XIP || IS_BOOTLOADER
depends on ARM || XTENSA
help
This option specifies the amount of SRAM (measure in kB) reserved for
a bootloader image, when either:
- the Zephyr image itself is to act as the bootloader, or
- Zephyr is a !XIP image, which implicitly assumes existence of a
bootloader that loads the Zephyr !XIP image onto SRAM.
This option is deprecated, users should transition to using DTS to set this, if needed.
To be removed after Zephyr 3.7 release.
config BOOTLOADER_SRAM_SIZE_DEPRECATED
bool
default y
select DEPRECATED
depends on BOOTLOADER_SRAM_SIZE != 0
depends on !XIP || IS_BOOTLOADER
depends on ARM || XTENSA
help
Non-prompt symbol to indicate that the deprecated BOOTLOADER_SRAM_SIZE Kconfig has a
non-0 value. Please transition to using devicetree.
config BOOTLOADER_ESP_IDF
bool "ESP-IDF bootloader support"
depends on SOC_FAMILY_ESPRESSIF_ESP32 && !BOOTLOADER_MCUBOOT && !MCUBOOT
default y
help
This option will trigger the compilation of the ESP-IDF bootloader
inside the build folder.
At flash time, the bootloader will be flashed with the zephyr image
config BOOTLOADER_BOSSA
bool "BOSSA bootloader support"
select USE_DT_CODE_PARTITION
@@ -1118,20 +954,3 @@ config BOOTLOADER_BOSSA_ADAFRUIT_UF2
endchoice
endmenu
menu "Compatibility"
config LEGACY_GENERATED_INCLUDE_PATH
bool "Legacy include path for generated headers"
default y
help
Allow applications and libraries to use the Zephyr legacy include
path for the generated headers which does not use the `zephyr/` prefix.
From now on, i.e., the preferred way to include the `version.h` header is to
use <zephyr/version.h>, this Kconfig is currently enabled by default so that
user applications won't immediately fail to compile.
This Kconfig will be deprecated and eventually removed in the future releases.
endmenu

View File

@@ -1,202 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

View File

@@ -1,10 +0,0 @@
> [!IMPORTANT]
> The license files in this directory are maintained as per the recommendation
> of the REUSE specification (https://reuse.software/spec-3.3).
> These are licenses that may apply to some components hosted in the source tree
> but that do not end up in built binaries
> (see https://docs.zephyrproject.org/latest/LICENSING.html#zephyr-licensing).
>
> These files do _not_ define the license of the Zephyr project itself.
> Zephyr is licensed under the Apache 2.0 license, as specified in
> the [LICENSE](/LICENSE) file at the root of the repository.

File diff suppressed because it is too large Load Diff

View File

@@ -10,9 +10,12 @@
</p>
</a>
<a href="https://bestpractices.coreinfrastructure.org/projects/74"><img src="https://bestpractices.coreinfrastructure.org/projects/74/badge"></a>
<a href="https://scorecard.dev/viewer/?uri=github.com/zephyrproject-rtos/zephyr"><img src="https://api.securityscorecards.dev/projects/github.com/zephyrproject-rtos/zephyr/badge"></a>
<a href="https://github.com/zephyrproject-rtos/zephyr/actions/workflows/twister.yaml?query=branch%3Amain"><img src="https://github.com/zephyrproject-rtos/zephyr/actions/workflows/twister.yaml/badge.svg?event=push"></a>
<a href="https://bestpractices.coreinfrastructure.org/projects/74"><img
src="https://bestpractices.coreinfrastructure.org/projects/74/badge"></a>
<a
href="https://github.com/zephyrproject-rtos/zephyr/actions/workflows/twister.yaml?query=branch%3Amain">
<img
src="https://github.com/zephyrproject-rtos/zephyr/actions/workflows/twister.yaml/badge.svg?event=push"></a>
The Zephyr Project is a scalable real-time operating system (RTOS) supporting
@@ -24,7 +27,7 @@ resource-constrained systems: from simple embedded environmental sensors and
LED wearables to sophisticated smart watches and IoT wireless gateways.
The Zephyr kernel supports multiple architectures, including ARM (Cortex-A,
Cortex-R, Cortex-M), Intel x86, ARC, Tensilica Xtensa, and RISC-V,
Cortex-R, Cortex-M), Intel x86, ARC, Nios II, Tensilica Xtensa, and RISC-V,
SPARC, MIPS, and a large number of `supported boards`_.
.. below included in doc/introduction/introduction.rst

View File

@@ -1,26 +0,0 @@
version = 1
# Declare default license and copyright text for files that typically do not or cannot include them.
[[annotations]]
path = [
# zephyr-keep-sorted-start
"**/*.cfg",
"**/*.cmake",
"**/*.conf",
"**/*.ecl",
"**/*.html",
"**/*.json",
"**/*.rst",
"**/*.yaml",
"**/*.yml",
"**/*_defconfig",
"**/CMakeLists.txt",
"**/Kconfig*",
"doc/requirements.in",
"doc/requirements.txt",
"scripts/requirements-*.in",
"scripts/requirements-*.txt",
# zephyr-keep-sorted-stop
]
SPDX-License-Identifier = "Apache-2.0"
SPDX-FileCopyrightText = "Copyright The Zephyr Project Contributors"

View File

@@ -1 +1 @@
0.17.4
0.16.5

View File

@@ -1,5 +1,5 @@
VERSION_MAJOR = 4
VERSION_MINOR = 3
VERSION_MAJOR = 3
VERSION_MINOR = 6
PATCHLEVEL = 99
VERSION_TWEAK = 0
EXTRAVERSION =

View File

@@ -8,7 +8,7 @@
# Include these first so that any properties (e.g. defaults) below can be
# overridden (by defining symbols in multiple locations)
source "$(KCONFIG_BINARY_DIR)/arch/Kconfig"
source "$(ARCH_DIR)/Kconfig.$(HWM_SCHEME)"
# ToDo: Generate a Kconfig.arch for loading of additional arch in HWMv2.
osource "$(KCONFIG_BINARY_DIR)/Kconfig.arch"
@@ -24,7 +24,6 @@ config ARC
imply XIP
select ARCH_HAS_THREAD_LOCAL_STORAGE
select ARCH_SUPPORTS_ROM_START
select ARCH_HAS_DIRECTED_IPIS
help
ARC architecture
@@ -32,8 +31,6 @@ config ARM
bool
select ARCH_IS_SET
select ARCH_SUPPORTS_COREDUMP if CPU_CORTEX_M
select ARCH_SUPPORTS_COREDUMP_THREADS if CPU_CORTEX_M
select ARCH_SUPPORTS_COREDUMP_STACK_PTR if CPU_CORTEX_M
# FIXME: current state of the code for all ARM requires this, but
# is really only necessary for Cortex-M with ARM MPU!
select GEN_PRIV_STACKS
@@ -51,13 +48,8 @@ config ARM64
select ARCH_HAS_THREAD_LOCAL_STORAGE
select USE_SWITCH
select USE_SWITCH_SUPPORTED
select IRQ_OFFLOAD_NESTED if IRQ_OFFLOAD
select BARRIER_OPERATIONS_ARCH
select ARCH_HAS_DIRECTED_IPIS
select ARCH_HAS_DEMAND_PAGING
select ARCH_HAS_DEMAND_MAPPING
select ARCH_SUPPORTS_EVICTION_TRACKING
select EVICTION_TRACKING if DEMAND_PAGING
select MEM_DOMAIN_HAS_THREAD_LIST if ARM_MPU
help
ARM64 (AArch64) architecture
@@ -86,7 +78,6 @@ config X86
select ARCH_IS_SET
select ATOMIC_OPERATIONS_BUILTIN
select ARCH_SUPPORTS_COREDUMP
select ARCH_SUPPORTS_COREDUMP_PRIV_STACKS
select ARCH_SUPPORTS_ROM_START if !X86_64
select CPU_HAS_MMU
select ARCH_MEM_DOMAIN_DATA if USERSPACE && !X86_COMMON_PAGE_TABLE
@@ -94,34 +85,37 @@ config X86
select ARCH_HAS_GDBSTUB if !X86_64
select ARCH_HAS_TIMING_FUNCTIONS
select ARCH_HAS_THREAD_LOCAL_STORAGE
select ARCH_HAS_DEMAND_PAGING if !X86_64
select ARCH_HAS_DEMAND_MAPPING if ARCH_HAS_DEMAND_PAGING
select ARCH_HAS_DEMAND_PAGING
select IRQ_OFFLOAD_NESTED if IRQ_OFFLOAD
select NEED_LIBC_MEM_PARTITION if USERSPACE && TIMING_FUNCTIONS \
&& !BOARD_HAS_TIMING_FUNCTIONS \
&& !SOC_HAS_TIMING_FUNCTIONS
select ARCH_HAS_STACK_CANARIES_TLS
select ARCH_SUPPORTS_MEM_MAPPED_STACKS if X86_MMU && !DEMAND_PAGING
select ARCH_HAS_THREAD_PRIV_STACK_SPACE_GET if USERSPACE
help
x86 architecture
config NIOS2
bool
select ARCH_IS_SET
select ATOMIC_OPERATIONS_C
imply XIP
select ARCH_HAS_TIMING_FUNCTIONS
help
Nios II Gen 2 architecture
config RISCV
bool
select ARCH_IS_SET
select ATOMIC_OPERATIONS_C if !RISCV_ISA_EXT_A
select ATOMIC_OPERATIONS_BUILTIN if RISCV_ISA_EXT_A
select ARCH_SUPPORTS_COREDUMP
select ARCH_SUPPORTS_COREDUMP_PRIV_STACKS
select ARCH_SUPPORTS_ROM_START if !SOC_FAMILY_ESPRESSIF_ESP32
select ARCH_SUPPORTS_EMPTY_IRQ_SPURIOUS
select ARCH_SUPPORTS_ROM_START if !SOC_SERIES_ESP32C3
select ARCH_HAS_CODE_DATA_RELOCATION
select ARCH_HAS_THREAD_LOCAL_STORAGE
select IRQ_OFFLOAD_NESTED if IRQ_OFFLOAD
select USE_SWITCH_SUPPORTED
select USE_SWITCH
select SCHED_IPI_SUPPORTED if SMP
select ARCH_HAS_DIRECTED_IPIS
select BARRIER_OPERATIONS_BUILTIN
select ARCH_HAS_THREAD_PRIV_STACK_SPACE_GET if USERSPACE
imply XIP
help
RISCV architecture
@@ -130,15 +124,10 @@ config XTENSA
select ARCH_IS_SET
select USE_SWITCH
select USE_SWITCH_SUPPORTED
select IRQ_OFFLOAD_NESTED if IRQ_OFFLOAD
select ARCH_HAS_CODE_DATA_RELOCATION
select ARCH_HAS_TIMING_FUNCTIONS
select ARCH_MEM_DOMAIN_DATA if USERSPACE
select ARCH_HAS_DIRECTED_IPIS
select THREAD_STACK_INFO
select ARCH_HAS_THREAD_PRIV_STACK_SPACE_GET if USERSPACE
select ARCH_SUPPORTS_COREDUMP_STACK_PTR if !SMP
select ARCH_HAS_USERSPACE if XTENSA_MMU || XTENSA_MPU
imply ARCH_HAS_RESERVED_PAGE_FRAMES if XTENSA_MMU
help
Xtensa architecture
@@ -149,7 +138,6 @@ config ARCH_POSIX
select ARCH_HAS_CUSTOM_SWAP_TO_MAIN
select ARCH_HAS_CUSTOM_BUSY_WAIT
select ARCH_HAS_THREAD_ABORT
select ARCH_HAS_THREAD_NAME_HOOK
select NATIVE_BUILD
select HAS_COVERAGE_SUPPORT
select BARRIER_OPERATIONS_BUILTIN
@@ -158,15 +146,6 @@ config ARCH_POSIX
help
POSIX (native) architecture
config RX
bool
select ARCH_IS_SET
select ATOMIC_OPERATIONS_C
select USE_SWITCH
select USE_SWITCH_SUPPORTED
help
Renesas RX architecture
config ARCH_IS_SET
bool
help
@@ -188,9 +167,8 @@ config BIG_ENDIAN
Little-endian architecture is the default and should leave this option
unselected. This option is selected by arch/$ARCH/Kconfig,
soc/**/Kconfig, or boards/**/Kconfig and the user should generally avoid
modifying it. The option is used to select linker script OUTPUT_FORMAT,
the toolchain flags (TOOLCHAIN_C_FLAGS, TOOLCHAIN_LD_FLAGS), and command
line option for gen_isr_tables.py.
modifying it. The option is used to select linker script OUTPUT_FORMAT
and command line option for gen_isr_tables.py.
config LITTLE_ENDIAN
# Hidden Kconfig option representing the default little-endian architecture
@@ -224,21 +202,11 @@ config SRAM_BASE_ADDRESS
hex "SRAM Base Address"
default $(dt_chosen_reg_addr_hex,$(DT_CHOSEN_Z_SRAM))
help
The SRAM base address. The default value comes from
The SRAM base address. The default value comes from from
/chosen/zephyr,sram in devicetree. The user should generally avoid
changing it via menuconfig or in configuration files.
config XIP
bool "Execute in place"
help
This option allows zephyr to operate with its text and read-only
sections residing in ROM (or similar read-only memory). Not all boards
support this option so it must be used with care; you must also
supply a linker command file when building your image. Enabling this
option increases both the code and data footprint of the image.
if ARC || ARM || ARM64 || X86 || RISCV || RX || ARCH_POSIX
if ARC || ARM || ARM64 || NIOS2 || X86 || RISCV
# Workaround for not being able to have commas in macro arguments
DT_CHOSEN_Z_FLASH := zephyr,flash
@@ -246,7 +214,6 @@ DT_CHOSEN_Z_FLASH := zephyr,flash
config FLASH_SIZE
int "Flash Size in kB"
default $(dt_chosen_reg_size_int,$(DT_CHOSEN_Z_FLASH),0,K) if (XIP && (ARM ||ARM64)) || !ARM
default 0 if !XIP
help
This option specifies the size of the flash in kB. It is normally set by
the board's defconfig file and the user should generally avoid modifying
@@ -255,13 +222,12 @@ config FLASH_SIZE
config FLASH_BASE_ADDRESS
hex "Flash Base Address"
default $(dt_chosen_reg_addr_hex,$(DT_CHOSEN_Z_FLASH)) if (XIP && (ARM || ARM64)) || !ARM
default 0 if !XIP
help
This option specifies the base address of the flash on the board. It is
normally set by the board's defconfig file and the user should generally
avoid modifying it via the menu configuration.
endif # ARM || ARM64 || ARC || X86 || RISCV || RX || ARCH_POSIX
endif # ARM || ARM64 || ARC || NIOS2 || X86 || RISCV
if ARCH_HAS_TRUSTED_EXECUTION
@@ -324,21 +290,11 @@ config USERSPACE
privileged mode or handling a system call; to ensure these are always
caught, enable CONFIG_HW_STACK_PROTECTION.
config NOINIT_SNIPPET_FIRST
bool "Place the no-init linker script snippet first"
help
By default the include/zephyr/linker/common-noinit.ld file inserts the
snippets-noinit.ld file at the end of the section. There are times when
the directives in the snippets-noinit.ld file apply to the other directives
in this file. And in that case the include statement for the snippets-noinit.ld
file needs to come at the start of the section. This configuration option
allows that to happen.
config PRIVILEGED_STACK_SIZE
int "Size of privileged stack"
default 2048 if EMUL
default 1024
depends on USERSPACE
depends on ARCH_HAS_USERSPACE
help
This option sets the privileged stack region size that will be used
in addition to the user mode thread stack. During normal execution,
@@ -348,19 +304,18 @@ config PRIVILEGED_STACK_SIZE
config KOBJECT_TEXT_AREA
int "Size of kobject text area"
default 1024 if UBSAN
default 512 if COVERAGE_GCOV
default 512 if NO_OPTIMIZATIONS
default 512 if STACK_CANARIES && RISCV
default 256
depends on USERSPACE
depends on ARCH_HAS_USERSPACE
help
Size of kernel object text area. Used in linker script.
config KOBJECT_DATA_AREA_RESERVE_EXTRA_PERCENT
int "Reserve extra kobject data area (in percentage)"
default 100
depends on USERSPACE
depends on ARCH_HAS_USERSPACE
help
Multiplication factor used to calculate the size of placeholder to
reserve space for kobject metadata hash table. The hash table is
@@ -374,7 +329,7 @@ config KOBJECT_DATA_AREA_RESERVE_EXTRA_PERCENT
config KOBJECT_RODATA_AREA_EXTRA_BYTES
int "Reserve extra bytes for kobject rodata area"
default 16
depends on USERSPACE
depends on ARCH_HAS_USERSPACE
help
Reserve a few more bytes for the RODATA region for kobject metadata.
This is to account for the uncertainty of tables generated by gperf.
@@ -436,49 +391,22 @@ config NOCACHE_MEMORY
transfers when cache coherence issues are not optimal or can not
be solved using cache maintenance operations.
config FRAME_POINTER
bool "Compile the kernel with frame pointers"
select OVERRIDE_FRAME_POINTER_DEFAULT
help
Select Y here to gain precise stack traces at the expense of slightly
increased size and decreased speed.
config ARCH_STACKWALK
bool "Compile the stack walking function"
default y
depends on ARCH_HAS_STACKWALK
help
Select Y here to compile the `arch_stack_walk()` function
config ARCH_STACKWALK_MAX_FRAMES
int "Max depth for stack walk function"
default 8
depends on ARCH_STACKWALK
help
Depending on implementation, this can place a hard limit on the depths of the stack
for the stack walk function to examine.
menu "Interrupt Configuration"
config TOOLCHAIN_SUPPORTS_ISR_TABLES_LOCAL_DECLARATION
bool
help
Hidden option to signal that toolchain supports local declaration of
interrupt tables.
config ISR_TABLES_LOCAL_DECLARATION_SUPPORTED
bool
default y
# Userspace is currently not supported
depends on !USERSPACE
# List of currently supported architectures
depends on ARM || ARM64 || RISCV
depends on ARM || ARM64
# List of currently supported toolchains
depends on "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "zephyr" || "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "gnuarmemb" || "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "llvm" || TOOLCHAIN_SUPPORTS_ISR_TABLES_LOCAL_DECLARATION
depends on "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "zephyr" || "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "gnuarmemb"
config ISR_TABLES_LOCAL_DECLARATION
bool "ISR tables created locally and placed by linker"
bool "ISR tables created locally and placed by linker [EXPERIMENTAL]"
depends on ISR_TABLES_LOCAL_DECLARATION_SUPPORTED
select EXPERIMENTAL
help
Enable new scheme of interrupt tables generation.
This is totally different generator that would create tables entries locally
@@ -490,7 +418,6 @@ config ISR_TABLES_LOCAL_DECLARATION
config DYNAMIC_INTERRUPTS
bool "Installation of IRQs at runtime"
select SRAM_SW_ISR_TABLE
help
Enable installation of interrupts at runtime, which will move some
interrupt-related data structures to RAM instead of ROM, and
@@ -542,12 +469,6 @@ config ARCH_IRQ_VECTOR_TABLE_ALIGN
to be aligned to architecture specific size. The default
size is 0 for no alignment.
config ARCH_DEVICE_STATE_ALIGN
int "Alignment size of device state"
default 4
help
This option controls alignment size of device state.
choice IRQ_VECTOR_TABLE_TYPE
prompt "IRQ vector table type"
depends on GEN_IRQ_VECTOR_TABLE
@@ -608,30 +529,14 @@ config IRQ_OFFLOAD
run in interrupt context. Only useful for test cases that need
to validate the correctness of kernel objects in IRQ context.
config SRAM_VECTOR_TABLE
bool "Place the vector table in SRAM instead of flash"
depends on ARCH_HAS_VECTOR_TABLE_RELOCATION
depends on XIP
depends on !ROMSTART_RELOCATION_ROM
help
When XiP is enabled, this option will result in the vector table being
relocated from Flash to SRAM.
config SRAM_SW_ISR_TABLE
bool "Place the software ISR table in SRAM instead of flash"
help
The option specifies that the software interrupts vector table will be
placed inside SRAM instead of the flash.
config IRQ_OFFLOAD_NESTED
bool "irq_offload() supports nested IRQs"
depends on IRQ_OFFLOAD
default y if ARM64 || X86 || RISCV || XTENSA
help
When set by the platform layers, indicates that
irq_offload() may legally be called in interrupt context to
cause a synchronous nested interrupt on the current CPU.
Not all hardware is capable.
When set by the arch layer, indicates that irq_offload() may
legally be called in interrupt context to cause a
synchronous nested interrupt on the current CPU. Not all
hardware is capable.
config EXCEPTION_DEBUG
bool "Unhandled exception debugging"
@@ -663,14 +568,6 @@ config SIMPLIFIED_EXCEPTION_CODES
down to the generic K_ERR_CPU_EXCEPTION, which makes testing code
much more portable.
config EMPTY_IRQ_SPURIOUS
bool "Create empty spurious interrupt handler"
depends on ARCH_SUPPORTS_EMPTY_IRQ_SPURIOUS
help
This option changes body of spurious interrupt handler. When enabled,
handler contains only an infinite while loop, when disabled, handler
contains the whole Zephyr fault handling procedure.
endmenu # Interrupt configuration
config INIT_ARCH_HW_AT_BOOT
@@ -721,45 +618,31 @@ config ARCH_HAS_NOCACHE_MEMORY_SUPPORT
config ARCH_HAS_RAMFUNC_SUPPORT
bool
config ARCH_HAS_VECTOR_TABLE_RELOCATION
bool
config ARCH_HAS_NESTED_EXCEPTION_DETECTION
bool
config ARCH_SUPPORTS_COREDUMP
bool
config ARCH_SUPPORTS_COREDUMP_THREADS
bool
config ARCH_SUPPORTS_COREDUMP_PRIV_STACKS
bool
config ARCH_SUPPORTS_COREDUMP_STACK_PTR
bool
config ARCH_SUPPORTS_ARCH_HW_INIT
bool
config ARCH_SUPPORTS_ROM_START
bool
config ARCH_SUPPORTS_EMPTY_IRQ_SPURIOUS
bool
config ARCH_SUPPORTS_EVICTION_TRACKING
bool
help
Architecture code supports page tracking for eviction algorithms
when demand paging is enabled.
config ARCH_HAS_EXTRA_EXCEPTION_INFO
bool
config ARCH_HAS_GDBSTUB
bool
config ARCH_HAS_COHERENCE
bool
help
When selected, the architecture supports the
arch_mem_coherent() API and can link into incoherent/cached
memory using the ".cached" linker section.
config ARCH_HAS_THREAD_LOCAL_STORAGE
bool
@@ -771,19 +654,6 @@ config ARCH_HAS_SUSPEND_TO_RAM
config ARCH_HAS_STACK_CANARIES_TLS
bool
config ARCH_SUPPORTS_MEM_MAPPED_STACKS
bool
help
Select when the architecture supports memory mapped stacks.
config ARCH_HAS_THREAD_PRIV_STACK_SPACE_GET
bool
help
Select when the architecture implements arch_thread_priv_stack_space_get().
config ARCH_HAS_HW_SHADOW_STACK
bool
#
# Other architecture related options
#
@@ -849,13 +719,6 @@ config ARCH_HAS_DEMAND_PAGING
This hidden configuration should be selected by the architecture if
demand paging is supported.
config ARCH_HAS_DEMAND_MAPPING
bool
help
This hidden configuration should be selected by the architecture if
demand paging is supported and arch_mem_map() supports
K_MEM_MAP_UNPAGED.
config ARCH_HAS_RESERVED_PAGE_FRAMES
bool
help
@@ -864,13 +727,6 @@ config ARCH_HAS_RESERVED_PAGE_FRAMES
memory mappings. The architecture will need to implement
arch_reserved_pages_update().
config ARCH_HAS_DIRECTED_IPIS
bool
help
This hidden configuration should be selected by the architecture if
it has an implementation for arch_sched_directed_ipi() which allows
for IPIs to be directed to specific CPUs.
config CPU_HAS_DCACHE
bool
help
@@ -881,7 +737,7 @@ config CPU_CACHE_INCOHERENT
help
This hidden configuration should be selected when the CPU has
incoherent cache. This applies to intra-CPU multiprocessing
incoherence and makes only sense when MP_MAX_NUM_CPUS > 1.
incoherence and makes only sense when MP_NUM_CPUS > 1.
config CPU_HAS_ICACHE
bool
@@ -906,7 +762,7 @@ config ARCH_MAPS_ALL_RAM
virtual addresses elsewhere, this is limited to only management of the
virtual address space. The kernel's page frame ontology will not consider
this mapping at all; non-kernel pages will be considered free (unless marked
as reserved) and K_MEM_PAGE_FRAME_MAPPED will not be set.
as reserved) and Z_PAGE_FRAME_MAPPED will not be set.
config DCLS
bool "Processor is configured in DCLS mode"
@@ -1078,28 +934,16 @@ config ICACHE
help
This option enables the support for the instruction cache (i-cache).
config CACHE_HAS_MIRRORED_MEMORY_REGIONS
bool "Mirrored memory region(s) for both cached and uncached access"
depends on CPU_CACHE_INCOHERENT
help
Enable this if hardware has mirrored memory regions at different
addressed when accessing one would go through cache, but accessing
the other would go to memory directly. A pointer can be cheaply
converted to cached or uncached access.
This applies to intra-CPU multiprocessing incoherence and makes only
sense when MP_MAX_NUM_CPUS > 1.
config CACHE_DOUBLEMAP
bool "Cache double-mapping support"
select CACHE_HAS_MIRRORED_MEMORY_REGIONS
select DEPRECATED
depends on CPU_CACHE_INCOHERENT
default y
help
Double-mapping behavior where a pointer can be cheaply converted to
point to the same cached/uncached memory at different locations.
This applies to intra-CPU multiprocessing incoherence and makes only
sense when MP_MAX_NUM_CPUS > 1.
sense when MP_NUM_CPUS > 1.
config CACHE_MANAGEMENT
bool "Cache management features"
@@ -1108,12 +952,9 @@ config CACHE_MANAGEMENT
This option enables the cache management functions backed by arch or
driver code.
if CACHE_MANAGEMENT
if DCACHE
config DCACHE_LINE_SIZE_DETECT
bool "Detect d-cache line size at runtime"
depends on CACHE_MANAGEMENT && DCACHE
help
This option enables querying some architecture-specific hardware for
finding the d-cache line size at the expense of taking more memory and
@@ -1125,21 +966,18 @@ config DCACHE_LINE_SIZE_DETECT
config DCACHE_LINE_SIZE
int "d-cache line size"
depends on !DCACHE_LINE_SIZE_DETECT
default $(dt_node_int_prop_int,/cpus/cpu@0,d-cache-line-size) \
if $(dt_node_has_prop,/cpus/cpu@0,d-cache-line-size)
depends on CACHE_MANAGEMENT && DCACHE && !DCACHE_LINE_SIZE_DETECT
default 0
help
Size in bytes of a CPU d-cache line.
Size in bytes of a CPU d-cache line. If this is set to 0 the value is
obtained from the 'd-cache-line-size' DT property instead if present.
Detect automatically at runtime by selecting DCACHE_LINE_SIZE_DETECT.
endif # DCACHE
if ICACHE
config ICACHE_LINE_SIZE_DETECT
bool "Detect i-cache line size at runtime"
depends on CACHE_MANAGEMENT && ICACHE
help
This option enables querying some architecture-specific hardware for
finding the i-cache line size at the expense of taking more memory and
@@ -1151,19 +989,17 @@ config ICACHE_LINE_SIZE_DETECT
config ICACHE_LINE_SIZE
int "i-cache line size"
depends on !ICACHE_LINE_SIZE_DETECT
default $(dt_node_int_prop_int,/cpus/cpu@0,i-cache-line-size) \
if $(dt_node_has_prop,/cpus/cpu@0,i-cache-line-size)
depends on CACHE_MANAGEMENT && ICACHE && !ICACHE_LINE_SIZE_DETECT
default 0
help
Size in bytes of a CPU i-cache line.
Size in bytes of a CPU i-cache line. If this is set to 0 the value is
obtained from the 'i-cache-line-size' DT property instead if present.
Detect automatically at runtime by selecting ICACHE_LINE_SIZE_DETECT.
endif # ICACHE
choice CACHE_TYPE
prompt "Cache type"
depends on CACHE_MANAGEMENT
default ARCH_CACHE
config ARCH_CACHE
@@ -1171,14 +1007,6 @@ config ARCH_CACHE
help
Integrated on-core cache controller
config SOC_CACHE
bool "SoC specific cache controller"
depends on SOC_HAS_CACHE_FUNCTIONS
help
SoC specific cache controller.
This requires soc_cache.h file to exist in search path.
config EXTERNAL_CACHE
bool "External cache controller"
help
@@ -1186,16 +1014,6 @@ config EXTERNAL_CACHE
endchoice
config CACHE_CAN_SAY_MEM_COHERENCE
bool
help
sys_cache_is_mem_coherent() is defined when enabled. This function can be
used to determine if a pointer lies inside "coherence regions" and can be
safely used in multiprocessor code without explicit flush or invalidate
operations.
endif # CACHE_MANAGEMENT
endmenu
config ARCH
@@ -1209,40 +1027,9 @@ config TOOLCHAIN_HAS_BUILTIN_FFS
help
Hidden option to signal that toolchain has __builtin_ffs*().
config ARCH_HAS_CUSTOM_CPU_IDLE
bool
config ARCH_CPU_IDLE_CUSTOM
bool "Custom arch_cpu_idle implementation"
default n
help
This options allows applications to override the default arch idle implementation with
a custom one.
config ARCH_HAS_CUSTOM_CPU_ATOMIC_IDLE
bool
help
This options allows applications to override the default arch idle implementation with
a custom one.
config ARCH_HAS_CUSTOM_SWAP_TO_MAIN
bool
help
It's possible that an architecture port cannot use z_swap_unlocked()
to swap to the main thread (bg_thread_main), but instead must do
something custom. It must enable this option in that case.
config ARCH_HAS_CUSTOM_BUSY_WAIT
bool
help
It's possible that an architecture port cannot or does not want to use
the provided k_busy_wait(), but instead must do something custom. It must
enable this option in that case.
config ARCH_HAS_CUSTOM_CURRENT_IMPL
bool
help
Select when architecture implements arch_current_thread() &
arch_current_thread_set().
config ARCH_IPI_LAZY_COPROCESSORS_SAVE
bool
help
Select when the architecture has multi-CPU lazy context switching
of coprocessor registers.

5
arch/Kconfig.v1 Normal file
View File

@@ -0,0 +1,5 @@
# Copyright (c) 2023 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
# Note: $ARCH might be a glob pattern
source "$(ARCH_DIR)/$(ARCH)/Kconfig"

5
arch/Kconfig.v2 Normal file
View File

@@ -0,0 +1,5 @@
# Copyright (c) 2023 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
source "$(KCONFIG_BINARY_DIR)/arch/Kconfig"

View File

@@ -18,7 +18,6 @@ config CPU_ARCEM
config CPU_ARCHS
bool
select ATOMIC_OPERATIONS_BUILTIN
select BARRIER_OPERATIONS_BUILTIN
help
This option signifies the use of an ARC HS CPU
@@ -258,11 +257,11 @@ config ARC_CURRENT_THREAD_USE_NO_TLS
select CURRENT_THREAD_USE_NO_TLS
default y if (RGF_NUM_BANKS > 1) || ("$(ZEPHYR_TOOLCHAIN_VARIANT)" = "arcmwdt")
help
Disable current Thread Local Storage for ARC. For cores with more than one
RGF_NUM_BANKS the parameter is disabled by-default because banks synchronization
Disable current Thread Local Storage for ARC. For cores with more then one
RGF_NUM_BANKS the parameter is disabled by-default because banks syncronization
requires significant time, and it slows down performance.
ARCMWDT works with TLS pointer in different way then GCC. Optimized access to
TLS pointer via the _current symbol does not provide significant advantages
ARCMWDT works with tls pointer in different way then GCC. Optimized access to
TLS pointer via _current variable does not provide significant advantages
in case of MetaWare.
config GEN_ISR_TABLES
@@ -274,7 +273,7 @@ config GEN_IRQ_START_VECTOR
config HARVARD
bool "Harvard Architecture"
help
The ARC CPU can be configured to have two buses;
The ARC CPU can be configured to have two busses;
one for instruction fetching and another that serves as a data bus.
config CODE_DENSITY
@@ -343,15 +342,6 @@ config ARC_NORMAL_FIRMWARE
resources of the ARC processors, and, therefore, it shall avoid
accessing them.
config ARC_VPX_COOPERATIVE_SHARING
bool "Cooperative sharing of ARC VPX vector registers"
select SCHED_CPU_MASK if MP_MAX_NUM_CPUS > 1
help
This option enables the cooperative sharing of the ARC VPX vector
registers. Threads that want to use those registers must successfully
call arc_vpx_lock() before using them, and call arc_vpx_unlock()
when done using them.
source "arch/arc/core/dsp/Kconfig"
menu "ARC MPU Options"
@@ -370,28 +360,6 @@ endmenu
config DCACHE_LINE_SIZE
default 32
config ARC_DCACHE_REGION_OPERATIONS
bool "DCACHE region operations"
depends on CACHE_MANAGEMENT && DCACHE
default n
help
Perform L1 data cache management operations by regions rather than line by line in a loop,
improves performance of cache management operations.
config ARC_SLC
bool "System level cache"
depends on CACHE_MANAGEMENT && DCACHE && (CPU_HS4X || CPU_HS3X)
default n
help
This option enables System Level Cache, and adds SLC support to the data cache management operations.
config ARC_SLC_LINE_SIZE
int "SLC line size"
depends on ARC_SLC
default 128
help
Size in bytes of a CPU system level cache line.
config ARC_EXCEPTION_STACK_SIZE
int "ARC exception handling stack size"
default 768 if !64BIT
@@ -411,11 +379,6 @@ config ARC_EARLY_SOC_INIT
(before C runtime initialization). Setup code is called in form of
soc_early_asm_init_percpu assembler macro.
# ARC vector table must be aligned to 1KiB boundary, and will be at the
# start of the ROM region.
config ROM_START_OFFSET
default 0x400 if BOOTLOADER_MCUBOOT
config MAIN_STACK_SIZE
default 4096 if 64BIT

View File

@@ -8,6 +8,14 @@
__weak void *__dso_handle;
int __cxa_atexit(void (*destructor)(void *), void *objptr, void *dso)
{
ARG_UNUSED(destructor);
ARG_UNUSED(objptr);
ARG_UNUSED(dso);
return 0;
}
int atexit(void (*function)(void))
{
return 0;

View File

@@ -34,5 +34,3 @@ add_subdirectory_ifdef(CONFIG_ARC_CORE_MPU mpu)
add_subdirectory_ifdef(CONFIG_ARC_SECURE_FIRMWARE secureshield)
zephyr_linker_sources(ROM_START SORT_KEY 0x0vectors vector_table.ld)
zephyr_library_sources_ifdef(CONFIG_LLEXT elf.c)

View File

@@ -2,7 +2,6 @@
/*
* Copyright (c) 2016 Synopsys, Inc. All rights reserved.
* Copyright (c) 2025 GSI Technology, All rights reserved.
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -30,34 +29,16 @@
size_t sys_cache_line_size;
#endif
#define DC_CTRL_DC_ENABLE 0x0 /* enable d-cache */
#define DC_CTRL_DC_DISABLE 0x1 /* disable d-cache */
#define DC_CTRL_INVALID_ONLY 0x0 /* invalid d-cache only */
#define DC_CTRL_INVALID_FLUSH 0x40 /* invalid and flush d-cache */
#define DC_CTRL_ENABLE_FLUSH_LOCKED 0x80 /* locked d-cache can be flushed */
#define DC_CTRL_DISABLE_FLUSH_LOCKED 0x0 /* locked d-cache cannot be flushed */
#define DC_CTRL_FLUSH_STATUS 0x100 /* flush status */
#define DC_CTRL_DIRECT_ACCESS 0x0 /* direct access mode */
#define DC_CTRL_INDIRECT_ACCESS 0x20 /* indirect access mode */
#define DC_CTRL_OP_SUCCEEDED 0x4 /* d-cache operation succeeded */
#define DC_CTRL_INVALIDATE_MODE 0x40 /* d-cache invalidate mode bit */
#define DC_CTRL_REGION_OP 0xe00 /* d-cache region operation */
#define MMU_BUILD_PHYSICAL_ADDR_EXTENSION 0x1000 /* physical address extension enable mask */
#define SLC_CTRL_DISABLE 0x1 /* SLC disable */
#define SLC_CTRL_INVALIDATE_MODE 0x40 /* SLC invalidate mode */
#define SLC_CTRL_BUSY_STATUS 0x100 /* SLC busy status */
#define SLC_CTRL_REGION_OP 0xe00 /* SLC region operation */
#if defined(CONFIG_ARC_SLC)
/*
* spinlock is used for SLC access because depending on HW configuration, the SLC might be shared
* between the cores, and in this case, only one core is allowed to access the SLC register
* interface at a time.
*/
static struct k_spinlock slc_lock;
#endif
#define DC_CTRL_DC_ENABLE 0x0 /* enable d-cache */
#define DC_CTRL_DC_DISABLE 0x1 /* disable d-cache */
#define DC_CTRL_INVALID_ONLY 0x0 /* invalid d-cache only */
#define DC_CTRL_INVALID_FLUSH 0x40 /* invalid and flush d-cache */
#define DC_CTRL_ENABLE_FLUSH_LOCKED 0x80 /* locked d-cache can be flushed */
#define DC_CTRL_DISABLE_FLUSH_LOCKED 0x0 /* locked d-cache cannot be flushed */
#define DC_CTRL_FLUSH_STATUS 0x100/* flush status */
#define DC_CTRL_DIRECT_ACCESS 0x0 /* direct access mode */
#define DC_CTRL_INDIRECT_ACCESS 0x20 /* indirect access mode */
#define DC_CTRL_OP_SUCCEEDED 0x4 /* d-cache operation succeeded */
static bool dcache_available(void)
{
@@ -74,189 +55,9 @@ static void dcache_dc_ctrl(uint32_t dcache_en_mask)
}
}
static bool pae_exists(void)
{
uint32_t bcr = z_arc_v2_aux_reg_read(_ARC_V2_MMU_BUILD);
return 1 == FIELD_GET(MMU_BUILD_PHYSICAL_ADDR_EXTENSION, bcr);
}
#if defined(CONFIG_ARC_SLC)
static void slc_enable(void)
{
uint32_t val = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
val &= ~SLC_CTRL_DISABLE;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, val);
}
static void slc_high_addr_init(void)
{
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_END1, 0);
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_START1, 0);
}
static void slc_flush_region(void *start_addr_ptr, size_t size)
{
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
K_SPINLOCK(&slc_lock) {
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
ctrl &= ~SLC_CTRL_REGION_OP;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, ctrl);
/*
* END needs to be setup before START (latter triggers the operation)
* END can't be same as START, so add (l2_line_sz - 1) to sz
*/
end_addr = start_addr + size + CONFIG_ARC_SLC_LINE_SIZE - 1;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_END, end_addr);
/* Align start address to cache line size, see STAR 5103816 */
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_START,
start_addr & ~(CONFIG_ARC_SLC_LINE_SIZE - 1));
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
static void slc_invalidate_region(void *start_addr_ptr, size_t size)
{
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
K_SPINLOCK(&slc_lock) {
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
ctrl &= ~SLC_CTRL_INVALIDATE_MODE;
ctrl &= ~SLC_CTRL_REGION_OP;
ctrl |= FIELD_PREP(SLC_CTRL_REGION_OP, 0x1);
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, ctrl);
/*
* END needs to be setup before START (latter triggers the operation)
* END can't be same as START, so add (l2_line_sz - 1) to sz
*/
end_addr = start_addr + size + CONFIG_ARC_SLC_LINE_SIZE - 1;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_END, end_addr);
/* Align start address to cache line size, see STAR 5103816 */
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_START,
start_addr & ~(CONFIG_ARC_SLC_LINE_SIZE - 1));
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
static void slc_flush_and_invalidate_region(void *start_addr_ptr, size_t size)
{
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
K_SPINLOCK(&slc_lock) {
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
ctrl |= SLC_CTRL_INVALIDATE_MODE;
ctrl &= ~SLC_CTRL_REGION_OP;
ctrl |= FIELD_PREP(SLC_CTRL_REGION_OP, 0x1);
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, ctrl);
/*
* END needs to be setup before START (latter triggers the operation)
* END can't be same as START, so add (l2_line_sz - 1) to sz
*/
end_addr = start_addr + size + CONFIG_ARC_SLC_LINE_SIZE - 1;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_END, end_addr);
/* Align start address to cache line size, see STAR 5103816 */
z_arc_v2_aux_reg_write(_ARC_V2_SLC_RGN_START,
start_addr & ~(CONFIG_ARC_SLC_LINE_SIZE - 1));
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
static void slc_flush_all(void)
{
K_SPINLOCK(&slc_lock) {
z_arc_v2_aux_reg_write(_ARC_V2_SLC_FLUSH, 0x1);
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
static void slc_invalidate_all(void)
{
uint32_t ctrl;
K_SPINLOCK(&slc_lock) {
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
ctrl &= ~SLC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, ctrl);
z_arc_v2_aux_reg_write(_ARC_V2_SLC_INVALIDATE, 0x1);
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
static void slc_flush_and_invalidate_all(void)
{
uint32_t ctrl;
K_SPINLOCK(&slc_lock) {
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
ctrl |= SLC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_SLC_CTRL, ctrl);
z_arc_v2_aux_reg_write(_ARC_V2_SLC_INVALIDATE, 0x1);
/* Make sure "busy" bit reports correct status, see STAR 9001165532 */
z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL);
while (z_arc_v2_aux_reg_read(_ARC_V2_SLC_CTRL) & SLC_CTRL_BUSY_STATUS) {
/* Do Nothing */
}
}
}
#endif /* CONFIG_ARC_SLC */
void arch_dcache_enable(void)
{
dcache_dc_ctrl(DC_CTRL_DC_ENABLE);
#if defined(CONFIG_ARC_SLC)
slc_enable();
#endif
}
void arch_dcache_disable(void)
@@ -264,107 +65,17 @@ void arch_dcache_disable(void)
/* nothing */
}
#if defined(CONFIG_ARC_DCACHE_REGION_OPERATIONS)
static void dcache_high_addr_init(void)
{
z_arc_v2_aux_reg_write(_ARC_V2_DC_PTAG_HI, 0);
}
static void dcache_flush_region(void *start_addr_ptr, size_t size)
int arch_dcache_flush_range(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
unsigned int key;
key = arch_irq_lock(); /* --enter critical section-- */
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl &= ~DC_CTRL_REGION_OP;
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
end_addr = start_addr + size + line_size - 1;
z_arc_v2_aux_reg_write(_ARC_V2_DC_ENDR, end_addr);
z_arc_v2_aux_reg_write(_ARC_V2_DC_STARTR, start_addr);
while (z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL) & DC_CTRL_FLUSH_STATUS) {
/* Do nothing */
if (!dcache_available() || (size == 0U) || line_size == 0U) {
return -ENOTSUP;
}
arch_irq_unlock(key); /* --exit critical section-- */
}
static void dcache_invalidate_region(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
unsigned int key;
key = arch_irq_lock(); /* --enter critical section-- */
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl &= ~DC_CTRL_INVALIDATE_MODE;
ctrl &= ~DC_CTRL_REGION_OP;
ctrl |= FIELD_PREP(DC_CTRL_REGION_OP, 0x1);
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
end_addr = start_addr + size + line_size - 1;
z_arc_v2_aux_reg_write(_ARC_V2_DC_ENDR, end_addr);
z_arc_v2_aux_reg_write(_ARC_V2_DC_STARTR, start_addr);
arch_irq_unlock(key); /* --exit critical section-- */
}
static void dcache_flush_and_invalidate_region(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
uint32_t ctrl;
unsigned int key;
key = arch_irq_lock(); /* --enter critical section-- */
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl |= DC_CTRL_INVALIDATE_MODE;
ctrl &= ~DC_CTRL_REGION_OP;
ctrl |= FIELD_PREP(DC_CTRL_REGION_OP, 0x1);
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
end_addr = start_addr + size + line_size - 1;
z_arc_v2_aux_reg_write(_ARC_V2_DC_ENDR, end_addr);
z_arc_v2_aux_reg_write(_ARC_V2_DC_STARTR, start_addr);
while (z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL) & DC_CTRL_FLUSH_STATUS) {
/* Do nothing */
}
arch_irq_unlock(key); /* --exit critical section-- */
}
#else /* CONFIG_ARC_DCACHE_REGION_OPERATIONS */
static void dcache_flush_lines(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
unsigned int key;
end_addr = start_addr + size;
start_addr = ROUND_DOWN(start_addr, line_size);
@@ -387,81 +98,6 @@ static void dcache_flush_lines(void *start_addr_ptr, size_t size)
} while (start_addr < end_addr);
arch_irq_unlock(key); /* --exit critical section-- */
}
static void dcache_invalidate_lines(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
unsigned int key;
uint32_t ctrl;
end_addr = start_addr + size;
start_addr = ROUND_DOWN(start_addr, line_size);
key = arch_irq_lock(); /* -enter critical section- */
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl &= ~DC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
do {
z_arc_v2_aux_reg_write(_ARC_V2_DC_IVDL, start_addr);
__builtin_arc_nop();
__builtin_arc_nop();
__builtin_arc_nop();
start_addr += line_size;
} while (start_addr < end_addr);
irq_unlock(key); /* -exit critical section- */
}
static void dcache_flush_and_invalidate_lines(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
unsigned int key;
uint32_t ctrl;
end_addr = start_addr + size;
start_addr = ROUND_DOWN(start_addr, line_size);
key = arch_irq_lock(); /* -enter critical section- */
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl |= DC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
do {
z_arc_v2_aux_reg_write(_ARC_V2_DC_IVDL, start_addr);
__builtin_arc_nop();
__builtin_arc_nop();
__builtin_arc_nop();
start_addr += line_size;
} while (start_addr < end_addr);
irq_unlock(key); /* -exit critical section- */
}
#endif /* CONFIG_ARC_DCACHE_REGION_OPERATIONS */
int arch_dcache_flush_range(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
if (!dcache_available() || (size == 0U) || line_size == 0U) {
return -ENOTSUP;
}
#if defined(CONFIG_ARC_DCACHE_REGION_OPERATIONS)
dcache_flush_region(start_addr_ptr, size);
#else
dcache_flush_lines(start_addr_ptr, size);
#endif
#if defined(CONFIG_ARC_SLC)
slc_flush_region(start_addr_ptr, size);
#endif
return 0;
}
@@ -469,127 +105,48 @@ int arch_dcache_flush_range(void *start_addr_ptr, size_t size)
int arch_dcache_invd_range(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
uintptr_t start_addr = (uintptr_t)start_addr_ptr;
uintptr_t end_addr;
unsigned int key;
if (!dcache_available() || (size == 0U) || line_size == 0U) {
return -ENOTSUP;
}
end_addr = start_addr + size;
start_addr = ROUND_DOWN(start_addr, line_size);
#if defined(CONFIG_ARC_DCACHE_REGION_OPERATIONS)
dcache_invalidate_region(start_addr_ptr, size);
#else
dcache_invalidate_lines(start_addr_ptr, size);
#endif
key = arch_irq_lock(); /* -enter critical section- */
#if defined(CONFIG_ARC_SLC)
slc_invalidate_region(start_addr_ptr, size);
#endif
do {
z_arc_v2_aux_reg_write(_ARC_V2_DC_IVDL, start_addr);
__builtin_arc_nop();
__builtin_arc_nop();
__builtin_arc_nop();
start_addr += line_size;
} while (start_addr < end_addr);
irq_unlock(key); /* -exit critical section- */
return 0;
}
int arch_dcache_flush_and_invd_range(void *start_addr_ptr, size_t size)
{
size_t line_size = sys_cache_data_line_size_get();
if (!dcache_available() || (size == 0U) || line_size == 0U) {
return -ENOTSUP;
}
#if defined(CONFIG_ARC_DCACHE_REGION_OPERATIONS)
dcache_flush_and_invalidate_region(start_addr_ptr, size);
#else
dcache_flush_and_invalidate_lines(start_addr_ptr, size);
#endif
#if defined(CONFIG_ARC_SLC)
slc_flush_and_invalidate_region(start_addr_ptr, size);
#endif
return 0;
return -ENOTSUP;
}
int arch_dcache_flush_all(void)
{
size_t line_size = sys_cache_data_line_size_get();
unsigned int key;
if (!dcache_available() || line_size == 0U) {
return -ENOTSUP;
}
key = irq_lock();
z_arc_v2_aux_reg_write(_ARC_V2_DC_FLSH, 0x1);
while (z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL) & DC_CTRL_FLUSH_STATUS) {
/* Do nothing */
}
irq_unlock(key);
#if defined(CONFIG_ARC_SLC)
slc_flush_all();
#endif
return 0;
return -ENOTSUP;
}
int arch_dcache_invd_all(void)
{
size_t line_size = sys_cache_data_line_size_get();
unsigned int key;
uint32_t ctrl;
if (!dcache_available() || line_size == 0U) {
return -ENOTSUP;
}
key = irq_lock();
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl &= ~DC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
z_arc_v2_aux_reg_write(_ARC_V2_DC_IVDC, 0x1);
irq_unlock(key);
#if defined(CONFIG_ARC_SLC)
slc_invalidate_all();
#endif
return 0;
return -ENOTSUP;
}
int arch_dcache_flush_and_invd_all(void)
{
size_t line_size = sys_cache_data_line_size_get();
unsigned int key;
uint32_t ctrl;
if (!dcache_available() || line_size == 0U) {
return -ENOTSUP;
}
key = irq_lock();
ctrl = z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL);
ctrl |= DC_CTRL_INVALIDATE_MODE;
z_arc_v2_aux_reg_write(_ARC_V2_DC_CTRL, ctrl);
z_arc_v2_aux_reg_write(_ARC_V2_DC_IVDC, 0x1);
while (z_arc_v2_aux_reg_read(_ARC_V2_DC_CTRL) & DC_CTRL_FLUSH_STATUS) {
/* Do nothing */
}
irq_unlock(key);
#if defined(CONFIG_ARC_SLC)
slc_flush_and_invalidate_all();
#endif
return 0;
return -ENOTSUP;
}
#if defined(CONFIG_DCACHE_LINE_SIZE_DETECT)
@@ -667,24 +224,7 @@ static int init_dcache(void)
init_dcache_line_size();
#endif
/*
* Init high address registers to 0 if PAE exists, cache operations for 40 bit addresses not
* implemented
*/
if (pae_exists()) {
#if defined(CONFIG_ARC_DCACHE_REGION_OPERATIONS)
dcache_high_addr_init();
#endif
#if defined(CONFIG_ARC_SLC)
slc_high_addr_init();
#endif
}
return 0;
}
void arch_cache_init(void)
{
init_dcache();
}
SYS_INIT(init_dcache, PRE_KERNEL_1, CONFIG_KERNEL_INIT_PRIORITY_DEFAULT);

View File

@@ -26,7 +26,6 @@ SECTION_VAR(BSS, z_arc_cpu_sleep_mode)
.align 4
.word 0
#ifndef CONFIG_ARCH_HAS_CUSTOM_CPU_IDLE
/*
* @brief Put the CPU in low-power mode
*
@@ -49,9 +48,7 @@ SECTION_FUNC(TEXT, arch_cpu_idle)
sleep r1
j_s [blink]
nop
#endif
#ifndef CONFIG_ARCH_HAS_CUSTOM_CPU_ATOMIC_IDLE
/*
* @brief Put the CPU in low-power mode, entered with IRQs locked
*
@@ -59,7 +56,6 @@ SECTION_FUNC(TEXT, arch_cpu_idle)
*
* void arch_cpu_atomic_idle(unsigned int key)
*/
SECTION_FUNC(TEXT, arch_cpu_atomic_idle)
#ifdef CONFIG_TRACING
@@ -74,4 +70,3 @@ SECTION_FUNC(TEXT, arch_cpu_atomic_idle)
sleep r1
j_s.d [blink]
seti r0
#endif

View File

@@ -39,7 +39,7 @@ config ARC_XY_ENABLE
bool "ARC address generation unit registers"
help
Processors with XY memory and AGU registers can configure this
option to accelerate DSP instructions.
option to accelerate DSP instrctions.
config ARC_AGU_SHARING
bool "ARC address generation unit register sharing"

View File

@@ -1,118 +0,0 @@
/*
* Copyright (c) 2024 Intel Corporation
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/llext/elf.h>
#include <zephyr/llext/llext.h>
#include <zephyr/llext/llext_internal.h>
#include <zephyr/llext/loader.h>
#include <zephyr/logging/log.h>
#include <zephyr/sys/util.h>
LOG_MODULE_REGISTER(elf, CONFIG_LLEXT_LOG_LEVEL);
#define R_ARC_32 4
#define R_ARC_B26 5 /* AKA R_ARC_64 */
#define R_ARC_S25H_PCREL 16
#define R_ARC_S25W_PCREL 17
#define R_ARC_32_ME 27
/* ARCompact insns packed in memory have Middle Endian encoding */
#define ME(x) (((x & 0xffff0000) >> 16) | ((x & 0xffff) << 16))
/**
* @brief Architecture specific function for relocating shared elf
*
* Elf files contain a series of relocations described in multiple sections.
* These relocation instructions are architecture specific and each architecture
* supporting modules must implement this.
*
* The relocation codes are well documented:
* https://github.com/foss-for-synopsys-dwc-arc-processors/arc-ABI-manual/blob/master/ARCv2_ABI.pdf
* https://github.com/zephyrproject-rtos/binutils-gdb
*/
int arch_elf_relocate(struct llext_loader *ldr, struct llext *ext, elf_rela_t *rel,
const elf_shdr_t *shdr)
{
int ret = 0;
uint32_t value;
const uintptr_t loc = llext_get_reloc_instruction_location(ldr, ext, shdr->sh_info, rel);
uint32_t insn = UNALIGNED_GET((uint32_t *)loc);
elf_sym_t sym;
uintptr_t sym_base_addr;
const char *sym_name;
ret = llext_read_symbol(ldr, ext, rel, &sym);
if (ret != 0) {
LOG_ERR("Could not read symbol from binary!");
return ret;
}
sym_name = llext_symbol_name(ldr, ext, &sym);
ret = llext_lookup_symbol(ldr, ext, &sym_base_addr, rel, &sym, sym_name, shdr);
if (ret != 0) {
LOG_ERR("Could not find symbol %s!", sym_name);
return ret;
}
sym_base_addr += rel->r_addend;
int reloc_type = ELF32_R_TYPE(rel->r_info);
switch (reloc_type) {
case R_ARC_32:
case R_ARC_B26:
UNALIGNED_PUT(sym_base_addr, (uint32_t *)loc);
break;
case R_ARC_S25H_PCREL:
/* ((S + A) - P) >> 1
* S = symbol address
* A = addend
* P = relative offset to PCL
*/
value = (sym_base_addr + rel->r_addend - (loc & ~0x3)) >> 1;
insn = ME(insn);
/* disp25h */
insn = insn & ~0x7feffcf;
insn |= ((value >> 0) & 0x03ff) << 17;
insn |= ((value >> 10) & 0x03ff) << 6;
insn |= ((value >> 20) & 0x000f) << 0;
insn = ME(insn);
UNALIGNED_PUT(insn, (uint32_t *)loc);
break;
case R_ARC_S25W_PCREL:
/* ((S + A) - P) >> 2 */
value = (sym_base_addr + rel->r_addend - (loc & ~0x3)) >> 2;
insn = ME(insn);
/* disp25w */
insn = insn & ~0x7fcffcf;
insn |= ((value >> 0) & 0x01ff) << 18;
insn |= ((value >> 9) & 0x03ff) << 6;
insn |= ((value >> 19) & 0x000f) << 0;
insn = ME(insn);
UNALIGNED_PUT(insn, (uint32_t *)loc);
break;
case R_ARC_32_ME:
UNALIGNED_PUT(ME(sym_base_addr), (uint32_t *)loc);
break;
default:
LOG_ERR("unknown relocation: %u\n", reloc_type);
ret = -ENOEXEC;
break;
}
return ret;
}

View File

@@ -17,31 +17,32 @@
#include <zephyr/arch/cpu.h>
#include <zephyr/logging/log.h>
#include <kernel_arch_data.h>
#include <zephyr/arch/exception.h>
#include <zephyr/arch/arc/v2/exception.h>
#include <err_dump_handling.h>
LOG_MODULE_DECLARE(os, CONFIG_KERNEL_LOG_LEVEL);
#ifdef CONFIG_EXCEPTION_DEBUG
static void dump_arc_esf(const struct arch_esf *esf)
static void dump_arc_esf(const z_arch_esf_t *esf)
{
EXCEPTION_DUMP(" r0: 0x%" PRIxPTR " r1: 0x%" PRIxPTR " r2: 0x%" PRIxPTR
ARC_EXCEPTION_DUMP(" r0: 0x%" PRIxPTR " r1: 0x%" PRIxPTR " r2: 0x%" PRIxPTR
" r3: 0x%" PRIxPTR "", esf->r0, esf->r1, esf->r2, esf->r3);
EXCEPTION_DUMP(" r4: 0x%" PRIxPTR " r5: 0x%" PRIxPTR " r6: 0x%" PRIxPTR
ARC_EXCEPTION_DUMP(" r4: 0x%" PRIxPTR " r5: 0x%" PRIxPTR " r6: 0x%" PRIxPTR
" r7: 0x%" PRIxPTR "", esf->r4, esf->r5, esf->r6, esf->r7);
EXCEPTION_DUMP(" r8: 0x%" PRIxPTR " r9: 0x%" PRIxPTR " r10: 0x%" PRIxPTR
ARC_EXCEPTION_DUMP(" r8: 0x%" PRIxPTR " r9: 0x%" PRIxPTR " r10: 0x%" PRIxPTR
" r11: 0x%" PRIxPTR "", esf->r8, esf->r9, esf->r10, esf->r11);
EXCEPTION_DUMP("r12: 0x%" PRIxPTR " r13: 0x%" PRIxPTR " pc: 0x%" PRIxPTR "",
ARC_EXCEPTION_DUMP("r12: 0x%" PRIxPTR " r13: 0x%" PRIxPTR " pc: 0x%" PRIxPTR "",
esf->r12, esf->r13, esf->pc);
EXCEPTION_DUMP(" blink: 0x%" PRIxPTR " status32: 0x%" PRIxPTR "",
ARC_EXCEPTION_DUMP(" blink: 0x%" PRIxPTR " status32: 0x%" PRIxPTR "",
esf->blink, esf->status32);
#ifdef CONFIG_ARC_HAS_ZOL
EXCEPTION_DUMP("lp_end: 0x%" PRIxPTR " lp_start: 0x%" PRIxPTR
ARC_EXCEPTION_DUMP("lp_end: 0x%" PRIxPTR " lp_start: 0x%" PRIxPTR
" lp_count: 0x%" PRIxPTR "", esf->lp_end, esf->lp_start, esf->lp_count);
#endif /* CONFIG_ARC_HAS_ZOL */
}
#endif
void z_arc_fatal_error(unsigned int reason, const struct arch_esf *esf)
void z_arc_fatal_error(unsigned int reason, const z_arch_esf_t *esf)
{
#ifdef CONFIG_EXCEPTION_DEBUG
if (esf != NULL) {

View File

@@ -20,6 +20,7 @@
#include <zephyr/kernel_structs.h>
#include <zephyr/arch/common/exc_handle.h>
#include <zephyr/logging/log.h>
#include <err_dump_handling.h>
LOG_MODULE_DECLARE(os, CONFIG_KERNEL_LOG_LEVEL);
@@ -52,8 +53,9 @@ static const struct z_exc_handle exceptions[] = {
*/
static bool z_check_thread_stack_fail(const uint32_t fault_addr, uint32_t sp)
{
#if defined(CONFIG_MULTITHREADING)
uint32_t guard_end, guard_start;
#if defined(CONFIG_MULTITHREADING)
const struct k_thread *thread = _current;
if (!thread) {
@@ -88,6 +90,7 @@ static bool z_check_thread_stack_fail(const uint32_t fault_addr, uint32_t sp)
guard_end = thread->stack_info.start;
guard_start = guard_end - Z_ARC_STACK_GUARD_SIZE;
}
#endif /* CONFIG_MULTITHREADING */
/* treat any MPU exceptions within the guard region as a stack
* overflow.As some instrustions
@@ -98,7 +101,6 @@ static bool z_check_thread_stack_fail(const uint32_t fault_addr, uint32_t sp)
if (fault_addr < guard_end && fault_addr >= guard_start) {
return true;
}
#endif /* CONFIG_MULTITHREADING */
return false;
}
@@ -137,32 +139,32 @@ static void dump_protv_exception(uint32_t cause, uint32_t parameter)
{
switch (cause) {
case 0x0:
EXCEPTION_DUMP("Instruction fetch violation (%s)",
ARC_EXCEPTION_DUMP("Instruction fetch violation (%s)",
get_protv_access_err(parameter));
break;
case 0x1:
EXCEPTION_DUMP("Memory read protection violation (%s)",
ARC_EXCEPTION_DUMP("Memory read protection violation (%s)",
get_protv_access_err(parameter));
break;
case 0x2:
EXCEPTION_DUMP("Memory write protection violation (%s)",
ARC_EXCEPTION_DUMP("Memory write protection violation (%s)",
get_protv_access_err(parameter));
break;
case 0x3:
EXCEPTION_DUMP("Memory read-modify-write violation (%s)",
ARC_EXCEPTION_DUMP("Memory read-modify-write violation (%s)",
get_protv_access_err(parameter));
break;
case 0x10:
EXCEPTION_DUMP("Normal vector table in secure memory");
ARC_EXCEPTION_DUMP("Normal vector table in secure memory");
break;
case 0x11:
EXCEPTION_DUMP("NS handler code located in S memory");
ARC_EXCEPTION_DUMP("NS handler code located in S memory");
break;
case 0x12:
EXCEPTION_DUMP("NSC Table Range Violation");
ARC_EXCEPTION_DUMP("NSC Table Range Violation");
break;
default:
EXCEPTION_DUMP("unknown");
ARC_EXCEPTION_DUMP("unknown");
break;
}
}
@@ -171,46 +173,46 @@ static void dump_machine_check_exception(uint32_t cause, uint32_t parameter)
{
switch (cause) {
case 0x0:
EXCEPTION_DUMP("double fault");
ARC_EXCEPTION_DUMP("double fault");
break;
case 0x1:
EXCEPTION_DUMP("overlapping TLB entries");
ARC_EXCEPTION_DUMP("overlapping TLB entries");
break;
case 0x2:
EXCEPTION_DUMP("fatal TLB error");
ARC_EXCEPTION_DUMP("fatal TLB error");
break;
case 0x3:
EXCEPTION_DUMP("fatal cache error");
ARC_EXCEPTION_DUMP("fatal cache error");
break;
case 0x4:
EXCEPTION_DUMP("internal memory error on instruction fetch");
ARC_EXCEPTION_DUMP("internal memory error on instruction fetch");
break;
case 0x5:
EXCEPTION_DUMP("internal memory error on data fetch");
ARC_EXCEPTION_DUMP("internal memory error on data fetch");
break;
case 0x6:
EXCEPTION_DUMP("illegal overlapping MPU entries");
ARC_EXCEPTION_DUMP("illegal overlapping MPU entries");
if (parameter == 0x1) {
EXCEPTION_DUMP(" - jump and branch target");
ARC_EXCEPTION_DUMP(" - jump and branch target");
}
break;
case 0x10:
EXCEPTION_DUMP("secure vector table not located in secure memory");
ARC_EXCEPTION_DUMP("secure vector table not located in secure memory");
break;
case 0x11:
EXCEPTION_DUMP("NSC jump table not located in secure memory");
ARC_EXCEPTION_DUMP("NSC jump table not located in secure memory");
break;
case 0x12:
EXCEPTION_DUMP("secure handler code not located in secure memory");
ARC_EXCEPTION_DUMP("secure handler code not located in secure memory");
break;
case 0x13:
EXCEPTION_DUMP("NSC target address not located in secure memory");
ARC_EXCEPTION_DUMP("NSC target address not located in secure memory");
break;
case 0x80:
EXCEPTION_DUMP("uncorrectable ECC or parity error in vector memory");
ARC_EXCEPTION_DUMP("uncorrectable ECC or parity error in vector memory");
break;
default:
EXCEPTION_DUMP("unknown");
ARC_EXCEPTION_DUMP("unknown");
break;
}
}
@@ -219,54 +221,54 @@ static void dump_privilege_exception(uint32_t cause, uint32_t parameter)
{
switch (cause) {
case 0x0:
EXCEPTION_DUMP("Privilege violation");
ARC_EXCEPTION_DUMP("Privilege violation");
break;
case 0x1:
EXCEPTION_DUMP("disabled extension");
ARC_EXCEPTION_DUMP("disabled extension");
break;
case 0x2:
EXCEPTION_DUMP("action point hit");
ARC_EXCEPTION_DUMP("action point hit");
break;
case 0x10:
switch (parameter) {
case 0x1:
EXCEPTION_DUMP("N to S return using incorrect return mechanism");
ARC_EXCEPTION_DUMP("N to S return using incorrect return mechanism");
break;
case 0x2:
EXCEPTION_DUMP("N to S return with incorrect operating mode");
ARC_EXCEPTION_DUMP("N to S return with incorrect operating mode");
break;
case 0x3:
EXCEPTION_DUMP("IRQ/exception return fetch from wrong mode");
ARC_EXCEPTION_DUMP("IRQ/exception return fetch from wrong mode");
break;
case 0x4:
EXCEPTION_DUMP("attempt to halt secure processor in NS mode");
ARC_EXCEPTION_DUMP("attempt to halt secure processor in NS mode");
break;
case 0x20:
EXCEPTION_DUMP("attempt to access secure resource from normal mode");
ARC_EXCEPTION_DUMP("attempt to access secure resource from normal mode");
break;
case 0x40:
EXCEPTION_DUMP("SID violation on resource access (APEX/UAUX/key NVM)");
ARC_EXCEPTION_DUMP("SID violation on resource access (APEX/UAUX/key NVM)");
break;
default:
EXCEPTION_DUMP("unknown");
ARC_EXCEPTION_DUMP("unknown");
break;
}
break;
case 0x13:
switch (parameter) {
case 0x20:
EXCEPTION_DUMP("attempt to access secure APEX feature from NS mode");
ARC_EXCEPTION_DUMP("attempt to access secure APEX feature from NS mode");
break;
case 0x40:
EXCEPTION_DUMP("SID violation on access to APEX feature");
ARC_EXCEPTION_DUMP("SID violation on access to APEX feature");
break;
default:
EXCEPTION_DUMP("unknown");
ARC_EXCEPTION_DUMP("unknown");
break;
}
break;
default:
EXCEPTION_DUMP("unknown");
ARC_EXCEPTION_DUMP("unknown");
break;
}
}
@@ -274,7 +276,7 @@ static void dump_privilege_exception(uint32_t cause, uint32_t parameter)
static void dump_exception_info(uint32_t vector, uint32_t cause, uint32_t parameter)
{
if (vector >= 0x10 && vector <= 0xFF) {
EXCEPTION_DUMP("interrupt %u", vector);
ARC_EXCEPTION_DUMP("interrupt %u", vector);
return;
}
@@ -283,55 +285,55 @@ static void dump_exception_info(uint32_t vector, uint32_t cause, uint32_t parame
*/
switch (vector) {
case ARC_EV_RESET:
EXCEPTION_DUMP("Reset");
ARC_EXCEPTION_DUMP("Reset");
break;
case ARC_EV_MEM_ERROR:
EXCEPTION_DUMP("Memory Error");
ARC_EXCEPTION_DUMP("Memory Error");
break;
case ARC_EV_INS_ERROR:
EXCEPTION_DUMP("Instruction Error");
ARC_EXCEPTION_DUMP("Instruction Error");
break;
case ARC_EV_MACHINE_CHECK:
EXCEPTION_DUMP("EV_MachineCheck");
ARC_EXCEPTION_DUMP("EV_MachineCheck");
dump_machine_check_exception(cause, parameter);
break;
case ARC_EV_TLB_MISS_I:
EXCEPTION_DUMP("EV_TLBMissI");
ARC_EXCEPTION_DUMP("EV_TLBMissI");
break;
case ARC_EV_TLB_MISS_D:
EXCEPTION_DUMP("EV_TLBMissD");
ARC_EXCEPTION_DUMP("EV_TLBMissD");
break;
case ARC_EV_PROT_V:
EXCEPTION_DUMP("EV_ProtV");
ARC_EXCEPTION_DUMP("EV_ProtV");
dump_protv_exception(cause, parameter);
break;
case ARC_EV_PRIVILEGE_V:
EXCEPTION_DUMP("EV_PrivilegeV");
ARC_EXCEPTION_DUMP("EV_PrivilegeV");
dump_privilege_exception(cause, parameter);
break;
case ARC_EV_SWI:
EXCEPTION_DUMP("EV_SWI");
ARC_EXCEPTION_DUMP("EV_SWI");
break;
case ARC_EV_TRAP:
EXCEPTION_DUMP("EV_Trap");
ARC_EXCEPTION_DUMP("EV_Trap");
break;
case ARC_EV_EXTENSION:
EXCEPTION_DUMP("EV_Extension");
ARC_EXCEPTION_DUMP("EV_Extension");
break;
case ARC_EV_DIV_ZERO:
EXCEPTION_DUMP("EV_DivZero");
ARC_EXCEPTION_DUMP("EV_DivZero");
break;
case ARC_EV_DC_ERROR:
EXCEPTION_DUMP("EV_DCError");
ARC_EXCEPTION_DUMP("EV_DCError");
break;
case ARC_EV_MISALIGNED:
EXCEPTION_DUMP("EV_Misaligned");
ARC_EXCEPTION_DUMP("EV_Misaligned");
break;
case ARC_EV_VEC_UNIT:
EXCEPTION_DUMP("EV_VecUnit");
ARC_EXCEPTION_DUMP("EV_VecUnit");
break;
default:
EXCEPTION_DUMP("unknown");
ARC_EXCEPTION_DUMP("unknown");
break;
}
}
@@ -345,7 +347,7 @@ static void dump_exception_info(uint32_t vector, uint32_t cause, uint32_t parame
* invokes the user provided routine k_sys_fatal_error_handler() which is
* responsible for implementing the error handling policy.
*/
void z_arc_fault(struct arch_esf *esf, uint32_t old_sp)
void _Fault(z_arch_esf_t *esf, uint32_t old_sp)
{
uint32_t vector, cause, parameter;
uint32_t exc_addr = z_arc_v2_aux_reg_read(_ARC_V2_EFA);
@@ -385,9 +387,9 @@ void z_arc_fault(struct arch_esf *esf, uint32_t old_sp)
}
#ifdef CONFIG_EXCEPTION_DEBUG
EXCEPTION_DUMP("***** Exception vector: 0x%x, cause code: 0x%x, parameter 0x%x",
ARC_EXCEPTION_DUMP("***** Exception vector: 0x%x, cause code: 0x%x, parameter 0x%x",
vector, cause, parameter);
EXCEPTION_DUMP("Address 0x%x", exc_addr);
ARC_EXCEPTION_DUMP("Address 0x%x", exc_addr);
dump_exception_info(vector, cause, parameter);
#endif

View File

@@ -19,7 +19,7 @@
#include <zephyr/syscall.h>
#include <zephyr/arch/arc/asm-compat/assembler.h>
GTEXT(z_arc_fault)
GTEXT(_Fault)
GTEXT(__reset)
GTEXT(__memory_error)
GTEXT(__instruction_error)
@@ -99,11 +99,11 @@ _exc_entry:
_save_exc_regs_into_stack
/* sp is parameter of z_arc_fault */
/* sp is parameter of _Fault */
MOVR r0, sp
/* ilink is the thread's original sp */
MOVR r1, ilink
jl z_arc_fault
jl _Fault
_exc_return:
/* the exception cause must be fixed in exception handler when exception returns

View File

@@ -44,11 +44,11 @@ K_KERNEL_STACK_DEFINE(_firq_interrupt_stack, CONFIG_ARC_FIRQ_STACK_SIZE);
void z_arc_firq_stack_set(void)
{
#ifdef CONFIG_SMP
char *firq_sp = K_KERNEL_STACK_BUFFER(
char *firq_sp = Z_KERNEL_STACK_BUFFER(
_firq_interrupt_stack[z_arc_v2_core_id()]) +
CONFIG_ARC_FIRQ_STACK_SIZE;
#else
char *firq_sp = K_KERNEL_STACK_BUFFER(_firq_interrupt_stack) +
char *firq_sp = Z_KERNEL_STACK_BUFFER(_firq_interrupt_stack) +
CONFIG_ARC_FIRQ_STACK_SIZE;
#endif

View File

@@ -54,7 +54,7 @@ void arch_irq_offload(irq_offload_routine_t routine, const void *parameter)
}
/* need to be executed on every core in the system */
void arch_irq_offload_init(void)
int arc_irq_offload_init(void)
{
IRQ_CONNECT(IRQ_OFFLOAD_LINE, IRQ_OFFLOAD_PRIO, arc_irq_offload_handler, NULL, 0);
@@ -64,4 +64,8 @@ void arch_irq_offload_init(void)
* with generic irq_enable() but via z_arc_v2_irq_unit_int_enable().
*/
z_arc_v2_irq_unit_int_enable(IRQ_OFFLOAD_LINE);
return 0;
}
SYS_INIT(arc_irq_offload_init, POST_KERNEL, 0);

View File

@@ -26,7 +26,7 @@ GTEXT(_isr_wrapper)
GTEXT(_isr_demux)
#if defined(CONFIG_PM)
GTEXT(pm_system_resume)
GTEXT(z_pm_save_idle_exit)
#endif
/*
@@ -253,7 +253,7 @@ rirq_path:
st 0, [r1, _kernel_offset_to_idle] /* zero idle duration */
PUSHR blink
jl pm_system_resume
jl z_pm_save_idle_exit
POPR blink
_skip_pm_save_idle_exit:

View File

@@ -35,7 +35,5 @@ config ARC_MPU
select GEN_PRIV_STACKS if !(ARC_MPU_VER = 4 || ARC_MPU_VER = 8)
select MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT if !(ARC_MPU_VER = 4 || ARC_MPU_VER = 8)
select MPU_REQUIRES_NON_OVERLAPPING_REGIONS if (ARC_MPU_VER = 4 || ARC_MPU_VER = 8)
select ARCH_MEM_DOMAIN_SUPPORTS_ISOLATED_STACKS
select MEM_DOMAIN_ISOLATED_STACKS
help
Target has ARC MPU

View File

@@ -34,7 +34,7 @@ int arch_mem_domain_max_partitions_get(void)
/*
* Validate the given buffer is user accessible or not
*/
int arch_buffer_validate(const void *addr, size_t size, int write)
int arch_buffer_validate(void *addr, size_t size, int write)
{
return arc_core_mpu_buffer_validate(addr, size, write);
}

View File

@@ -207,7 +207,7 @@ int arc_core_mpu_get_max_domain_partition_regions(void)
/**
* @brief validate the given buffer is user accessible or not
*/
int arc_core_mpu_buffer_validate(const void *addr, size_t size, int write)
int arc_core_mpu_buffer_validate(void *addr, size_t size, int write)
{
/*
* For ARC MPU, smaller region number takes priority.
@@ -238,7 +238,7 @@ int arc_core_mpu_buffer_validate(const void *addr, size_t size, int write)
* This function provides the default configuration mechanism for the Memory
* Protection Unit (MPU).
*/
void arc_mpu_init(void)
static int arc_mpu_init(void)
{
uint32_t num_regions = get_num_regions();
@@ -246,6 +246,7 @@ void arc_mpu_init(void)
if (mpu_config.num_regions > num_regions) {
__ASSERT(0, "Request to configure: %u regions (supported: %u)\n",
mpu_config.num_regions, num_regions);
return -EINVAL;
}
/* Disable MPU */
@@ -277,7 +278,10 @@ void arc_mpu_init(void)
/* Enable MPU */
arc_core_mpu_enable();
return 0;
}
SYS_INIT(arc_mpu_init, PRE_KERNEL_1, CONFIG_KERNEL_INIT_PRIORITY_DEFAULT);
#endif /* ZEPHYR_ARCH_ARC_CORE_MPU_ARC_MPU_COMMON_INTERNAL_H_ */

View File

@@ -118,7 +118,7 @@ static inline bool _is_enabled_region(uint32_t r_index)
}
/**
* This internal function check if the given buffer is in the region
* This internal function check if the given buffer in in the region
*/
static inline bool _is_in_region(uint32_t r_index, uint32_t start, uint32_t size)
{

View File

@@ -779,7 +779,7 @@ int arc_core_mpu_get_max_domain_partition_regions(void)
/**
* @brief validate the given buffer is user accessible or not
*/
int arc_core_mpu_buffer_validate(const void *addr, size_t size, int write)
int arc_core_mpu_buffer_validate(void *addr, size_t size, int write)
{
int r_index;
int key = arch_irq_lock();
@@ -814,7 +814,7 @@ int arc_core_mpu_buffer_validate(const void *addr, size_t size, int write)
* This function provides the default configuration mechanism for the Memory
* Protection Unit (MPU).
*/
void arc_mpu_init(void)
static int arc_mpu_init(void)
{
uint32_t num_regions;
uint32_t i;
@@ -826,7 +826,7 @@ void arc_mpu_init(void)
__ASSERT(0,
"Request to configure: %u regions (supported: %u)\n",
mpu_config.num_regions, num_regions);
return;
return -EINVAL;
}
static_regions_num = 0U;
@@ -851,7 +851,7 @@ void arc_mpu_init(void)
MPU_DYNAMIC_REGION_AREAS_NUM) {
LOG_ERR("not enough dynamic regions %d",
dynamic_regions_num);
return;
return -EINVAL;
}
dyn_reg_info[dynamic_regions_num].index = i;
@@ -886,8 +886,10 @@ void arc_mpu_init(void)
/* Enable MPU */
arc_core_mpu_enable();
return;
return 0;
}
SYS_INIT(arc_mpu_init, PRE_KERNEL_1,
CONFIG_KERNEL_INIT_PRIORITY_DEFAULT);
#endif /* ZEPHYR_ARCH_ARC_CORE_MPU_ARC_MPU_V4_INTERNAL_H_ */

View File

@@ -156,7 +156,7 @@ static inline bool _is_enabled_region(uint32_t r_index)
}
/**
* This internal function check if the given buffer is in the region
* This internal function check if the given buffer in in the region
*/
static inline bool _is_in_region(uint32_t r_index, uint32_t start, uint32_t size)
{

Some files were not shown because too many files have changed in this diff Show More