Commit graph

105,063 commits

Author SHA1 Message Date
Nicolas Pitre
78cd836e2f tests: demand_paging: move existing test to a mem_map subdirectory
This test concerns itself mainly with anonymous memory mappings.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2024-09-11 20:18:51 -04:00
Nicolas Pitre
4fd3bf2060 demand_paging: add a semihosting based backing store for on-demand sections
This is especially handy for tests and validation using QEMU.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2024-09-11 20:18:51 -04:00
Nicolas Pitre
c99371e486 arm64: demand paging is supported
Test configs for UP and SMP are also included.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2024-09-11 20:18:51 -04:00
Nicolas Pitre
be279d878e arm64: demand_paging: add support for on-demand mappings
This makes ARM64 compatible with K_MEM_MAP_UNPAGED.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2024-09-11 20:18:51 -04:00
Nicolas Pitre
79428bc81d arm64: demand_paging: allow page fault processing with IRQs enabled
Convention is to call k_mem_page_fault() with IRQs enabled if they were
enabled when the fault occurred.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2024-09-11 20:18:51 -04:00
Nicolas Pitre
3e0feab245 arm64: demand_paging: add the k_mem_paging_eviction_accessed() call
Needed for the LRU eviction algorithm to be effective.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2024-09-11 20:18:51 -04:00
Nicolas Pitre
7bd6892750 arm64: mmu: access fault handler for demand paging
This has two purposes: maintain the accessed and dirty page states, or
call the generic demand paging fault handler otherwise.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2024-09-11 20:18:51 -04:00
Nicolas Pitre
322865773b arm64: mmu: architecture specific hooks for demand paging support
A page table entry used for demand paging is always from the last level
page table and never completely zeroed. Anything else is considered
ARCH_DATA_PAGE_NOT_MAPPED.

Loaded pages use a PTE_PAGE_DESC table entry type. Paged-out pages use a
PTE_INVALID_DESC table entry type and the physical address field is
reused to hold the backing store location token value.

ARCH_DATA_PAGE_ACCESSED corresponds to the AF flag. It is initially
unset and manually set to catch when pages are being accessed and
eventually do something about it.

ARCH_DATA_PAGE_DIRTY corresponds to the lack of the AP_RO flag.
Similarly to the AF flag, pages are initially made read-only to catch
writes.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2024-09-11 20:18:51 -04:00
Nicolas Pitre
4e0e52cbec arm64: mmu: be stricter about free page entries
Let's consider free entries as being completely zeroed. Future patches
for demand paging support will populate entries and still mark them as
"invalid" which should not be considered free. Current code always clear
entries to be freed so no issues there.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2024-09-11 20:18:51 -04:00
Sadik Ozer
44e72ab024 samples: drivers: counter: Add MAX32 MCUs overlay files
This commit add MAX32 MCUs overlay file for sample/drivers/counter

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Anıl Kara
3b81b4e60d samples: drivers: counter: Enable it for MAX32 MCUs
MAX32 MCUs counter node added in main.c

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
6e36e9bfae tests: drivers: counter: Enable counter test for MAX32666
This commit enables counter test for MAX32666 boards.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Anıl Kara
7f5fa21333 tests: drivers: counter: Enable counter test for MAX32680EVKIT
Add overlay files are added to run counter_basic_api test on
MAX32680EVKIT.

Signed-off-by: Anıl Kara <anil.kara@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
6a34baae16 tests: drivers: counter: Enable counter test for MAX32672
This commit enables counter test for MAX32672 board.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
10f507b7e4 tests: drivers: counter: Enable counter test for MAX32670
This commit enables counter test for MAX32670 board.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
a24884a061 tests: drivers: counter: Enable counter test for MAX3290
This commit enables counter test for MAX32690evkit board.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
18c0013671 tests: drivers: counter: Enable counter test for MAX32655
This commit enables counter test for MAX32655 boards.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
8f39a5870e tests: drivers: counter: Enable counter test for MAX32662EVKIT
This commit enables counter test for MAX32662EVKIT board

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
44cf5db5ab boards: arm: Add counter in MAX32662 driver list
Update MAX32662 board documents to include counter driver too.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
ae84791896 boards: arm: Add counter in MAX32666 driver list
Update MAX32666 board documents to include counter driver too.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
9ca489ebf4 boards: arm: Add counter in MAX32680 driver list
Update MAX32680 board documents to include counter driver too.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
d4e04ba76d boards: arm: Add counter in MAX32672 driver list
Update MAX32672 board documents to include counter driver too.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
22afb3b118 boards: arm: Add counter in MAX32670 driver list
Update MAX32670 board documents to include counter driver too.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
f74a3aeccf boards: arm: Add counter in MAX32690 driver list
Update MAX32690 board documents to include counter driver too.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
300bb22026 boards: arm: Add counter in MAX32655 driver list
Update MAX32655 board documents to include counter driver too.

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
bfb21ced8d drivers: counter: Add MAX32xxx counter driver
Common counter driver based on timer for MAX32xxx MCUs
To use as wakeup source wakeup-source parameter shall be
defined as below

&lptimer0 {
	status = "okay";
	clock-source = <ADI_MAX32_PRPH_CLK_SRC_ERTCO>;
	wakeup-source;
	counter {
		status = "okay";
	};
};

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
80b7fe6595 dts: arm: adi: Add timer counter instance for MAX32662
Add counter submode for low power timer too

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
2d361871d2 dts: arm: adi: Add timer counter instance for MAX32680
Add counter submode for low power timer too

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
346796101a dts: arm: adi: Add timer counter instance for MAX32672
Add counter submode for low power timer too

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
16edf9ab84 dts: arm: adi: Add timer counter instance to MAX32670
Add counter subnode for low power timer too

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
351d0e2dab dts: arm: adi: Add timer counter instance for MAX32690
Add counter submode for low power timer too

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
083249d9e5 dts: arm: adi: Add MAX32655 timer counter instances
Add counter subnode in timer nodes.
Add coutner .yaml file

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Furkan Akkiz
6ebd8dac08 dts: arm: adi: Add MAX32662 timer instances
Add timer instances of MAX32662 to dtsi file.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
9fd88ec9b0 dts: arm: adi: Add MAX32666 timer instance
This commits add MAX32666 timer instances in dts file

Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Mert Ekren
3b39d2c548 dts: arm: adi: Add MAX32675 extra timer instance
Add MAX32675 lptimer0/1 instance in dtsi file

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2024-09-11 20:18:33 -04:00
Tahsin Mutlugun
5fd68929ff dts: arm: adi: max32680 Add extra timer peripherals
Add timer 4 and 5 into devicetree.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2024-09-11 20:18:33 -04:00
Furkan Akkiz
5d699a6b28 dts: arm: adi: Add MAX32672 timer instances
Add time instances of MAX32672 to dts file.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2024-09-11 20:18:33 -04:00
Mert Ekren
334599b472 dts: arm: adi: Add MAX32670 timer instances
Add timer instances of MAX32670 to dts file

Co-authored-by: Sadik Ozer <sadik.ozer@analog.com>
Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2024-09-11 20:18:33 -04:00
Furkan Akkiz
4e30a64ff0 dts: arm: adi: Add MAX32690 timer instances
Add timer instances of MAX32690 to dts file.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2024-09-11 20:18:33 -04:00
Sadik Ozer
166ac001bf dts: arm: adi: Add Timer instance to MAX32655
Add timer instance in device tree
Add timer yaml file

Timer0/1/2/3 are common for MAX32xxx MCUs
MAX32655 has additional Timer4/5 which are low power timers

Co-authored-by: Mert Vatansever <mert.vatansever@analog.com>
Signed-off-by: Sadik Ozer <sadik.ozer@analog.com>
2024-09-11 20:18:33 -04:00
Krzysztof Chruściński
e96a9df6d7 samples: boards: nrf: nrfx: Fix (D)PPI dependency
Move Kconfig.zephyr above local kconfigs.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2024-09-11 20:14:30 -04:00
Krzysztof Chruściński
ffdf9a978d drivers: serial: nrfx_uarte: Use ENDTX_STOPTX short if possible
Use short which is available on some devices.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2024-09-11 20:14:30 -04:00
Krzysztof Chruściński
b7b25fe09c dts: nordic: nrf-uarte: Add endtx-stoptx-supported property
Add information to the device tree if UARTE instance has a HW feature
which is the ENDTX_STOPTX short.

Add this property to all instances in nrf54hl15, nrf54l20, nrf9280
and nrf54h20.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2024-09-11 20:14:30 -04:00
Sylvio Alves
b4117f97d3 drivers: wifi: fix esp32 build error
There is a regression caused by #76177, which
causes build to fail due to missing includes and others.
This wraps it with proper checks and fixes wifi scan call.

This also remove unused variable present in the same driver.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-09-11 20:14:07 -04:00
Emil Gydesen
594bef84f8 tests: Bluetooth: Fix minor issues for bap_base unit tests
An unused variable was removed and some callbacks were
corrected.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-09-11 14:01:46 -04:00
Emil Gydesen
069619a4ee tests: Bluetooth: BAP: Fix BT_BAP_BASE dependency for unit tests
The unit tests needed to enable the hidden Kconfig
BT_BAP_BASE. Instead of adding an additional Kconfig for this,
just enable one of the roles that enable it.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-09-11 14:01:46 -04:00
Kapil Bhatt
e71dc74228 hostap: Fix null termination of ssid and psk
Add null termination of ssid and psk. If user pass ssid,
psk without null terminator it will add by default.

Signed-off-by: Kapil Bhatt <kapil.bhatt@nordicsemi.no>
2024-09-11 14:01:07 -04:00
Emil Gydesen
99c86f616f tests: Bluetooth: Controller: Move controller tests to same dir
There were a couple of controller tests outside the
controller directory which have been moved there to
simplify the structure a bit.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2024-09-11 14:00:53 -04:00
Tom Burdick
8c4c180575 cmake: Fix finding python in virtualenv
When running cmake directly (without west, as twister does) on nix the
CMake environment paths are set and thus it does not find the
virtualenv'ed python. Fix this by ignoring the cmake environment
variables nix sets.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2024-09-11 14:00:44 -04:00
Valerio Setti
dafb532da3 doc: new Kconfig to allow non-CS sources in psa_generate_random()
This change was done in #76408, but without documenting it.
This commit adds missing documentation.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2024-09-11 14:00:34 -04:00