Tree:
a6ab43aa88
backport-73945-to-v2.7-branch
backport-78976-to-v3.7-branch
backport-80768-to-v3.7-branch
backport-81533-to-v4.0-branch
backport-82072-to-v2.7-branch
backport-83355-to-v4.0-branch
backport-84509-to-v4.0-branch
backport-84908-to-v4.0-branch
backport-84955-to-v3.7-branch
backport-85353-to-v4.0-branch
backport-85407-to-v4.0-branch
backport-86218-to-v4.1-branch
backport-86534-to-v4.1-branch
backport-86662-to-v4.0-branch
backport-86662-to-v4.1-branch
backport-87066-to-v4.0-branch
backport-87080-to-v4.1-branch
backport-87152-to-v4.1-branch
backport-87235-to-v4.0-branch
backport-87871-to-v3.7-branch
backport-88082-to-v4.0-branch
backport-88082-to-v4.1-branch
backport-88315-to-v3.7-branch
backport-88315-to-v4.0-branch
backport-88406-to-v4.0-branch
backport-88560-to-v4.0-branch
backport-88631-to-v4.0-branch
backport-88631-to-v4.1-branch
backport-88635-to-v4.0-branch
backport-88635-to-v4.1-branch
backport-89385-to-v4.1-branch
backport-89525-to-v4.1-branch
backport-89534-to-v4.1-branch
backport-89982-to-v4.0-branch
backport-89982-to-v4.1-branch
backport-90716-to-v4.0-branch
backport-90747-to-v4.1-branch
backport-90990-to-v3.7-branch
backport-90990-to-v4.1-branch
backport-91294-to-v4.1-branch
backport-91430-to-v4.1-branch
backport-91949-to-v3.7-branch
backport-91949-to-v4.0-branch
backport-91949-to-v4.1-branch
backport-92569-to-v4.1-branch
collab-hwm
collab-init
collab-mesh-subnet
collab-rust
collab-safety
collab-sdk-0.18-dev
collab-sdk-dev
main
v1.10-branch
v1.11-branch
v1.12-branch
v1.13-branch
v1.14-branch
v1.5-branch
v1.6-branch
v1.7-branch
v1.8-branch
v1.9-branch
v2.0-branch
v2.1-branch
v2.2-branch
v2.3-branch
v2.4-branch
v2.5-branch
v2.6-branch
v2.7-auditable-branch
v2.7-branch
v3.0-branch
v3.1-branch
v3.2-branch
v3.3-branch
v3.4-branch
v3.5-branch
v3.6-branch
v3.7-branch
v4.0-branch
v4.1-branch
v1.0.0
v1.1.0
v1.1.0-rc1
v1.10.0
v1.10.0-rc1
v1.10.0-rc2
v1.10.0-rc3
v1.11.0
v1.11.0-rc1
v1.11.0-rc2
v1.11.0-rc3
v1.12.0
v1.12.0-rc1
v1.12.0-rc2
v1.12.0-rc3
v1.13.0
v1.13.0-rc1
v1.13.0-rc2
v1.13.0-rc3
v1.14.0
v1.14.0-rc1
v1.14.0-rc2
v1.14.0-rc3
v1.14.1
v1.14.1-rc1
v1.14.1-rc2
v1.14.1-rc3
v1.14.2
v1.14.3
v1.14.3-rc1
v1.14.3-rc2
v1.2.0
v1.2.0-rc1
v1.2.0-rc2
v1.3.0
v1.3.0-rc1
v1.3.0-rc2
v1.4.0
v1.4.0-rc1
v1.4.0-rc2
v1.4.0-rc3
v1.5.0
v1.5.0-rc0
v1.5.0-rc1
v1.5.0-rc2
v1.5.0-rc3
v1.5.0-rc4
v1.6.0
v1.6.0-rc1
v1.6.0-rc2
v1.6.0-rc3
v1.6.0-rc4
v1.6.1
v1.6.1-rc
v1.6.99
v1.7.0
v1.7.0-rc1
v1.7.0-rc2
v1.7.0-rc3
v1.7.0-rc4
v1.7.1
v1.7.1-rc
v1.7.99
v1.8.0
v1.8.0-rc1
v1.8.0-rc2
v1.8.0-rc3
v1.8.0-rc4
v1.8.99
v1.9.0
v1.9.0-rc1
v1.9.0-rc2
v1.9.0-rc3
v1.9.0-rc4
v1.9.1
v1.9.2
v2.0.0
v2.0.0-rc1
v2.0.0-rc2
v2.0.0-rc3
v2.1.0
v2.1.0-rc1
v2.1.0-rc2
v2.1.0-rc3
v2.2.0
v2.2.0-rc1
v2.2.0-rc2
v2.2.0-rc3
v2.2.1
v2.3.0
v2.3.0-rc1
v2.3.0-rc2
v2.4.0
v2.4.0-rc1
v2.4.0-rc2
v2.4.0-rc3
v2.5.0
v2.5.0-rc1
v2.5.0-rc2
v2.5.0-rc3
v2.5.0-rc4
v2.5.1-rc1
v2.6.0
v2.6.0-rc1
v2.6.0-rc2
v2.6.0-rc3
v2.6.1-rc1
v2.6.1-rc2
v2.7.0
v2.7.0-rc1
v2.7.0-rc2
v2.7.0-rc3
v2.7.0-rc4
v2.7.0-rc5
v2.7.1
v2.7.2
v2.7.2-rc1
v2.7.3
v2.7.4
v2.7.5
v2.7.6
v2.7.99
v3.0.0
v3.0.0-rc1
v3.0.0-rc2
v3.0.0-rc3
v3.1.0
v3.1.0-rc1
v3.1.0-rc2
v3.1.0-rc3
v3.2.0
v3.2.0-rc1
v3.2.0-rc2
v3.2.0-rc3
v3.3.0
v3.3.0-rc1
v3.3.0-rc2
v3.3.0-rc3
v3.4.0
v3.4.0-rc1
v3.4.0-rc2
v3.4.0-rc3
v3.5.0
v3.5.0-rc1
v3.5.0-rc2
v3.5.0-rc3
v3.6.0
v3.6.0-rc1
v3.6.0-rc2
v3.6.0-rc3
v3.7.0
v3.7.0-rc1
v3.7.0-rc2
v3.7.0-rc3
v3.7.1
v3.7.1-rc1
v4.0.0
v4.0.0-rc1
v4.0.0-rc2
v4.0.0-rc3
v4.1.0
v4.1.0-rc1
v4.1.0-rc2
v4.1.0-rc3
v4.2.0-rc1
v4.2.0-rc2
zephyr-v1.0.0
zephyr-v1.1.0
zephyr-v1.10.0
zephyr-v1.11.0
zephyr-v1.12.0
zephyr-v1.13.0
zephyr-v1.14.0
zephyr-v1.14.1
zephyr-v1.2.0
zephyr-v1.3.0
zephyr-v1.4.0
zephyr-v1.5.0
zephyr-v1.6.0
zephyr-v1.6.1
zephyr-v1.7.0
zephyr-v1.7.1
zephyr-v1.8.0
zephyr-v1.9.0
zephyr-v1.9.1
zephyr-v1.9.2
zephyr-v2.0.0
zephyr-v2.1.0
zephyr-v2.2.0
zephyr-v2.2.1
zephyr-v2.3.0
zephyr-v2.4.0
zephyr-v2.5.0
zephyr-v2.6.0
zephyr-v2.7.0
zephyr-v2.7.1
zephyr-v2.7.2
zephyr-v2.7.3
zephyr-v3.0.0
zephyr-v3.1.0
zephyr-v3.2.0
zephyr-v3.3.0
zephyr-v3.4.0
zephyr-v3.5.0
${ noResults }
224 Commits (a6ab43aa888b13d72ea3b7e51a6fb6f4c294d9f0)
Author | SHA1 | Message | Date |
---|---|---|---|
|
5fabd3634a |
CMake: Add support for .mot binary file format
The Renesas RX support flashing .mot file for binary image This commit target to add the .mot file output for build and flash script Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com> |
2 months ago |
|
a085cfcd99 |
arch: add dependencie for CONFIG_SRAM_VECTOR_TABLE
Move SRAM_VECTOR_TABLE symbol from general Kconfig to Arch Kconfig because it depends on the architecture possibility to relocate the vector table. Signed-off-by: Martin Hoff <martin.hoff@silabs.com> |
2 months ago |
|
8d3dcd79f4 |
logging: Added config to disable vla in statements
The config LOG_USE_VLA depends on that MISRA_SANE is not set. Unfortunately the IAR toolchain can't handle vla:s inside a statement, which the LOG_USE_VLA macro does. I've added a new, hidden config to check if vla is ok inside statements, SUPPORT_VLA_IN_STATEMENTS. Default is always y, but a toolchain can override it so that VLA is not used by Z_LOG_MSG_ON_STACK_ALLOC. Signed-off-by: Lars-Ove Karlsson <lars-ove.karlsson@iar.com> |
4 months ago |
|
e0a9bd7312 |
Revert "kconfig: Don't USE_DT_CODE_PARTITION if there isn't one"
This reverts commit
|
5 months ago |
|
1440f5c19c |
kconfig: Don't USE_DT_CODE_PARTITION if there isn't one
Previously, if there was no `zephyr,code-partition` chosen DT node, then enabling CONFIG_USE_DT_CODE_PARTITION would make all of flash available to the linker, with no immediate indication of that to the user. To avoid this discrepancy, make the USE_DT_CODE_PARTITION Kconfig symbol depend on that chosen node being present. For the sake of verbosity, add a dedicated symbol to describe this: HAS_DT_CODE_PARTITION. An additional benefit is that certain platforms or applications can now use `select USE_DT_CODE_PARTITION` to signal `zephyr,code-partition` as a hard requirement, by failing the build whenever the node is missing. Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no> |
6 months ago |
|
47b4e4c2fb |
UF2: Enable support for Raspberry Pi RP2350
Add UF2 Family ID for Raspberry Pi 2350 and build UF2 image by default for Pico 2 board Signed-off-by: Ryan Grachek <grachek@gmail.com> Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com> |
7 months ago |
|
cc4a985316 |
soc: rp2350: Add initial support for the Raspberry Pi RP2350
RP2350 is Raspberry Pi's newest SoC. From the datasheet: "RP2350 is a new family of microcontrollers from Raspberry Pi that offers significant enhancements over RP2040. Key features include: • Dual Cortex-M33 or Hazard3 processors at 150 MHz • 520 kB on-chip SRAM, in 10 independent banks • 8 kB of one-time-programmable storage (OTP) • Up to 16 MB of external QSPI flash/PSRAM via dedicated QSPI bus ... " This commit introduces some changes to support the existing RP2040 and what is describe by Raspberry Pi as the "RP2350 family". Currently there are 4 published products in the family: RP2350A, RP2350B, RP2354A, and RP2354A. Within Zephyr's taxonomy, split the configuration as follows: Family: Raspberry Pi Pico. This contains all RP2XXX SoCs, SoC Series: RP2040 and RP2350. SoC: RP2040 and, for now, just the RP2350A, which is present on the Pico 2, where the A suffix indicates QFN-60 package type. This structure is reflected in `soc/raspberrypi/soc.yml`, and somewhat assumes that there won't be a RP2050, for example, as a RP2040 with more RAM. This is foundation work ahead of introducing support for Raspberry Pi's Pico 2 board, which is fitted with a RP2350A and 4MB of flash. Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com> Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org> |
7 months ago |
|
2e8868c16e |
cmake: deprecate BUILD_NO_GAP_FILL and introduce type specific gap fill
Deprecate BUILD_NO_GAP_FILL as it gives a false impression that gap filling can be disabled in binary files. Binary files are always gap filled due to the fact they contain no address information. Only option for binary files is to control the gap fill pattern. When no gap fill is enabled in binary files, then a default pattern is used by the tool, which usually is 0x00. Generally the pattern 0x00 leads to unnecessary flash writes, as a flash generally contains 0xFF after an erase. Therefore provide a gap fill pattern Kconfig setting instead, with default value of 0xFF. For hex-files, intel hex and s19, then gap filling is generally not needed but in order to still support cases where gap filling is required then this commit introduces BUILD_OUTPUT_HEX_GAP_FILL and BUILD_OUTPUT_S19_GAP_FILL. Both settings are disabled per default. Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no> |
7 months ago |
|
1f5fbe231a |
kconfig: assume the host libc provides POSIX reentrant functions
This change is needed to avoid including Zephyr-specific implementations of POSIX reentrant functions while building natively. One can safely assume that the host libc indeed provides its own implementations of the said functions. Signed-off-by: Ilya Tagunov <Ilya.Tagunov@synopsys.com> |
8 months ago |
|
c4b7b684dc |
boards native: Deprecate CONFIG_NATIVE_APPLICATION
This option is used in tree only by native_posix, which is deprecated and being replaced by native_sim. But may be used also in out of tree targets. As part of the native_posix deprecation, and therefore the lack of testing this feature would have in the future, we are also deprecating this option. Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no> |
8 months ago |
|
c9f3690ed4 |
kconfig: Remove deprecated option BOOTLOADER_SRAM_SIZE
Removes BOOTLOADER_SRAM_SIZE which was deprecated with Zephyr 3.6 Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no> |
8 months ago |
|
2fd8cc8d88 |
linker: lto: Remove experimental label
LTO support was added with Zephyr 3.6.0, and it has been used in production with Nordic devices for a long time. Remove the experimental label to mark it ready for production. Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no> |
8 months ago |
|
536d34fa7a |
cmake: scripts: support board extension
Fixes: #69548 Support extending an existing board with new board variants. This commit introduces the following changes to allow a board to be extended out-of-tree. The board yaml schema is extended to support an extend field which will be used to identify the board to be extended. A board 'plank' can be extended like this: > board: > extend: plank > variants: > - name: ext > qualifier: soc1 For the rest of the build system this means that there is no longer a single board directory. The existing CMake variable BOARD_DIR is kept and reference the directory which defines the board. A new CMake variable BOARD_DIRECTORIES provides a list of all directories which defines board targets for the board. This means the directory which defines the board as well as all directories that extends the board. Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no> |
9 months ago |
|
1e4fd23e58 |
kernel: mmu: install demand mappings for the on-demand linker sections
This sets initial unpaged mappings for __ondemand_func code and __ondemand_rodata variables. To achieve this, we have to augment the backing store API. Signed-off-by: Nicolas Pitre <npitre@baylibre.com> |
10 months ago |
|
cbbd8579b8 |
linker: introduce on-demand linker section tags
This provides __ondemand_func and __ondemand_rodata tags for annotating functions and read-only data that should be loaded on demand so not to exhaust all available RAM. The demand paging mechanism will be leveraged to load so designated code/data as needed and to evict it from memory when unused. Signed-off-by: Nicolas Pitre <npitre@baylibre.com> |
10 months ago |
|
87f68b4dfe |
arm64: linker: move data section between rodata and bss
Having .data after .bss creates a big empty gap in zephyr.bin to provide proper offset for the data section. Reversing them allows for dropping .bss from zephyr.bin's output as it is typically done, saving precious flash memory space. For demonstration purpose, let's consider those changes: |--- a/samples/hello_world/src/main.c |+++ b/samples/hello_world/src/main.c |@@ -6,9 +6,12 @@ | | #include <stdio.h> | |+int dummybuf[1024 * 1024]; |+ | int main(void) | { | printf("Hello World! %s\n", CONFIG_BOARD_TARGET); |+ dummybuf[0] = 42; | | return 0; | } Before this commit: $ ls -l build/zephyr/zephyr.bin -rwxr-xr-x 1 nico nico 4561908 Aug 2 15:13 build/zephyr/zephyr.bin* After this commit: $ ls -l build/zephyr/zephyr.bin -rwxr-xr-x 1 nico nico 37028 Aug 2 15:17 build/zephyr/zephyr.bin* While at it, remove some more repetitive comments with no value. Also defaults CONFIG_LINKER_LAST_SECTION_ID to n as it otherwise screws everything up for the same reason as above. Signed-off-by: Nicolas Pitre <npitre@baylibre.com> |
10 months ago |
|
50145bbf61 |
Kconfig: Link to deprecation instructions
Let's link from the deprecated instructions. To increase visibility and hopefully avoid developers forgetting to do so. Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no> |
11 months ago |
|
f2dc4a0ecf |
cmake: Adjust LMA for user-specified sections
Fixes #64149 Add support for a new Kconfig symbol: BUILD_OUTPUT_ADJUST_LMA_SECTIONS. This is supplemental to the existing BUILD_OUTPUT_ADJUST_LMA setting, which normally adjusts all output sections' LMA by the provided offset. Defining the new symbol will narrow down the set of applicable sections to a user-specified CMake list of name patterns. Example usage: DT_CHOSEN_Z_FLASH = zephyr,flash DT_CHOSEN_Z_SRAM = zephyr,sram config BUILD_OUTPUT_ADJUST_LMA default "$(dt_chosen_reg_addr_hex,$(DT_CHOSEN_Z_FLASH)) - \ $(dt_chosen_reg_addr_hex,$(DT_CHOSEN_Z_SRAM))" config BUILD_OUTPUT_ADJUST_LMA_SECTIONS default "*;!bss;!noinit" Supported values for BUILD_OUTPUT_ADJUST_LMA_SECTIONS are aligned with objcopy, since this feature has only been supported with GNU binutils thus far. Signed-off-by: Grzegorz Swiderski <grzegorz.swiderski@nordicsemi.no> |
11 months ago |
|
dfdebc9cef |
kconfig: Add variables for integer constants
Add a Kconfig.constants file that defines variables for different known integer minimum and maximum values. Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be> |
12 months ago |
|
eaa903d852 |
kconfig: llvm: Set default opt level to -Oz when building with LLVM
Experimentally, -Oz seems to give size results closer to GCC's -Os (though GCC does now support -Oz as well). Set -Oz as the default for LLVM to give the better codesize. Signed-off-by: Jonathon Penix <jpenix@quicinc.com> |
1 year ago |
|
d6041d62b3 |
cmake: kconfig: Add new abstraction for -Oz optimization level
Both Clang [1] and (recently) GCC [2] support this flag to enable additional codesize optimizations beyond -Os, possibly at the expense of performance. This tradeoff is worthwhile for some (and, Clang's -Oz seems to be closer to GCC's -Os currently), so add a new abstraction for this flag so users can select it as appropriate. [1] https://clang.llvm.org/docs/CommandGuide/clang.html#cmdoption-O0 [2] https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-Oz Signed-off-by: Jonathon Penix <jpenix@quicinc.com> |
1 year ago |
|
bbe5e1e6eb |
build: namespace the generated headers with `zephyr/`
Namespaced the generated headers with `zephyr` to prevent potential conflict with other headers. Introduce a temporary Kconfig `LEGACY_GENERATED_INCLUDE_PATH` that is enabled by default. This allows the developers to continue the use of the old include paths for the time being until it is deprecated and eventually removed. The Kconfig will generate a build-time warning message, similar to the `CONFIG_TIMER_RANDOM_GENERATOR`. Updated the includes path of in-tree sources accordingly. Most of the changes here are scripted, check the PR for more info. Signed-off-by: Yong Cong Sin <ycsin@meta.com> |
1 year ago |
|
265da0df86 |
buildsystem: Add an option to compress debug sections
Compressing debug sections can reduce the output ELF file size substantially. Signed-off-by: Noah Pendleton <noah.pendleton@gmail.com> |
1 year ago |
|
a2b866e6fd |
linker: Move iterable subalign value from header to kconfig
Add a Kconfig option for iterable section subalignment. Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be> |
1 year ago |
|
a599ed13a1 |
kconfig: Add symbols for GNU C Extensions
Add a symbol to enable GNU C Extensions. And a hidden option for toolchains to signal GNU Extensions support. Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be> |
1 year ago |
|
86b721c45e |
kconfig: Add symbols for C standard
Add symbols to select a C standard. Next to an option, hidden symbols are available to select the minimum. This allows subsystems or modules to select the least compliant C standard supported. Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be> |
1 year ago |
|
fb7e9379e1 |
cmake: add control over inline source code disassembly
By default, the generated disassembly file (i.e: the .lst file) also contains inline source code. This has the potential to become problematic when attempting to compare the generated .lst files accross platforms since they may differ for various reasons. As such, add the option to control whether the disassembly file should contain inline source code or not. The need for this patch was sparked by the differences observed in the generated .lst file for Linux and Windows in one of SOF's CI jobs (details in thesofproject/sof/issues/9034), which were caused by the addition of the inline source code. With this, we can keep testing for reproducible builds while not having to deal with differences in the .lst files caused by things such as having ".." include paths. Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com> |
1 year ago |
|
8261a4bf9e |
kconfig: fix Kconfig documentation references to the CHECKIF() macro
Fix the references to the CHECKIF() from the Kconfig help documentation strings. Signed-off-by: Henrik Brix Andersen <hebad@vestas.com> |
1 year ago |
|
a54f3832f5 |
kconfig.zephyr: Remove ESP_IDF bootloader option
Remove ESP_IDF bootloader option. Default boot method is simple boot. Signed-off-by: Marek Matej <marek.matej@espressif.com> |
1 year ago |
|
75a3805c8b |
kconfig: lto: Disable when data relocation is enabled
As per issue #69730, building arch.shared_interrupt.lto and kernel.common.lto for mimxrt685_evk or mimxrt595_evk/mimxrt595s/cm33 is currently broken due to their usage of CONFIG_CODE_DATA_RELOCATION. This commit disables LTO when CODE_DATA_RELOCATION is enabled, allowing PRs with changes in the kernel code to pass the CI check. On the down side, builds affected by this change produce a new warning: > warning: LTO (defined at Kconfig.zephyr:430) was assigned the value > 'y' but got the value 'n'. Check these unsatisfied dependencies: > (!CODE_DATA_RELOCATION) (=n) Signed-off-by: Reto Schneider <reto.schneider@husqvarnagroup.com> |
1 year ago |
|
8dc3f85622 |
hwmv2: Introduce Hardware model version 2 and convert devices
This is a squash of the ``collab-hwm`` branch which converts all in-tree boards to hardware model version 2 including build system changes, board updates and soc conversions. This squash is a combination of the following commits: ca214745a1 soc: Remove soc_legacy folder and move ARM Kconfig |
1 year ago |
|
40b53d5d77 |
Kconfig LTO: Prevent with native simulator based targets
LTO cannot be really used with the native simulator based targets neither today. When doing a partial link as we do for these targets the linker will complain if we are mixing LTO and non LTO built code, and fall back to only produce non-LTO output. (The link warning will cause twister to fail the test) Today not all inputs to this partial link are built with LTO enabled (offsets.c and the app library are not). Even if they were, the native targets are mostly a test and debugging facility, so optimizations like these are not beneficial in general. Let's just prevent selecting LTO for these targets. Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no> |
1 year ago |
|
26c8776c70 |
buildsystem: Add an option to enable LTO
This commit adds option to enable Link Time Optimization. Signed-off-by: Radosław Koppel <radoslaw.koppel@nordicsemi.no> |
1 year ago |
|
d548a7f083 |
kconfig: Deprecate BOOTLOADER_SRAM_SIZE
This Kconfig is seemingly unused with exception to a single board, whose maintainers have been unresponsive for a long time. It is not useful to any other board and can be set in dts, therefore deprecate it and schedule removal after the Zephyr 3.7 release Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no> |
2 years ago |
|
7c631f0fac |
kconfig: Add image size reduction option
Adds a Kconfig option that can be used to reduce the available slot size of an application, this is useful for things like bootloaders whereby the bootloader or bootloader configuration reduces the available flash size that the image can occupy Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no> |
2 years ago |
|
9bb708eb7d |
init_priorities: Fix for native_simulator based targets
Fix the init_prioties related cmake targets so they also work with native_simulator based build targets. Mostly this consists of pointing to the right file (final build result instead of intermediate elf library) and setting the dependency to that final build result. Note that for the native_simulator based targets the init priorities check can only be run on build if we are building the final image (not just a partial prelinked library), and we are not assembling several images together into one executable. Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no> |
2 years ago |
|
702399080e |
Kconfig: drop COMPAT_INCLUDES
Last reference of this was dropped in
|
2 years ago |
|
2a70c31945 |
scripts: check_init_priorities: drop the same priority check
Since
|
2 years ago |
|
dfb3674c4c |
linker: Add devnull memory for cortex_m and riscv32
Added memory region which is intended to be removed from the final binary but may be using in byproduct to extract data used by the host tools (e.g. strings used by logging). Add devnull region to Cortex-M and RISCV linker scripts. Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no> |
2 years ago |
|
be4b76fea2 |
Kconfig.zephyr: Add NATIVE_LIBC and NATIVE_LIBCPP
These are set when building against the host C or C++ libraries. This allows filtering tests that require use of a C library that sits atop Zephyr OS APIs. Signed-off-by: Keith Packard <keithp@keithp.com> |
2 years ago |
|
4a556a925c |
cmake: skip build time priority checking with armclang
The script does not play well with armclang binariest at the moment. Disable the automatic invocation when running with armclang, at least until this is investigated and fixed. Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> |
2 years ago |
|
5212a4c619 |
scripts: check_init_priorities: use the Zephyr executable file
Rework check_init_priorities to use the main executable file instead of the individual object files for discovering the devices. This should make the script more robust in case of stale files in the build directory, and also makes it work with LTO object files. Additionally, keep track of the detected init calls, and add a handy "-i" option to produce a human readable print of the initcalls in the call sequence, which can be useful for debugging initialization problems due to odd SYS_INIT and DEVICE interactions. Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> |
2 years ago |
|
058f256ea1 |
Kconfig.zephyr: check priorities by default
Enable build time initialization priority check by default. Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> |
2 years ago |
|
d8bdddd52f |
arch: arm: aarch32: introduce CONFIG_BUILD_ALIGN_LMA
Introduce CONFIG_BUILD_ALIGN_LMA. When enabled, this symbol will add a padding section after the final read only data section in the image. This padding section will ensure that the LMA of the data sections follows the same alignment restrictions as the VMA does. This LMA alignment is needed for objcopy to adjust the LMA address of the output ELF file. Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com> |
2 years ago |
|
cc57633447 |
Build system: disable `OUTPUT_DISASSEMBLY` by default
This on-by-default option takes the majority of "link" time. If people need the disassembly, they can turn it on. Incremental builds of the bluetooth tester app: ```bash west build -b nrf52840dk_nrf52840 zephyr/tests/bluetooth/shell touch zephyr/subsys/bluetooth/shell/bt.c time west build -b nrf52840dk_nrf52840 ``` Before: real 0m6,621s user 0m6,430s sys 0m0,175s After: real 0m1,011s user 0m0,840s sys 0m0,170s ```bash rm -rf build time west build -p -b nrf52840dk_nrf52840 zephyr/tests/bluetooth/shell ``` Before: real 0m9,726s user 0m11,735s sys 0m2,665s After: real 0m4,545s user 0m8,006s sys 0m2,723s Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no> |
2 years ago |
|
16d9d4d1a5 |
Kconfig: Provide name to orphan configuration choice symbol
Kconfig choice section for LINKER_ORPHAN configuration has no name. This prevents configuring a default value in .defconfig files and constrain to set in _defconfig /.prj files. Then it is not possible to generalize this setting to a whole set of boards (soc series for instance) or make it dependent on another symbol. Provide it a name to add this flexibility. Signed-off-by: Erwan Gouriou <erwan.gouriou@st.com> |
2 years ago |
|
6b57b3b786 |
soc: xtensa,riscv: esp32xx: refactor folder structure
Refactor the ESP32 target SOCs together with all related boards. Most braking changes includes: - changing the CONFIG_SOC_ESP32* to refer to the actual soc line (esp32,esp32s2,esp32s3,esp32c3) - replacing CONFIG_SOC with the CONFIG_SOC_SERIES - creating CONFIG_SOC_FAMILY_ESP32 to embrace all the ESP32 across all used architectures - introducing CONFIG_SOC_PART_NUMBER_* to provide a SOC model config - introducing the 'common' folder to hide all commonly used configs and files. - updating west.yml to reflect previous changes in hal Signed-off-by: Marek Matej <marek.matej@espressif.com> |
2 years ago |
|
7388a07701 |
kconfig: expand the CLEANUP_INTERMEDIATE_FILES symbol description
Y-selecting CLEANUP_INTERMEDIATE_FILES negatively impacts tools/commands that depend on the build artifacts being present. One such case is the `west spdx` command used for Software Bill of Material generation. If CLEANUP_INTERMEDIATE_FILES is y-selected, build files are removed from the `cfgTarget.target.artifacts` list. This in turn causes the `addBuildFile` function to nod add them to `pkg`, so `pkg.targetBuildFile` is `None` in `scripts/west_commands/zspdx/walker.py`. This commit expands the help message for the CLEANUP_INTERMEDIATE_FILES symbol to inform the user of the possible negative impact of selecting this symbol. Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com> |
2 years ago |
|
f68cee9405 |
kconfig: Set `BOOTLOADER_SRAM_SIZE` default to 0
The current default value for `BOOTLOADER_SRAM_SIZE` is set to an arbitrary-seeming value of `16`, which feels like a random magic number. Given that adding an offset in SRAM for a bootloader should always be a conscious choice for a specific platform, this PR sets the default to `0`. An appropriate value can be set at the SoC or board level, overriding this default. Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org> |
2 years ago |
|
56dc20eb1d |
Kconfig: Tidy up dependants of NATIVE_APPLICATION
So they depend or select on the right NATIVE_BUILD instead of NATIVE_APPLICATION. Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no> |
2 years ago |