Mostly for CI purposes to validate OP-TEE changes
against a flat build. It has not been runtime-tested
with any specific setup involving an actual OP-TEE.
Signed-off-by: George Poulios <gpoulios@census-labs.com>
Previous change that introduced yielding upon OP-TEE
return with reason foreign interrupt, omitted to include
<sched.h>. This worked on kernel builds, but not on flat
builds. Include it.
Signed-off-by: George Poulios <gpoulios@census-labs.com>
Clear dma interrupt flags as before.
Change HTEF to HTF, fixes typo.
Remove ALL_FLAGS define. Clear CXFCR with all 1s like other instances do.
Handle half-transfer interrupt only if in circular mode.
Add ADC_HAVE_DMA guard around adc_rstart_dma. It is needed because priv->circular is guarded by ADC_HAVE_DMA.
After the signals have been delivered, the local irqs need to be
disabled until the context switch. But just calling
leave_critical_section(regs[REG_PS]) will enable them if they were
enabled in the context.
Any interrupt on this cpu before xtensa_context_restore() would set
the rtcb->xcp.regs to NULL, causing a crash in context restore.
Fix this by calling leave_critical_section(up_irq_save()) instead.
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
This reverts commit 8f96e59aee.
The implementation of __dso_handle is independent of the HOST OS but dependent on the specific compiler.
Therefore, this patch will cause compilation failures for other cross-compilers on the Windows platform, such as arm-none-eabi-gcc and aarch64-none-elf-gcc.
Constraints should be applied to compiler target rather than compiler host.
CPU heavy OP-TEE calls would starve the Normal World tasks.
OP-TEE foreign interrupts were delivered to NW but we would
resume OP-TEE immediately without giving any potentially
unblocked tasks a chance to run. This would violate real-
time guarantees. Fix that by calling sched_yield() during
OP-TEE return with reason foreign interrupts.
Signed-off-by: George Poulios <gpoulios@census-labs.com>
Many iMXRT MCUs have internally two USB OTG controllers, however
NuttX currently only supports one USB controllers. This patch will
prepare the "house" to support both ports at same time.
Signed-off-by: Alan C. Assis <acassis@gmail.com>
* Recurrency is removed from filesystem directory rename.
* Fixes use after free in buffer that was used as output and argument.
Signed-off-by: Tomasz 'CeDeROM' CEDRO <tomek@cedro.info>
PIC32CZ CA70 family is pin to pin and binary compatible with
SAMV70/SAME70 families, therefore the support is placed in samv7
directory. The only difference is larger RAM memory compared to SAM
families.
Signed-off-by: Michal Lenc <michallenc@seznam.cz>
fb_notify_vsync is called when TE irq comming, and fb_remove_paninfo is called after paninfo comsumed
Signed-off-by: jianglianfang <jianglianfang@xiaomi.com>
Changes the implementation of the L86xxx driver to use the
gnss_lowerhalf driver implementation, simplifying this driver's logic.
It also fixes the `read_line` function which would early return on `\r`,
as well as adding some retries for response checking and better mutex
locking.
Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
This commit adds support for MAX31855 and MAX6675 thermocouple
sensors on the STM32F401RC-RS485 board via SPI1. It also updates
the board documentation accordingly.
Signed-off-by: Rodrigo Sim <rcsim10@gmail.com>
This commit adds support for the HX711 ADC in the STM32F4-Discovery
board and updates the board documentation accordingly.
Signed-off-by: Rodrigo Sim <rcsim10@gmail.com>
- Added support for ADC2 initialization and registration.
- Defined new ADC2 channels and corresponding pin mappings.
- Expanded ADC1 channel list and updated pin mappings.
- Updated board.h with additional ADC channel definitions.
- Ensured all ADCs are properly initialized and registered.
- Tested by opening and reading /dev/adc0 and /dev/adc1, checking
that the correct values are read.
Signed-off-by: Côme VINCENT <44554692+comejv@users.noreply.github.com>
This commit introduces a new guide in that details how to set up a reproducible development environment for NuttX using Nix flakes.
The guide covers:
- Prerequisites for using Nix flakes.
- Steps to enter the NuttX development shell.
- Benefits of using the Nix flake (reproducibility, simplified onboarding, dependency management).
- An overview of the contents.
A link to this new guide has also been added in index.rst to ensure discoverability.
Signed-off-by: Côme VINCENT <44554692+comejv@users.noreply.github.com>
This commit introduces a Nix flake (flake.nix and flake.lock) to provide
a reproducible development shell for NuttX using Nix and flakes.
- Adds a devShell with all required build tools and dependencies for NuttX,
including CMake, Ninja, GNU Make, clang-tools, ARM toolchain, and other
utilities (automake, bison, flex, genromfs, gettext, gperf, kconfig-frontends,
libelf, expat, gmp, isl, libmpc, mpfr, ncurses, zlib, kconfiglib).
- Uses flake-utils to support multiple platforms.
- Sets up a shell hook to enable CMake compile commands and provide a welcome
message.
- Based on nixpkgs `nixos-unstable` for up-to-date packages.
Purpose:
- Simplifies onboarding and ensures a consistent build environment across
contributors.
- Reduces "works on my machine" issues by pinning dependencies.
Tested by running `nix develop` and building NuttX on x86_64-linux.
No impact on runtime or target builds; this only affects developer tooling.
For more details, see the new flake.nix file.
Signed-off-by: Côme VINCENT <44554692+comejv@users.noreply.github.com>
Sometimes this driver will boot when the serial port is of the wrong
baud rate, and it cannot set the correct baud rate or verify
communication. This commit prevents registration if any settings fail to
be set, and also prevents the kernel thread from setting the L86 to
enabled (this is done only by the uORB upper half).
Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
Update nxstyle whitelist to allow MixedCase
identifiers used by the Xedge (Barracuda App Server) example.
The following prefixes were added to g_white_prefix[]:
- Ba
- Thread
- LThread
- Http
- Disk
- Xedge
The following exact identifiers were added to g_white_content_list[]:
- baGetUnixTime
- baParseDate
- setDispExit
- xedgeInitDiskIo
- xedgeOpenAUX
- platformInitDiskIo
- ltMgr
- Lt
Signed-off-by: Jorge Guzman <jorge.gzm@gmail.com>
- Committing initial code for DTS. Missing ISR. Works for PCLK1. Cannot get to work for LSE.
- Pushing everything. Working with LSE now.
- Many fixes. Fixed interrupt setting. Added data structures.
- Changed interrupt handling. Removed FARs. Added Kconfig options for selecting interrupts.
- Updated info and formatting.
- Formatting fixes.
- Formatting.
- Changed iten to regval.
- Removed Triggger
- Formatting fixes per Pull request.
- Changed private_types to have stm32_ prefix. Used depends on for DTS Kconfig Menu. Fixed formatting per PR.
- Fixed spacing of function prototypes.
- Fixed indent on line
- Added documentation for STM32H5 and Nucleo-H563ZI regarding DTS. Also added GPDMA support to STM32H5 documentation (previous PR). Made stm32_dts.c more modular. stm32_dts_activate is now much more readable. Added comments/descriptions to private functions. Lastly, added a nucleo-h563zi:dts configuration.
update:
CMakeLists.txt
Make.defs
Kconfig
It allows the same version of SystemView target sources to be used for CMake and Make, to avoid discrepancies in the future.
Signed-off-by: simbit18 <simbit18@gmail.com>