The following examples build and work as expected:
> west build -p -b framework_ledmatrix samples/basic/button
> west build -p -b framework_ledmatrix samples/basic/minimal
> west build -p -b framework_ledmatrix samples/subsys/usb/console
> west build -p -b framework_ledmatrix samples/subsys/usb/cdc_acm
> west build -p -b framework_ledmatrix samples/subsys/input/input_dump
Signed-off-by: Daniel Schaefer <dhs@frame.work>
Implement PWM input capture functionality for the NXP SCTimer
driver with support for both pulse width and period measurement
in single-shot and continuous modes.
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
Add input-channels and inputmux-connections properties to the
nxp,sctimer-pwm device tree binding to support SCTimer input
capture configuration.
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
1.Add mcux_sctimer_pwm_update_polarity() function to properly
reconfigure PWM output polarity when duty cycle is updated.
2.Update Match Reload Value register when Match register is
set.
3.Stop timer before update to prevent bus error
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
Add device tree overlay to enable PWM API testing on the frdm_mcxa153
board using ctimer0. The overlay configures:
- PWM test alias pointing to ctimer0
- Pin P2_12 (J2_12) as PWM output
- ctimer0 in PWM mode with prescaler set to 1
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
The prescaler divides the clock by (prescaler + 1), not by the prescaler
value directly. Update the calculation to correctly account for this.
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
Clarify that the prescaler value divides the clock by (prescaler + 1),
not by the prescaler value directly. This helps users understand the
actual clock division behavior.
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
Add device tree overlay for PWM loopback testing on the
MIMXRT1180EVK board using FlexPWM1 module.
Configuration includes:
- Pin configuration for PWM output (gpio_ad_00/J69-3) and input
capture (gpio_ad_06/J70-1) using FlexPWM1 channels
- PWM loopback test node with output on channel 0 and input on
channel 2
- Input filter settings with minimal count and period for testing
- Physical connection requirement between J69-3 and J70-1
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
Add support for PWM input capture functionality to the NXP MCUX PWM
driver. This enables measurement of pulse width and period of external
PWM signals.
Key features added:
- PWM capture configuration and control APIs
- Interrupt-driven capture with overflow handling
- Support for both pulse width and period measurement
- Configurable input filtering
- Support for continuous and one-shot capture modes
The implementation uses FlexPWM channel X as the dedicated input
capture channel, while channels 0 and 1 remain available for PWM
output. Capture functionality is conditionally compiled based on
CONFIG_PWM_CAPTURE configuration option.
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
Add device tree binding properties for PWM input capture filtering
functionality to the NXP i.MX PWM driver binding.
New properties added:
- input-filter-count: Configure number of consecutive samples
required before accepting input transitions
- input-filter-period: Set sampling period in IPBus clock cycles
for input capture filtering
These properties enable configuration of input filtering to reduce
noise and improve signal integrity for PWM capture operations.
Setting filter period to 0 bypasses the input filter entirely.
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
In PWM_SetupPwm implementation, there is a check:
temp = pwmClock / pwmFreq_Hz;
assert(temp <= 0xFFFFU);
Currently pwmFreq_Hz is 1, makes assert failed with
high frequency pwmClock. Since VALx values is set
directly for edge aligned PWM, the pwmFreq_Hz here is
a dummy value, set pwmFreq_Hz equal to pwmClock
frequency to pass assert check.
Signed-off-by: Felix Wang <fei.wang_3@nxp.com>
Adding support for running Zephyr OS as a guest virtual machine
in the QNX Hypervisor environment.
This change introduces a new board configuration for ARM64-based
QNX Hypervisor VM.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
The STMicroelectronics ST87M01 modem is an ultra-compact low-power
NB-IoT industrial module.
The ST87M01 is a high-performance, fully programmable, ultra-compact,
and low-power LTE Cat NB2 NB-IoT industrial module series,
offering comprehensive worldwide band coverage and advanced
security features.
Supporting a wide range of IoT protocols, the ST87M01 module includes
PDU SMS services and internet protocols such as TCP/IP, TLS/DTLS, CoAP,
LwM2M, MQTT, and HTTP/HTTPS, enabling versatile connectivity and
application scenarios.
This driver introduces support for AT commands to query modem
information and socket offloading for TCP/UDP transfers.
Signed-off-by: Isabelle OGER <isabelle.oger@st.com>
Add workaround for MCUXSDK FTFX driver when FTFx_DRIVER_IS_FLASH_RESIDENT
is enabled.
The SDK places the run command function in data section which
is not executable when Zephyr configures memory permissions.
Implement a RAM function to replace the FTFX driver's run command function
Fixes: #98560
Signed-off-by: Jason Yu <zejiang.yu@nxp.com>
Fix a spelling mistake in the board name description for ADI
evaluation boards.
No functional change.
Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
Specific fixes include:
- Add missing space after period in the disk space warning.
- Fix mismatched quotes in the --install-base example (usage of `...').
- Removed a typo double quote in the installation description.
This addresses the CLI help message issues reported.
Fixes#95609
Signed-off-by: Malon Tian <a3205153416@gmail.com>
Instead of processing loopback packets from the TX thread directly,
queue them for further processing by RX thread (if possible), just as
regular packets. It's now possible as the information regarding the
packet is a loopback one or not is stored directly in the net_pkt
structure.
This allows to avoid unexpected stack consumption increases if packets
are sent for loopback destinations.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
If CONFIG_SDMMC_STM32_CLOCK_CHECK=y but the SDMMC node lacked domain clock,
the driver would perform an out-of-bounds access to priv->pclken[1] and
provide garbage as the "subsystem" in the call to clock_control_get_rate().
Detect this situation and error out with an explicit message instead to
prevent UB and help users.
Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
STM32H5, STM32L5, STM32U5, and STM32WBAX series MCUs have external
ICACHE/DCACHE with a cache line size of 16 bytes. The previous
configuration incorrectly set the cache line size to 32 bytes (the
default cache line size for Cortex-M cores).
Signed-off-by: Tim Pambor <tim.pambor@codewrights.de>
Removed revision from the MIMXRT1170-EVK documentation title,
to be consistent with all other MIMXRT boards.
Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
Use NRF_DT_INST_IRQ_ macros which support building with and without
SW ISR table for all nordic socs.
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Use NRF_DT_INST_IRQ_ macros which support building with and without
SW ISR table for all nordic socs.
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Use NRF_DT_INST_IRQ_ macros which support building with and without
SW ISR table for all nordic socs.
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Introduce the NRF_DT_IRQ_DIRECT_DEFINE and NRF_DT_IRQ_CONNECT macros
which reduce provide a common way for nordic drivers to adapt to the
presence of the SW ISR table which is commonly excluded as it is not
required for nordic socs. Also adds device driver inst variants of
the macros.
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
- Fixes NXP FRDM names in yaml files.
- The '-' was missed for some NXP FRDM boards.
- It caused an inconsistent board list in MCUx-VSCode extension.
Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
Add tests to ensure 'west build' arguments are correctly forwarded to
CMake in the correct order.
Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
Support cmake options specified via argument --cmake-opt, in order to
avoid `--` in alias commands.
Signed-off-by: Thorsten Klein <thorsten.klein@bshg.com>
Enable the full range of CAN timing tests on the NXP FRDM-MCXA366,
FRDM-MCXA346 and FRDM-MCXA266 boards.
Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
Add myself as a collaborator for the Display drivers subsystem.
I have been actively contributing to display driver implementations
and will continue developing and reviewing patches.
Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
Add myslef as a collaborator for the MIPI DBI and MIPI DSI subsystems.
I have been actively contributing to MIPI DBI/DSI implementations
and will continue developing and reviewing patches.
Signed-off-by: Kate Wang <yumeng.wang@nxp.com>
Document the scope changes for NXP compile flags that were
moved from global to local scope in PR #100252. Applications
that depended on these flags being globally available may need
to be updated.
The following flags have been moved to use
zephyr_library_compile_definitions():
- BOARD_FLASH_SIZE: moved to SoC layer CMake for RT10xx and RT11xx
- XIP_BOOT_HEADER_ENABLE: scoped to boards CMake or SoC layer as needed
- BOOT_HEADER_ENABLE: scoped to boards CMake, removed from RW61x boards
- XIP_BOOT_HEADER_DCD_ENABLE: scoped to boards CMake or SoC layer as needed
Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
'BOOT_HEADER_ENABLE' is not used in RW61x build tree,
so should remove it from RW61x board CMakeLists.txt.
Note: if out-of-tree files still need to use this flag,
please add it in your own CMakeLists.txt.
Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>