This commit fixes the incompatible pointer type issue due to
incompatible types of the `bitexchange_t` callback.
Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
This patch addresses several issues and adds enhancements to the WWDG
(Window Watchdog) implementation for the STM32H7 platform. The changes
include:
- Extend the definitions of WWDG_CFR_PCLK1 macros to support dividers
up to 128, and update the stm32_settimeout() function to consider this
extended range.
- Fix the "elapsed" calculations in the stm32_getstatus() function to
ensure correct time remaining calculations.
- Clear the EWIF (Early Wakeup Interrupt Flag) bit in the stm32_start()
function, as this bit might be set by hardware before the watchdog is
actually started.
- Initialize the WWDG clock in the RCC_APB3ENR register and set the
RCC_GCR_WW1RSC bit as per the STM32 reference manual to ensure proper
behavior when enabling the WWDG1.
Signed-off-by: Szymon Magrian <szymon.magrian@hexagon.com>
Fix bug in temperature sensor driver where direct casting of lower half
structure pointer could lead to incorrect memory access.
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
Fix bug in temperature sensor driver where direct casting of lower half
structure pointer could lead to incorrect memory access.
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
Remove function prototypes for BMP180 pressure sensor and CS4344 audio DAC
devices that were never actually present on this board configuration. This
cleans up the header file by removing declarations for non-existent hardware.
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
This commit adds an entry on Documentation regarding ESP32-C3,
ESP32-C6 and ESP32-H2 boards that implement the `buttons` defconfig
Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
This commit fixes the function to select the GPIO behavior for the
pins associated to the board's button.
Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
In a flat build, a separate init thread should not be mandatory,
users can create a user task in the board early initialization or late initialization hook.
Fat_zero_cluster() use fs_heap_malloc() for buffer that
is used to call fat_hwread().
Fat_hwread() must be called with IO buffer that have proper
alingment because it might use DMA.
Fix changes fs_heap_malloc() to fat_io_alloc() which uses
correct fat_dma_alloc() if CONFIG_FAT_DMAMEMORY is defined.
Signed-off-by: Ari Kimari <ari.kimari@tii.ae>
Give the user the full control over the USIC FIFO buffer even if USIC channel 0 is disabled.
When USICx_CHAN0 is not an UART but USICx_CHAN1 is, the user can set the desired FIFO buffer offsets in CHAN1 config.
check git commit format:
- line length less than 80 for commit title
- affected subsystem (detecting colon in commit title ":")
- Signed-off-by line
- blacklist [VELAPLATO-*, WIP:] string in commit body
Signed-off-by: raiden00pl <raiden00@railab.me>
This is an I2C driver for the Awinic AW9523B I/O expander. As well
as the supporting usual digital I/Os, this device features the
ability to drive LEDs directly, and can control the drive current
to each LED individually. The driver was derived from the PCA9555
driver, provides all the standard interfaces of an i/o expander
driver. It also features support for the special features of the
AW9523B through pin direction IOEXPANDER_DIRECTION_OUT_LED and
IOEXPANDER_OPTION_NONGENERIC with AW9523B_OPTION_* options.
The driver has a number of configurable features including interrupt
handling and a shadow register mode based on the PCA9555 driver,
plus new LED/dimming support.
Testing was done using an ESP32S3 host and I2C connection to the
Adafruit AW9523 breakout board.
Signed-off-by: Zik Saleeba <zik@zikzak.net>
Add mdio_phy_id_c45 macro. This macro allows encoding of additional information
needed for MMD access into the phy_id field of the mii_ioctl_data_s structure.
This macro is intended for use by user applications.
Add macros for decoding the phy_id encoded with the mdio_phy_id_c45 macro.
These macros are intended for use by network drivers implementing
SIOCxMIIREG commands.
Signed-off-by: michal matias <mich4l.matias@gmail.com>
Update board reset with BOOTROM functions calls
- normal reboot
- reboot to bootloader
normal reboot and reboot bootloader now possible from nsh
Port of https://github.com/apache/nuttx/pull/16848
Signed-off-by: Serg Podtynnyi <serg@podtynnyi.com>
Adds .editorconfig file to help maintain basic coding style
such as indent style and brackets across various IDEs. Editor
scans for this file and adheres to these rules.
Signed-off-by: Michal Lenc <michallenc@seznam.cz>
For example, set sigaction after create signalfd,
the sa_sigaction was restored but sa_user not,
causing signalfd_action() get the wild private data.
Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
Fixes low and inconsistent bandwidth issues.
Adds new configuration options for buffer management.
Moves code around to make the implementation cleaner and easier to debug.
Signed-off-by: Filipe Cavalcanti <filipe.cavalcanti@espressif.com>
ld: unrecognized option '-g3'
ld: use the --help option for usage information
Because `arch/arm/src/common/Toolchain.defs` already contains
`ARCHOPTIMIZATION += $(CONFIG_DEBUG_SYMBOLS_LEVEL)`, so
`boards/arm/sama5/jupiter-nano/scripts/Make.defs` here directly
delete `ARCHOPTIMIZATION += $(CONFIG_DEBUG_SYMBOLS_LEVEL)`.
Signed-off-by: v-tangmeng <v-tangmeng@xiaomi.com>
This commit moves the flake.lock and flake.nix files from root and
Documentation/ to the tools/ directory, according to @anchao's
suggestion in PR #16763.
Updates documentation to reflect this change.
Signed-off-by: Côme VINCENT <44554692+comejv@users.noreply.github.com>
This commit implements simple (blocking) read and write operations
for the i2schar driver. Although it already contained such methods,
the read/write operation was not being properly handled by the
`i2schar_[rx|tx]callback` (called when the operation has finished).
A semaphore is used to ensure that read data was received by the
receiver and another semaphore ensures that data was written by the
transmitter.
Please note that the already-existing mutex for the I2S peripheral
was replaced by two mutexes, one for the receiver and other for the
transmitter to allow full-duplex communication.
Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
This commit implements a set of commands to the i2s character
driver. The implemented commands allows getting and setting
parameters like data width, sample rate and number of channels for
both receiver and transmitter. If no ioctl is found, the command
is redirected to the lower driver implementation if it has the
ioctl callback registered.
Signed-off-by: Tiago Medicci Serrano <tiago.medicci@espressif.com>
Instead of verifying MMD indirect access by checking
EEE ADVERTISEMENT register has value 0x6 (which may be changed),
the verification is done by write and check LED MODE register.
1. Backup current LED_MODE register value
2. Write value Single-LED mode (0x10) to LED_MODE
3. Read LED_MODE register and verify it returns value 0x10
4. Write original (backup) value to LED_MODE
From the ksz9477 errata, setup the configuration which is tested to work.
- Improve PHY receive performance
- Disable EEE for ports 1-5
- Fix supply current values
Signed-off-by: Jani Paalijarvi <jani.paalijarvi@unikie.com>
The following warning occurred if ARCH_CHIP_PIC32CZCA70 option was
selected. The variable is not used in case of PIC32CZ CA70 series.
CC: task/task_getgroup.c chip/sam_emac.c: In function ‘sam_emac_initialize’:
chip/sam_emac.c:4758:12: warning: unused variable ‘regval’ [-Wunused-variable]
4758 | uint32_t regval;
|
Signed-off-by: Michal Lenc <michallenc@seznam.cz>
"tc397" is a chip name which is not appropriate to act as a board name.
the board supported here is actually "a2g-tc397-5v-tft".
The correct definition is : tricore is arch name, tc3xx is arch family
name, tc397 is chip name and the borad name is a2g-tc397-5v-tft
- Added new part support for PCAL6416
- Added pullup/pulldown configuration support
Signed-off-by: Jouni Ukkonen <jouni.ukkonen@unikie.com>
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
- Fix gpioinfo argument type
- Fix unused variable "ret" warning when CONFIG_TCA64XX_INT_POLL is not defined
Signed-off-by: Jouni Ukkonen <jouni.ukkonen@unikie.com>
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>
imx9_lpi2c_reset didn't quite work. It tried to toggle scl line as GPIO, but the line was not even muxed properly.
Instead, set the bus to relaxed mode, and drive address 0 to the bus. This toggles the clock, and also generates start and stop sequences on the bus.
"Relaxed mode" is a new feature on the LPI2C block used in imx93.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
PIC32CZCA70 Curiosity evaluation kit now initializes and registers
a partition in an embedded flash. The end of the flash is used as
an example to avoid the interference with the actual code.
Signed-off-by: Michal Lenc <michallenc@seznam.cz>
This removes the need to have all the DDR/clock configuration related
"LIBERODEFS" flags defined, when not building a standalone/coldboot
configuration
All of this code is unused when not building with CONFIG_MPFS_BOOTLOADER
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
This commit removes existing support for the NCV7410 10BASE-T1S MAC-PHY.
The driver will be replaced by its generalized version with different organization.
The new driver has naming clashes with the old, therefore the old has to be removed first.
Signed-off-by: michal matias <mich4l.matias@gmail.com>
The NCV7410 driver will be replaced. This commit removes current support for
the NCV7410 driver from the board level.
Signed-off-by: michal matias <mich4l.matias@gmail.com>
Add:
cmake/nuttx_process_config.cmake
tools/process_config.py
Update nuttx/CMakeLists.txt to call process_config defined ini
nuttx_process_config.cmake to process defconfig before actually using it
Introduce EXT1 wakeup functionality to the ESP32-S3 power management
subsystem. With this feature, the ESP32-S3 can wake up from PM_STANDBY
or PM_SLEEP when one or more RTC GPIOs trigger the EXT1 condition.
Changes include:
- Added EXT1 wakeup configuration and preparation logic in rtc code.
- Integrated EXT1 handling in pmstandby() and pmsleep().
- New board-level Kconfig options under ESP32-S3 DevKit menu:
- CONFIG_PM_EXT1_WAKEUP: enable EXT1 wakeup support
- CONFIG_PM_EXT1_WAKEUP_RTC_GPIO<n>: select RTC GPIOs as wake sources
- CONFIG_PM_EXT1_WAKEUP_TRIGGER_MODE: choose wakeup on HIGH or LOW level
- Fixing Kconfig style
- Fixing comments standard
- Adding PM documentation for esp32s3-devkit
Impact:
- No build impact unless CONFIG_PM_EXT1_WAKEUP is enabled.
- When enabled, ESP32-S3 can wake from low-power states via RTC GPIOs.
- No new public API introduced; controlled via board Kconfig.
Tested on ESP32-S3 DevKit:
- Configured GPIO4 and GPIO5 as EXT1 wake sources.
- Verified wakeup from light sleep and deep sleep on external signals.
- Wakeup reason correctly reported as EXT1.
Signed-off-by: Thiago Finelon <thiago.sfinelon@gmail.com>
- In case of warm reboot, clear active and pending interrupts from GICv3
and also from the CPU interface.
- Fix default IGROUPMODR to the reset value (0)
- Move gic_wait_rwp calls to after modifying ICENABLER
- Improve some comments
Signed-off-by: Jukka Laitinen <jukka.laitinen@tii.ae>