This supports nuvoton numaker m55m1x series soc. Besides, it also
has relevant modifications, including:
1. Fix failure to enable HICR48M, which is to clock usbd and phy
2. Support HWINFO for USB device serial number
Signed-off-by: Chun-Chieh Li <ccli8@nuvoton.com>
Add all the base controls present like they are in Linux into Zephyr,
limited to those that can apply in the current system:
- Buttons are left as integer for now.
- Some description is modified to fit the Zephyr situation.
- For the minimum number of buffer, Zephyr uses a different mechanism.
- No audio support through the video subsystem.
- Homogenize the wording
Signed-off-by: Josuah Demangeon <me@josuah.net>
Since it's directly related (we can't just burst-read the fifo at
once). This patch includes a comment block explaining this rationale.
Signed-off-by: Luis Ubieda <luisf@croxel.com>
Allow for users to define the fifo-watermark on a per-instance basis
through device-tree properties. This setting is validated at build
time, so missing it when required, or setting an invalid value should
not end up in a run-time errror (as in: it runs but nothing happens).
Signed-off-by: Luis Ubieda <luisf@croxel.com>
This patch fixes previous overriding of ODR setting through DTS (it
would always be 25-Hz, irrespective of what the DTS property said).
While doing so, create dt-binding enum to improve settings clarity.
Signed-off-by: Luis Ubieda <luisf@croxel.com>
Introduced WIFI_SILABS_SIWX91X_LIMIT_PACKET_BUF_PER_STA.
This flag limits packet queues in AP mode.
Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
Add support for configuring the master clock (MCLK) direction in the
I2S MCUX SAI driver. This allows controlling whether the MCLK pin acts
as an input or output based on device tree configuration, improving
flexibility when interfacing with external audio codecs.
The change leverages the mclk_output property from device tree to
properly set the direction of the MCLK pin during initialization.
Signed-off-by: Tomas Barak <tomas.barak@nxp.com>
- Implemented `siwx91x_set_twt_setup` and `siwx91x_set_twt_teardown` for
handling TWT setup and teardown requests.
- Added validation for TWT parameters, including negotiation type,
device state, and operation type.
- Integrated TWT functionality into the `wifi_mgmt_ops` structure for
seamless management via the Zephyr Wi-Fi API.
Signed-off-by: Muzaffar Ahmed <muzaffar.ahmed@silabs.com>
Don't block the system workqueue for 2 seconds (default value) when
attempting to perform RPU recovery. The system workqueue is a shared
resource which should not be blocked for significant periods of time.
Signed-off-by: Jordan Yates <jordan@embeint.com>
Silabs siwx91x includes a memory controller for (Quad-)SPI PSRAM. It
allows the application to use the PSRAM as if it was any other RAM.
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Add a reusable uart-bridge driver that echoes data between two serial
devices. It's mainly meant to be used with one of the devices being an
USB CDC-ACM, the data is buffered, there's a pause feature to stop the
USB endpoint when the hardware UART is filling up to avoid overrun and
there's a helper function used to propagate the USB uart configuration
to the hardware one.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
The API specifies that brightness is 0 to 100, no point checking it in
the individual drivers.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
The led_set_brightness API says that brightness is defined as
percentage, add a macro from the max and use it everywhere.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
In case the SPI transaction has SPI_HOLD_ON_CS set, we need to keep
SPI resumed until spi_release() is called. This is required as we
now need to keep the CS GPIO port resumed until transaction is
complete.
Suspending CS GPIO is not allowed from ISR in some cases (H20 fast
GPIO instance) so we have to defer CS GPIO suspend to some thread
context (put_async or spi_release()).
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Implement calling spi_context_cs_get_all() and
spi_context_cs_put_all() in line with pm resume/suspend.
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Introduce spi_context_cs_get() and spi_context_cs_put() which shall
be used from drivers to get/put the GPIO port the CS GPIO belongs to
before and after a transaction, in line with the SPI drivers pm
action hook being called.
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Implement PM_DEVICE_RUNTIME for gpio_nrfx.c
PM is required to request/release the GPD domain if such exists
for a given GPIO instance. Without this, every single API call
will result in a requesting the GPD domain, which makes it slow
and unusable from ISRs, given GPD requires IPC. Now, user can
simply get the GPIO before using it, and put it once done,
calling the APIs from ISR while resumed.
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Commit fa4a9db7a3 ("dma: intel_adsp_hda: Fix invalid init sequence and
register use") moved intel_adsp_hda_channels_init() out from resume
path. This causes a regression to CONFIG_DMA_INTEL_ADSP_HDA_TIMING_L1_EXIT
as without irq_config() call the interrupt configuration may be partial.
Address this by calling irq_config() unconditionally on resume path.
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
When RTS/CTS is toggled it disables the receiver and transmitter
bits to be able to change the flow control bits in the MODIR register.
After it has done so, it should restore the original value of the
CTRL register to re-enable the transmitter and/or receiver if they
were enabled before calling the mcux_lpuart_line_ctrl_set_rts()
function.
Signed-off-by: Bas van Loon <bas@arch-embedded.com>
Previously, it was expected that the modem would immediately
disconnect and close the PPP link, when the network was lost
(+CEREG: 4 is received). Failure to do so, would result in
modem attempting to chat with dlci2 channel, where as cellular
modem driver would drop to dlci1. This would show as dial
script timing out, which would freeze cellular modem driver.
Adding dormant state enables graceful disconnection of PPP-link
when the network is lost. This allows the modems which do
not automatically close with network link loss to close
based on PPP link closure.
Signed-off-by: Markus Lassila <markus.lassila@nordicsemi.no>
Add minimal support for the aesc silicon UART IP core.
This core includes an internal clock divider and supports flexible
frame configurations, allowing for variable data length, parity, and
stop bit settings.
The current driver version does not support interrupts.
Signed-off-by: Daniel Schultz <dnltz@aesc-silicon.de>
The sensor value was accidentally set a second time.
Refactor `tmp11x_attr_get` to fix the issue and align more with
`tmp11x_attr_set`.
Signed-off-by: Jeppe Odgaard <jeppe.odgaard@prevas.dk>
Add enabled_clock, on / off and configure support for the clocks of
the stm32mp13. Describes the peripheral clock source selection.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
Rename the frac-v PLL binding into fracn in order to make it
consistent with other STM32 PLL bindings.
This commit also correct the range which should be 0 - 8191.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>