share the f_inode, ensuring that the mapping status is associated with
the file entity rather than a single descriptor.
Avoid redundant mapping operations caused by multiple descriptors
operating on the same file.
Signed-off-by: nuttxs <zhaoqing.zhang@sony.com>
Summary:
- Replace version checking logic using pkg_resources and importlib with a subprocess call to `esptool.py version`
- This change enhances compatibility with esptool installed via pipx and simplifies the version retrieval process
Impact:
- No functional changes; the script continues to prompt for installation if esptool is not found
- Increases maintainability by reducing dependency on Python version checks
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
This change adds support for the Pico ResTouch 2.8" LCD module to enhance display options for NuttX-based systems.
Signed-off-by: Zhu Zhongjie <zhongjiezhu1@gmail.com>
This guards use of .thumb_func with ARM_THUBM kconfig so that
CONFIG_ARM_THUMB can be off for cases like qemu-armv7r:pnsh
Signed-off-by: Yanfeng Liu <p-liuyanfeng9@xiaomi.com>
Summary:
stm32: support querying a previously set RTC alarm In the STM32F1xx series
Impact:
When using the stm32f1xx series MCU, the alarm function can be used, but when we enabled the CONFIG_RTC_ALARM configuration, an error was reported due to the inability to find the specific implementation of rdalarm.
Testing:
In our own projects, we have done alarm verification using the STM32F103RE..
Relocate the enum ota_img_ctrl_e and ota_img_bootseq_e
to a directory visible to the application.
Inspect if the MTD partition (factory/ota_0/ota_1) is mapped as text.
Adding an ioctl interface ota_invalidate_bootseq() to the ESP32 partitions,
by deleting the corresponding otadata, makes the boot sequence (ota_0/1) invalid.
Signed-off-by: nuttxs <zhaoqing.zhang@sony.com>
Add no_builtin for memcpy/memset to the startup code of boards
with CONFIG_ARCH_RAMFUNCS, because certain compilers call memcpy/memset
instead of the explicit for loop. This will cause a crash if memcpy/memset
are mapped to RAM because the function that copies them to RAM is called later,
resulting in undefined code being executed.
Signed-off-by: Alexander Lerach <alexander@auterion.com>
arch/arm: Use decorator for entry point
Use a decorator that contains the required no_builtin instead of adding
them explicitly to the startup code. This way it will be easier to
maintain them in the future when changes to the no_builtin used are required.
Signed-off-by: Alexander Lerach <alexander@auterion.com>
arch/arm: Rename decorator
Rename the entry point decorator used for the startup code to a less explicit name.
This way the style is more consistent with other decorators.
Signed-off-by: Alexander Lerach <alexander@auterion.com>
ifdelay description (delay between frames) matches the DLYBCT field
(delay between consecutive transfers without removing chip select)
much better compared to stopdelay (delay between last CLK and CS
inactive). The option for stopdelay does not seem to be configurable
in SAMA5 peripheral.
Signed-off-by: Michal Lenc <michallenc@seznam.cz>
After pthread mutexes changed to nxmutex, the priority inheritance
was set on by default; even if one tried to control it with
CONFIG_PTHREAD_MUTEX_DEFAULT_PRIO_INHERIT.
Also the CONFIG_PTHREAD_MUTEX_DEFAULT_PRIO_PROTECT is not effective.
Fix this by setting the default mutex priority adjustment flags according
to CONFIG_PTHREAD_MUTEX_DEFAULT_PRIO_INHERIT and CONFIG_PTHREAD_MUTEX_DEFAULT_PRIO_PROTECT.
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
After MSYS2 updated the package on GitHub
there was a slowdown in building NuttX in the MSYS2 job.
It went from an average of 6 minutes to 10 minutes !!!
The purpose of this PR is to speed up the build to decrease the usage of the Windows runner.
Modified Files
tools/ci/cibuild.sh
tools/sethost.sh
make olddefconfig -j 4 -> make olddefconfig
workaround for remove
Cleaning...
Configuring...
make[3]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
make[3]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
make[3]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
Signed-off-by: simbit18 <simbit18@gmail.com>
Adds a device ID to ramtron_initialize, which is stored in the ramtron_dev_s structure.
This ID is used when calling SPI_SELECT to board specific logic to allow chip select on the SPI bus.
This change is NOT backwards compatible, as it changes the function signature of ramtron_initialize.
This implementation is based on the handling of chip select in nuttx/drivers/mtd/sst26.c:sst26_initialize_spi().
Additional Changes:
- Add MB85RS64V to ramtron supported parts list.
When we use upstream board as a target in out-of-tree board configurations we
should not link dummy/Kconfig with a board Kconfig otherwise this file is
included twice which cause cmake warnings.
For example, when out-of-tree configuration is like this:
CONFIG_ARCH_BOARD_CUSTOM=y
CONFIG_ARCH_BOARD_CUSTOM_DIR="boards/arm/stm32/b-g431b-esc1/"
CONFIG_ARCH_BOARD_CUSTOM_DIR_RELPATH=y
CONFIG_ARCH_BOARD_CUSTOM_NAME="b-g431b-esc1"
this results with many warnings during configuration stage:
CMake Warning at cmake/nuttx_kconfig.cmake:171 (message):
Kconfig Configuration Error: warning: the default selection
BOARD_STM32_BG431BESC1_USE_HSI (defined at
boards/arm/stm32/b-g431b-esc1/Kconfig:12,
/home/raiden00/git/railab/dawn/build_esc1/boards/dummy/Kconfig:12) of
<choice> (defined at boards/arm/stm32/b-g431b-esc1/Kconfig:8) is not
contained in the choice
warning: the choice symbol BOARD_STM32_BG431BESC1_USE_HSI (defined at
boards/arm/stm32/b-g431b-esc1/Kconfig:12,
/home/raiden00/git/railab/dawn/build_esc1/boards/dummy/Kconfig:12) is
defined with a prompt outside the choice
warning: the choice symbol BOARD_STM32_BG431BESC1_USE_HSE (defined at
boards/arm/stm32/b-g431b-esc1/Kconfig:15,
/home/raiden00/git/railab/dawn/build_esc1/boards/dummy/Kconfig:15) is
defined with a prompt outside the choice
warning: the choice symbol BOARD_STM32_BG431BESC1_USE_HSI (defined at
boards/arm/stm32/b-g431b-esc1/Kconfig:12,
/home/raiden00/git/railab/dawn/build_esc1/boards/dummy/Kconfig:12) is
defined with a prompt outside the choice
warning: the choice symbol BOARD_STM32_BG431BESC1_USE_HSE (defined at
boards/arm/stm32/b-g431b-esc1/Kconfig:15,
/home/raiden00/git/railab/dawn/build_esc1/boards/dummy/Kconfig:15) is
defined with a prompt outside the choice
Signed-off-by: raiden00pl <raiden00@railab.me>
Using the FTL driver over a MTD flash device, when writing to flash, eventually the ftl_flush function is called and it does an erase (MTD_ERASE) and then the write (MTD_BWRITE). Currently, the at45db driver (at45db.c), uses a write command 0x82 ("Main Memory Page Program through Buffer 1 with Built-In Erase") that also performs a built-in erase before the write. In summary, each time a write to flash is performed, the page is erased twice before it is written, first in the FTL driver and then in the MTD driver.
This PR is to change the page writes to not use that built-in command.
Signed-off-by: Javier Casas <javiercasas@geotab.com>
When enable both `DEV_GPIO` and `GPIO_LOWER_HALF` for a GPIO pin device for an I/O expander pin.
See esp32s3_gpio.c for more details.
Log
xtensa-esp32s3-elf-ld: /workspace/nuttx/staging/libboard.a(esp32s3_bringup.o):(.literal.esp32s3_bringup+0x14): undefined reference to `esp32s3_gpio_init'
xtensa-esp32s3-elf-ld: /workspace/nuttx/staging/libboard.a(esp32s3_bringup.o): in function `esp32s3_bringup':
/workspace/nuttx/boards/xtensa/esp32s3/common/board/esp32s3_bringup.c:409: undefined reference to `esp32s3_gpio_init'
Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
This patch adds a driver framework to control individual FPGA reset and
clock gates.
For FPGA devices, only the fabric (FIC0/FIC1/FIC3) clock and reset can be
controlled, which affects the whole fabric / domain. This is problematic
for obvious reasons.
For MSS peripherals, clocks and reset are controlled individually for each
peripheral via MSS memory mapped registers (MPFS_SYSREG). To get the same
capability for FPGA peripherals, the same controller needs to be
fabricated on the FPGA.
However, the FPGA clock/reset controller is entirely user dependent, so a
generic implementation is not possible. However, a generic driver is
needed in order to build the current FPGA peripheral drivers. A stub
implementation of the driver is provided in order to achieve this.
Signed-off-by: Ville Juven <ville.juven@unikie.com>
This patch adds initial support for the Texas Instruments ADS1115 ADC.
Please read the documentation for more details.
Signed-off-by: Tony Lin <99093620+justapotato213@users.noreply.github.com>
- Fix compilation failure "error: 'mpfs_phydump' defined but not used [-Werror=unused-function]"
- Add debug dump of phy registers.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
If the interface is UP, and no packets are received in 30s, re-initialize the interface by calling the
already implemented mpfs_txtimeout_expiry.
This is a workaround for a bug where IF might be UP and working but packets can only
be transmitted. Receive side just doesn't work at all. The bug manifests at least in
older LAN8742A (rev A and B), for which also a silicon errata exists.
The original issue can be re-produced easily by disconnecting and reconnecting the ethernet cable while
the IF is up.
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
- Use LPWORK by default if CONFIG_MPFS_ETHMAC_HPWORK is not defined
- Always use LPWORK for timeouts; this makes very lengthy operations such as re-initializing PHY.
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
Move debug related pages from Guides to a separate top level page.
This way all pages related to debugging will be in one place
which is more user friendly.
Related Github issue: https://github.com/apache/nuttx/issues/15667
Signed-off-by: raiden00pl <raiden00@railab.me>
Added initial support for Seeed Studio XIAO RA4M1 Board. Initial
support to NuttShell via Serial, gpio and userleds. Also two
configurations is available: nsh for basic NuttShell access and
combo for gpio and userleds.
Signed-off-by: Rodrigo Sim <rcsim10@gmail.com>
Adds initial documentation to the IOCTL commands of wireless character devices.
Signed-off-by: Kevin Witteveen (MartiniMarter) <kevinwit1999@gmail.com>