There is no need for a gettid() syscall, as the thread ID is stable through
the life of the process. It is safe to put a copy of TID to TLS. This way
a user processes can access TID quickly via its own stack, instead of
having to use an expensive syscall.
Signed-off-by: Ville Juven <ville.juven@unikie.com>
We should not access semaphore internals directly outside sched/semaphore.
Just read it via the NXSEM_COUNT macro provided.
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
The defconfigs that select the ESP32-S3's WROOM-2-N32R8V module
contains an octal SPI flash chip and a octal SPIRAM module.
This commit updates the defconfig to avoid errors while booting the
device.
Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
SPI flash operation modes - Dual Output (dout), Dual I/O (dio),
Quad Output (qout), Quad I/O (qio) and Octal (opi) were not being
properly selected. This commit fixes this behavior and the device
is now able to boot and initialize the proper SPI flash mode.
Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
Support for development using STM32H750B-DK, including configuration of onboard memory, flash, etc., and configuration of LVGL runtime environment has been added.
Signed-off-by: liujp <liujp@xiaomi.com>
boards/arm: Add CMakeLists for the nucleo-l476rg.
Adds CMakeLists files for the STM32L4 architectures
and one of the development boards. Files are adapted
from the similar STM32F7 boards, but built to reflect
the existing Make.defs.
Signed-off-by: Kye Morton <pryre.dev@outlook.com>
This commit adds support for the BMP180 sensor on the
STM32F401RC-RS485 board and updates the board documentation
accordingly. It also enables the BMP180 UORB driver in the
STM32 common logic.
Signed-off-by: Rodrigo Sim <rcsim10@gmail.com>
This commit simplifies the selection of the SPI flash frequency for
Espressif SoCs by using a standardized Kconfig-defined macro.
Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
This commit moves some internal libraries' .bss sections to the
external PSRAM chip, freeing internal memory for other usages. Note
that it is necessary to update `esp32s3-devkit:python` defconfig
otherwise it would fail to build.
Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
Fix and enable ADC calibration. The ADC voltage regulator must be
enabled and regulator start-up time must be respected.
tested on nucleo-c071rb and b-l072z-lrwan1
Signed-off-by: raiden00pl <raiden00@railab.me>
Optimize crc32 standard(poly:0x04C11DB7) and crc32
castagnoli(poly:0x1EDC6F41) with arm crc32 extension instructions.
For example, crc32 standard caculates(lookup crc32 table) 1812 bytes data,
reduced the time from 118 us to 14 us through optimization.
Performance improved ~700%
Signed-off-by: Jinliang Li <lijinliang1@lixiang.com>
i couldn't find any documenation about this attribute.
this comment is purely based on my reading of the code.
Signed-off-by: YAMAMOTO Takashi <yamamoto@midokura.com>
This implements similar functionality than CONFIG_FAT_FORCE_INDIRECT
because in some use cases (e.g. when CONFIG_BUILD_KERNEL) it is not possible to
write directly from user buffer.
Signed-off-by: Jani Paalijarvi <jani.paalijarvi@unikie.com>
In the arm_el_init function, the FPU might be used, for example, the
assembly optimization of memcpy in arm_tcm_load uses FPU and NEON
instructions and registers.
Therefore, it's important to initialize the
FPU as early as possible to prevent system hangs that could occur if the
FPU is used without being initialized.
Signed-off-by: Jinliang Li <lijinliang1@lixiang.com>
fix printf warning:
chip/esp32s3_wdt_lowerhalf.c:497:17: error: format '%u' expects argument of
type 'unsigned int', but argument 4 has type 'long unsigned int'
Signed-off-by: raiden00pl <raiden00@railab.me>
fix printf warning:
chip/esp32s2_wdt_lowerhalf.c:493:17: error: format '%u' expects argument of
type 'unsigned int', but argument 4 has type 'long unsigned int'
Signed-off-by: raiden00pl <raiden00@railab.me>
fix printf warning:
chip/esp32s3_ble_adapter.c:1065:13: error: format '%u' expects argument of
type 'unsigned int', but argument 3 has type 'long unsigned int'
Signed-off-by: raiden00pl <raiden00@railab.me>
fix printf warning:
chip/esp32_ble_adapter.c:1137:13: error: format '%u' expects argument of
type 'unsigned int', but argument 3 has type 'long unsigned int'
Signed-off-by: raiden00pl <raiden00@railab.me>
On AVR architecture, the compiler apparently sometimes truncates NSEC_PER_TICK
to 16bit value, leading to clock_time2ticks returning incorrect results. This
was encountered while attempting to add tickless OS support for AVR
architecture but seemed to affect non-tickless mode of operation as well.
This patch marks NSEC_PER_USEC (and to be safe, USEC_PER_MSEC and MSEC_PER_SEC
too) as long.