This commit introduces the tagging system into the STM32 family of chips
by tagging all chips with their appropriate chip type/family.
Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
Before this patch, the board nucleo-767zi had just one button available for the
user, which one was not working (there was no /dev/buttons on stm32_bringup.c).
Aditionally, I have changed the stm32_buttons.c to support not only the
built-in button but as well as to another four external buttons.
On the RP2350, the watchdog receives its tick input from the
system-level ticks block, unlike the RP2040, where the watchdog includes
its own tick generator. Enable the TICK blocks, update the watchdog
routines.
Signed-off-by: Serg Podtynnyi <serg@podtynnyi.com>
Modify rtc_data_seg to rtc_slow_seg to fix RTC problems.
The proper location for those is in RTC slow memory.
Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
The RP2040 chip supports 4 different GPIO interrupt modes. They can be
configured to be used simultaneously, although previously the NuttX
support only allowed one type of interrupt to be enabled per GPIO pin.
This allows up to all four to be selected without changing previous
behaviour.
Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
When compiling lib_backtrace.c after set CONFIG_LIBC_BACKTRACE_BUFFSIZE,
there will be compilation error warnings. This is because spin_unlock_irqrestore
incorrectly used pool->lock during unlocking, which has been corrected to bp->lock.
Signed-off-by: Baichuan Rong <rongbaichuan1027@163.com>
Add CAN support for sim target based on host SocketCAN interface.
Tested with virtual CAN on Linux but should work also with hardware CAN cards supported by host.
Signed-off-by: p-szafonimateusz <p-szafonimateusz@xiaomi.com>
Add kernel build (target imx93-evk:knsh) to i.MX93 EVK.
This target is preconfigured for use with AHAB boot (see
https://spsdk.readthedocs.io/en/latest/examples/ahab/imx93/imx93_ahab_uboot.html)
as a replacement of U-Boot proper (BL33 at EL2), hence
the load address is set to 0x80200000.
Signed-off-by: George Poulios <gpoulios@census-labs.com>
Fix a bug that I2C driver can not transfer after TX abort error.
It caused by remaining NO_STOP flag status.
same as done in commit 0df0a10 for cxd56xx
Signed-off-by: Serg Podtynnyi <serg@podtynnyi.com>
POSIX states "If the maskpri argument is 0, the current log mask is
not modified." The current implementation in NuttX doesn't
respect this and thus is in a clear violation with a strict POSIX
compliance rule in The Inviolable Principles of NuttX.
This commit therefore changes the behavior to the expected one. Passing
argument 0 doesn't change the current log mask, but just returns the
old one. Completely disabling logging at runtime is thus not possible,
but you may set the highest priority LOG_EMERG only to disable most of
the messages. Default can still be set to no logging with
CONFIG_SYSLOG_DEFAULT_MASK configuration option.
Signed-off-by: Michal Lenc <michallenc@seznam.cz>
Adds a defconfig for using MPU60x0 and implement the bringup sequence for the I2C IMU.
Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
This patch fixes https://github.com/apache/nuttx/issues/16237, where
cd'ing to a non-directory prefix of a procfs entry would succeed.
Signed-off-by: Pip Cet <pipcet@protonmail.com>
For example a race in managing tcb->sigprocmask may cause signal not being delivered at all.
The mechanism is as follows:
1. cpu 1: nxsig_deliver adds the signal to the sigprocmask for the duration of signal delivery
2. cpu 2: new signal (same signo) is dispatched in nxsig_tcbdispatch
3. cpu 2: nxsig_tcbdispatch detects that signal is masked
4. cpu 2: nxsig_tcbdispatch leaves critical section before calling nxsig_add_pendigsignal
5. cpu 1: nxsig_deliver finishes. The "nxsig_unmask_pendingsignal" is called in the end but does nothing
6. cpu 2: nxsig_tcbdispatch continues and adds the pending signal
In the end, the logic in the end of nxsig_deliver, which tries to handle signals added
to the pending queue during the signal action delivery (step 5) failed, and the pending signal
was not delivered.
Fix this by just keeping the critical section for during the whole duration of nxsig_tcbdispatch,
and move things which can't be executed from within critical section outside.
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
Adds Kconfig-selected splashscreen options used when the driver is first registered
* Includes a new Python script in ./tools to create RLE bitmap files
* Includes default NS logo btimaps in 320x320, 160x160 and 80x80 resolutions along with their PNG files
Signed-off-by: Tim Hardisty timh@jti.uk.com>
Add support for stack canaries for x86.
This includes mostly fixes for TLS support that are required for stack canaries
in x86. The FSBASE register must be unique per thread so we have to keep it in
thread registers area.
Signed-off-by: p-szafonimateusz <p-szafonimateusz@xiaomi.com>
This change affects esp32s2-saola-1 board when optimizations are enabled.
Fixes issue on timer defconfig.
Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
The MCP47X6 series consists of the following single channel DAC chips:
- MCP4706 (8 bit)
- MCP4716 (10 bit)
- MCP4726 (12 bit)
The driver supports the following configurations:
- gain
- power down
- voltage reference
Persistent configuration storage in the internal EEPROM is not
implemented.
ax99100 export each serial port as a separate PCI device function
so we have to handle this properly.
Signed-off-by: p-szafonimateusz <p-szafonimateusz@xiaomi.com>
script
Add missing flash_qio_mode file in bootloader link script, it will be
used when CONFIG_ESPRESSIF_FLASH_MODE_QIO option is enabled.
Signed-off-by: Leo Chung <gewalalb@gmail.com>
script
Add missing flash_qio_mode file in bootloader link script, it will be
used when CONFIG_ESPRESSIF_FLASH_MODE_QIO option is enabled.
Signed-off-by: Leo Chung <gewalalb@gmail.com>
script
Add missing flash_qio_mode file in bootloader link script, it will be
used when CONFIG_ESPRESSIF_FLASH_MODE_QIO option is enabled.
Signed-off-by: Leo Chung <gewalalb@gmail.com>
Introduces `sphinx-tags` to the documentation system, allowing
individual pages to be tagged for better searching. The examples in this
commit introduce the `chip:*` tag for indicating the chip a board uses,
as well as the `experimental` tag for indicating experimental boards and
features. Other tags indicate supported peripherals for boards, such as
`wifi` and `ethernet`.
Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
Changed usbhost stack sizes to 2048 for affected STM32H7 boards.
This was previously causing stack overflows when usb is inserted.
Signed-off-by: keever50 <kevinwit1999@gmail.com>