On STM32 HAL2, LL_ICACHE functions expects the ICACHE instance as first
argument. Add a macro that will construct the correct list of arguments
depending on HAL version.
Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
Add abstraction function to check the TX/RX fifo flags and enable/disable,
and redefine a few macros (like stop bits or data width) for STM32 HAL2.
Signed-off-by: Francois Ramu <francois.ramu@st.com>
Added Silabs Kconfig support for counter driver and implemented the
counter APIs using protimer underneath.
Signed-off-by: sree sreerajatha <sree.sreerajatha@silabs.com>
Fix a typo in `pinctrl_configure_pins` where the variable `pin_cgf`
was used instead of `pin_cfg`. Update all references accordingly.
Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
ISR bits are set on input level or edge changes, regardless of whether an
interrupt is actually enabled on that line. Therefore, we check whether an
interrupt is actually enabled by masking with IMR. If we didn't do this,
some other enabled interrupt firing could also result in a callback for a
disabled interrupt.
Signed-off-by: Bert Abrath <bert.abrath@basalte.be>
The RX GPIO was originally develop for RX130 MCU which only have port
0 to 5 and A to J, this commit add missing port initialize for other RX
MCU family
Signed-off-by: Duy Nguyen <duy.nguyen.xa@renesas.com>
The ESP32 MCPWM driver does not initialize the pinctrl configuration if
only the capture units of MCPWM are used and no other MCPWM outputs are
used. This leads to pwm capture requests timing out. Fix this by applying
the pinctrl configuration during module initialization.
Signed-off-by: Christopher Smith <christophersmith107@gmail.com>
- Removes the unused items from the device structures for peri clock.
- Removes the now unused `resource-type`, `resource-instance`, and
`resource-channel` binding properties.
- Updates the Migration Guide with removed binding properties.
- Remove the binding properties from board, samples, and test overlays.
Assisted-by: GitHub Copilot:claude-opus-4.6
Signed-off-by: John Batch <john.batch@infineon.com>
With Bypass enabled, the MCU doesn't work.
Instead, set waydisable to 0xf (all ways disabled), and
disable bypass.
Signed-off-by: Camille BAUD <mail@massdriver.space>
Extend the shared pinctrl driver for BL70XL:
- Use 4 UART signal routing slots (vs 8 on BL60x/BL70x)
- Add XTAL32K pin muxing disable for GPIO30/31
- Handle key scan drive function (disable IE)
- Replace magic numbers with register field defines
- Add BL70XL to pinctrl CMakeLists.txt (reuses bl60x_70x driver)
Signed-off-by: William Markezana <william.markezana@gmail.com>
Fixes the mix-up of HCLK and SYSCLK in h7 clock driver and also makes sure
to calculate the correct startup frequency:
- Take care of bootloader might already have configured clocks instead of
relying on #defines/dts).
- Use HAL HSI_VALUE instead of STM32_HSI_FREQ which can be 0 if hsi node
is disabled in DT (but is default on after reset...)
Also move calculation of old_hclk_freq above set_up_plls() during
stm32_clock_control_init(), which can change the current clock setting and
make it impossible to get the previous clock.
Remove not needed special handling for h7rsx controllers.
Add a comment to the clk_hsi node in the h7x / h7rsx DT stating that the
clock is enabled by default after reset.
Signed-off-by: Thomas Decker <decker@jb-lighting.de>
Memory W25Q256 support added into flash driver. If someone
uses this memory, the driver will configured into 4-bytes
address mode which will cause issues with the bootROM for
some NXP's RTs/RW microcontrollers.
Signed-off-by: Missael Maciel <davidmissael.maciel@nxp.com>
Fix I2C transaction len using the correct size of the data to be sent
and not the returned length of the allocated buffer.
Signed-off-by: Armando Visconti <armando.visconti@st.com>
Signed-off-by: Brenden Adamczak <cerebralasylum1@gmail.com>
Co-authored-by: Armando Visconti <armando.visconti@st.com>
Fix the representation of pixel formats with an X (unused) or A (alpha)
channel to make the four character match the order in the channels in
memory byte per byte.
These formats are imported from Linux but contain a naming inconsistency.
The four character codes still match the Linux formats from V4L2
include/uapi/linux/videodev2.h based on the byte content rather than the
name: this means that communicating with Linux systems will work, but
sharing source code with Linux will need to modify the variable names.
Signed-off-by: Josuah Demangeon <me@josuah.net>
Nordic's nPM10 Series PMIC Multi-function Device devicetree properties and
driver.
Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>
Name the XSPI 1/2 depending on the stm32 series.
It could be mixed between XSPI or OCTOSPI depending
on the module HAL.
Signed-off-by: Francois Ramu <francois.ramu@st.com>
Name the XSPI 1/2 depending on the stm32 series. It could be mixed between
XSPI or OCTOSPI depending on the module HAL.
Signed-off-by: Francois Ramu <francois.ramu@st.com>
Add pm_action callback with PINCTRL_STATE_SLEEP on suspend and
PINCTRL_STATE_DEFAULT on resume. Register the driver with
PM_DEVICE_DT_INST_DEFINE so the PM framework calls the callback
during system sleep transitions.
If no sleep pinctrl state is defined in DTS, the suspend call
is a no-op.
Signed-off-by: Jacob Wienecke <jacob.wienecke@nxp.com>
Add Silabs General GPCRC driver for Series 2 boards
Enable crc sample and test cases for Silabs series 2
Tested on real boards and compared result with all CRC16
and CRC32-IEEE algorithm
Signed-off-by: Phuc Hoang <donp172748@gmail.com>
Add initial support for SCMI shell commands. For now, this only includes
clock protocol-related commands. Other SCMI protocols will be added
incrementally.
Part of #103633.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Add support for SCMI transport layer using ARM SMC (Secure Monitor
Call) as the doorbell mechanism with shared memory for data transfer.
Communication is performed synchronously so polling is the only
supported mode. The implementation follows the SCMI specification
for SMC/HVC based transport.
Signed-off-by: Soumya Tripathy <s-tripathy@ti.com>
Add polling_only flag to scmi_channel structure to support transports
that require polling mode (e.g., SMC transport which uses synchronous
SMC/HVC calls without interrupt support).
Signed-off-by: Soumya Tripathy <s-tripathy@ti.com>
stm32wbxx bump to version to 1.24.0
stm32wlxx bump to version 1.4.0
Update dma_stm32.h to sync with HAL new function prototype for
LL_DMA_IsActiveFlag_HT*() functions that now expect a const pointer
on STM32WLX series.
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
Add driver for internal voltage regulator for the USB signaling
interface.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Co-Authored-by: Carles Cufi <carles.cufi@nordicsemi.no>
We need to describe the wrapper separately as a parent node because it
is not part of the USB controller but is used to configure, control, and
enable/disable the USB PHY, and to enable/disable USB controller.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
When lptmr0 is reserved as the system timer, the MCXW IEEE 802.15.4
radio cannot rely on a separate counter device being instantiated for it.
The fallback to the kernel cycle counter is also not a valid replacement
for hardware timestamping in all timer configurations.
Add a counter phandle to the MCXW binding, wire the MCXW7x boards in scope
to use lptmr1 as a dedicated non-system-timer counter, and make the driver
consume that devicetree-provided counter directly.
This keeps the fix narrow to the boards enabled in this PR while removing
the fragile hard-coded lptmr0/lptmr1 selection logic.
Signed-off-by: Holt Sun <holt.sun@nxp.com>
When all LPTMR instances are reserved as the system
timer, the counter driver has no instances to create.
The static init and ISR functions become unused,
causing -Werror=unused-function build failures.
Guard the entire driver body with a preprocessor check
that counts usable (non-system-timer) LPTMR instances.
When the count is zero the file compiles to nothing.
Signed-off-by: Holt Sun <holt.sun@nxp.com>
For the ina226 shunt voltage is implemented and supported,
unfortunatly it was forgotten to select
INA2XX_HAS_CHANNEL_SHUNT_VOLTAGE.
Since 70423db9d1c69d32597ba1f7b2fe66569014a4b0 it will
no longer build. This fixes it.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
Update the MIPI DBI ESP32 driver to match the renamed/split LCD HAL
APIs from the latest hal_espressif sync:
- soc/gdma_channel.h moved to hal/gdma_channel.h
- lcd_ll_set_data_width() split into lcd_ll_set_dma_read_stride()
and lcd_ll_set_data_wire_width()
- lcd_ll_enable_rgb_yuv_convert() renamed to
lcd_ll_enable_color_convert()
Also update west.yml hal_espressif revision.
Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
Some UART drivers (for example nrfx) might return -EBUSY, if we
try sequence of close->change baud->open without any delay.
Instead, close the UART pipe and wait for BUS_CLOSED event before
reconfiguring the baud rate.
Then wait for the timeout to pass, before continuing with dial script.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>