Without removing this line, I would get a warning (promoted to error) that
the symbol was being redefined in either `net_ip.h` or
`posix/net/if_arp.h`. Actually, `posix/net/if_arp.h` probably should not
exist, but that is part of a separate PR.
Signed-off-by: Chris Friedt <chris@fr4.co>
Use zsock APIs rather than POSIX APIs in net subsys tests.
The primary last remaining API call was `fcntl()` and related
constants, strings, etc.
It's convention to use native zephyr APIs in the testsuites and
POSIX APIs in samples.
Signed-off-by: Chris Friedt <chris@fr4.co>
After iface was link up, the IPv4 multicast address was added to iface
repeatly. This patch is to fix this.
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Add support for handling a gpio connectd to the device enable pin, this
has to be driven high to enable the device, and can be pulsed low to
reset the registers to the default configuration.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
The LCD_CAM peripheral is a parallel I/O controller integrated in the ESP32
series. It consists of an LCD output module and a DVP camera input module.
The camera side is already supported in Zephyr as a video driver.
This commit adds support for the LCD module by implementing it as a
MIPI-DBI backend. The LCD_CAM supports multiple output formats, and the
initial implementation provides I8080 mode.
Signed-off-by: Chen Xingyu <hi@xingrz.me>
The former `&lcd_cam` node has been split into an `&lcd_cam` controller
and an `&lcd_cam_dvp` subdevice. Update the board DTS accordingly.
Signed-off-by: Chen Xingyu <hi@xingrz.me>
The former `&lcd_cam` node has been split into an `&lcd_cam` controller
and an `&lcd_cam_dvp` subdevice. Update the board DTS accordingly.
Signed-off-by: Chen Xingyu <hi@xingrz.me>
Move the shared pinctrl and clock initialization for the LCD_CAM peripheral
from the ESP32 DVP driver into a new SoC-level implementation.
Update the ESP32-S3 DTS to reflect the new structure by introducing an
`lcd_cam_dvp` child node under the common `lcd_cam` parent node.
Signed-off-by: Chen Xingyu <hi@xingrz.me>
Rename the ESP32 LCD_CAM DVP driver and its DT binding from
`espressif,esp32-lcd-cam` to `espressif,esp32-lcd-cam-dvp` to clearly
identify it as the DVP (camera) input block of the LCD_CAM peripheral.
Signed-off-by: Chen Xingyu <hi@xingrz.me>
C99 § 7.19.6.5 defines `snprintf`. According to ¶ 2:
> If `n` is zero, nothing is written, and `s` may be a null pointer.
And according to § 7.19.6.12 ¶ 2:
> The `vsnprintf` function is equivalent to `snprintf` (...)
However, prior to this change, `vsnprintfcb` (and indirectly, `snprintfcb`)
unconditionally null-terminates the output buffer.
This fixes#48394, which was auto-closed without actually being fixed.
Co-authored-by: Adrien Lessard <adrien.lessard@rbr-global.com>
Signed-off-by: Samuel Coleman <samuel.coleman@rbr-global.com>
The goal is to slowly convert all Microchip MEC to in-tree drivers
and support code (no HAL). We had partial HAL support for MEC172x
as the mech172x folder. We are removing HAL based mech172x since HAL
will be deprecated in the future and it has no board support.
Signed-off-by: Scott Worley <scott.worley@microchip.com>
In-progress add Microchip MEC to PINCTRL test.
Note: This test only checks the pinmux value created by
device tree. It does not check the pin configuration.
We enhanced the tests by checking GPIO control register field(s)
match the device tree properities.
Signed-off-by: Scott Worley <scott.worley@microchip.com>
As part of the long term HAL deprecation goal, we add PINCTRL
files for MEC174x, MEC175x, and MEC1653B.
Signed-off-by: Scott Worley <scott.worley@microchip.com>
GPIO hardware in Microchip MEC parts is the same except for the MUX
field (number of alternate functions). We modify the old XEC PINCTRL
driver to work on all MEC parts and also be independent of HAL and
CMSIS register structures. During development we found a DT issue
with DT_ENUM_IDX_OR always inserting the default value. Worked around
by converting slew rate and drive strength to YAML integer type and
created defines for the values in the dt-bindings header.
Signed-off-by: Scott Worley <scott.worley@microchip.com>
Enabled async read function for NXP SAR ADC driver by implementing
nxp_sar_adc_read_async() and modifying nxp_sar_adc_read() to call it
with a NULL signal for synchronous operation.
Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
1. enable adc_sequence test for frdm_mcxa156
2. use DMA to transfer ADC conversion data in this sample
Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
Allow alarm_cfg->ticks to be 0 for immediate callback execution.
When ticks equals 0, set the interrupt pending instead of returning
-EINVAL, causing the ISR to fire immediately.
Implementation:
- Add irq_set_pending()/irq_is_pending() helpers for NVIC and GIC
- Store IRQ number in device config for pending operations
- Refactor timer state handling to eliminate duplication
- Update get_pending_int() to check both HW flags and NVIC/GIC state
This supports idle timer use cases where sleep duration may be zero
and eliminates the need for special-case handling in application code.
Signed-off-by: Holt Sun <holt.sun@nxp.com>
Add device tree property to configure LPTMR free-running mode instead
of hardcoding it to disabled.
The freerunning property controls counter reset behavior:
- If false (default): Counter resets after compare match
- If true: Counter resets only on overflow, continues after compare
This allows per-instance configuration of the LPTMR timer mode based
on application requirements without code changes.
Signed-off-by: Holt Sun <holt.sun@nxp.com>
Added mikrobus_serial and mikrobus_header node labels to EK-RA4L1
device tree board definition, allowing compatible shield boards to
be used.
Signed-off-by: Ian Morris <ian.d.morris@outlook.com>
Disable the automatic handling of the `NET_EVENT_IF_UP` event when the
WPA supplicant is enabled, as the supplicant already explicitly calls
`net_dhcpv4_restart` when the interface is ready for use. This fixes
the DHCP binding process being restarted before the interface is ready
(after `NET_EVENT_IF_UP`, before authorization), which always fails.
Signed-off-by: Jordan Yates <jordan@embeint.com>
set_sequencer() never reports errors and always returns 0.
The error check at the call site is therefore dead code.
Make the function void and drop the unused error handling.
Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
csr_write(), csr_set(), and csr_clear() use GNU C statement expressions,
which triggers SonarQube/clang warnings like:
use of GNU statement expression extension from macro expansion
Rewrite these write-only macros as do { ... } while (0) statement macros.
No functional change expected.
Signed-off-by: Afonso Oliveira <afonsoo@synopsys.com>