SDRAM1 / SDRAM2 / PSRAM sections were being referenced in order to make
them accessible for the framebuffer. This is now addressed via the
mechanism provided by Zephyr hence this is no more necessary.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
Use the LINKER_DT_NODE_REGION_NAME macro in order to get the
memory-region into which to put the framebuffer for the LTDC.
This is made possible since all memory areas have the
zephyr,memory-region compatible, allowing to have each region
referenced within the linker script generated by Zephyr.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
Add the compatible zephyr,memory-region for all mmio-sram region
which do not have yet that compatible as well as add the label to
those regions. This allow to have a linker memory report which list
all areas and also have all regions accessible via the linker script.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
remove CONFIG_LIBSBC_ENCODER and CONFIG_LIBSBC_DECODER from sbc.h, then
include the required heders files path defaultly to fix building errors.
Signed-off-by: Mark Wang <yichang.wang@nxp.com>
Now that we support multiple VIFs, need to add argument for the
interface for any command.
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Move the VIF initialization to top to do it for both VIFs, this fixes a
crash when scanning on the 2nd VIF.
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
In case STA + AP mode is enabled, then adjust the defaults to accomodate
the second interface.
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Update WPA supplicant functions to pass the control channel (socket) as a
parameter instead of relying on a global socket. This change aligns with
the PR 80 modifications in hostap repo and ensures that each Virtual
Interface (VIF) uses its dedicated control channel for communication.
Signed-off-by: Hanan Arshad <hananarshad619@gmail.com>
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
This commit links the hostap PR required for the nrf7002 driver.
west.yml is updated
Signed-off-by: Hanan Arshad <hananarshad619@gmail.com>
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
Description:
The nRF7002 firmware supports two virtual interfaces (VIFs) that can
operate in different modes (e.g., AP and STA). However, the existing
Zephyr driver only utilizes a single VIF, preventing full
multi-interface support.
This commit extends the nRF7002 driver to support multiple VIFs by
making the following modifications:
* The driver already contains an array of vif_ctx_zep, but only the
first item was being used. Now, a second Ethernet device is registered
using vif_ctx_zep[1], enabling multi-VIF operation.
* Introduced vif_ctx_cnt to keep track of active interfaces and manage
their state effectively.
* Ensured that FMAC (Firmware MAC) is initialized only once, avoiding
redundant initializations when multiple VIFs are present.
* The UMAC control commands previously did not associate responses with
the issuing VIF. A queue is now introduced to track the originating VIF
for each command and correctly route the response event to the
corresponding interface.
Signed-off-by: Hanan Arshad <hananarshad619@gmail.com>
Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
The Kconfig option `CONFIG_POSIX_READER_WRITER_LOCKS` is being deprecated
and renamed to `CONFIG_POSIX_RW_LOCKS` in order to match the name of the
POSIX Option Group.
`_POSIX_READER_WRITER_LOCKS` is the name of the feature test macro.
There are a few instances where the name of the Option Group does not
correspond exactly to the name of the Option (Feature Test Macro), and
this is one of them.
Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
CONFIG_SERIAL_SUPPORT_INTERRUPT is a Kconfig option that is supposed to
be selected by serial drivers that support interrupts. This commit
removes a bogus "depends on !SERIAL_SUPPORT_INTERRUPT" which does not
make sense and causes some tests to fail.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
There are several doc-related build targets that do not require sphinx,
e.g. one might want to simply generate the Doxygen docs (Doxygen remaining
a hard dependency), so do not require sphinx to be present and, instead,
conditionally add the associated targets when sphinx is present.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Enable CONFIG_PM_DEVICE_RUNTIME_DEFAULT_ENABLE by default for all
nordic SoCs if CONFIG_PM_DEVICE_RUNTIME is used. This will ensure
consistent behavior across all nordic SoCs and remove the need
for pasting the devicetree propert zephyr,pm-device-runtime-auto
everywhere.
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
Many SoCs which use PM_DEVICE_RUNTIME need every device in the system
to have PM_DEVICE_RUNTIME enabled to function. Currently, this is only
possible by adding zephyr,pm-device-runtime-auto; to every node in
every devicetree which could potentially implement device power
management. This is very error prone since its easy to miss a node,
especially if users apply overlays, where users need to know and
remember to apply or reapply this property.
This commit adds a Kconfig, disabled by default, which automatically
treats every device as if it had the zephyr,pm-device-runtime-auto
property added to every node.
Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
We are moving away from category based driver names. Updating the
"files:" patterns to include the newer drivers as well.
Signed-off-by: Sreeram Tatapudi <sreeram.praveen@infineon.com>
Since this board is by default having hyperram as SRAM, need to set
NOCACHE_MEMORY when using dma to make sure the memory for the tcd pools
is not cached.
The previous approach to set zephyr,sram to dtcm just
caused an error because zephyr,dtcm was also set to dtcm, and the
default logic of the driver is put the tcdpools in dtcm, so what
happened was these buffer got linked over the rest of the app causing
massive failing of the image to work at all.
So instead of doing that we need to just keep running from hyperram but
set CONFIG_NOCACHE_MEMORY to have a place to put the tcd pools that wont
be cached.
Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
Add missing one-shot conversion logic in sample_fetch when driver is
configured for shutdown mode. Previously, the driver would attempt to
read temperature without triggering conversion, resulting in stale data.
Signed-off-by: Dipak Shetty <shetty.dipak@gmx.com>
PWM leds for this board are not functional out-of-the-box as pwm0 needs
to be configured/enabled first. Disable the pwmleds node to reflect
this.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Add support for enabling and configuring the self-test mode of the
LIS2DH accelerometer through a dedicated sensor attribute.
Signed-off-by: Arthur Gay <arthur.gay@marshmallow.kids>
List of allowed platforms for this sample was
changed in PR #85997. This enabled more
platforms including those that are not needed.
This commit excludes nrf5340/cpuapp_ns and
nrf5340/cpunet platforms since they are not
supported by this sample.
Signed-off-by: Dominik Kilian <Dominik.Kilian@nordicsemi.no>
Adjust the bit field check sequence for "en4b" to support some flash
devices that offer multiple mechanisms for entering 4-byte address
mode.
Signed-off-by: Albort Xue <yao.xue@nxp.com>
The pwmleds node for `xmc45_relax_kit` and `xmc47_relax_kit` should be
disabled initially due to the PWM controller the pwmleds node use not
being enabled by default.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Add a note that the backlog parameter of the listen() function is now
respected and the backlog support has been implemented for the TCP
server.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
TCP somehow ended up with two internal headers with duplicate set of
internal function declarations. As tcp.h looks like a subset of the
tcp_internal.h header, combine the two headers into a single
tcp_internal.h and remove tcp.h. There were some differences in doxygen
API descriptions, so I've used the description that better described the
actual function purpose.
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
Implement TCP connection backlog for TCP server. The backlog parameter
is already specified by the listen() socket API, however it was never
implemented in Zephyr. It can be useful to limit the number of incoming
connections on the server side, and thus limit the connection flood and
resource shortage.
The backlog is implemented as a atomic counter inside the TCP context.
The counter is initialized on the listen() call (and thus no connection
can be accepted before listen() is called), and then decremented
whenever new connection is initiated. When the application accepts
the incoming connection, it should call the net_tcp_conn_accepted()
API (done automatically for sockets) to inform the TCP layer that the
backlog can be incremented. The backlog value is also incremented back
if the connection is released before the connection was passed to the
application.
For tracking the parent (listening) socket, the 'accepted_conn' pointer
on the client context has been reused. Note, that the pointer used to be
cleared before the accept_cb() call before, to prevent consecutive calls
to the callback, however this was not really needed - the TCP state is
changed anyway, and the accept_cb() is only used in TCP_SYN_RECEIVED
state. The pointer is no cleared when the application accepts the
connection (or the client or the associated parent context is closed).
Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
When encoding cached LwM2M 1.1 resources into SenML CBOR, the encoder
currently aborts with -ENOMEM if the number of records (minus
some CBOR delimiter elements) exceeds CONFIG_LWM2M_RW_SENML_CBOR_RECORDS.
This discards all serialized data and prevents any payload from
being sent, leaving the client stuck and caches filling up.
This patch changes the behavior: if some records were already
serialized before the buffer shortage, the CBOR output is finalized
(end marker added) and the partial payload is returned. This allows
the client to send useful data, and the upper layers can react by
reducing batch size.
Impact:
- Preserves forward progress instead of canceling the message
- Avoids cache lock-up
- No changes to the API or success path behavior
Signed-off-by: Marcel Wappler <marcel.wappler@decentlab.com>
Introduce a shell for specific cpu core about PM control,
this aligns with existing design flow where the policy decides
the state based on next event timing, locks and latency constraints,
and the system naturally enters low power through the idle thread.
New shell commands under `cpu`:
- cpu states : List supported CPU power states (from devicetree)
- cpu available : For each state/substate, show if available
- cpu lock : Lock specific low power mode
- cpu unlock : Unlock specific low power mode
- cpu idle ms : Sleep the current thread to let idle run PM
Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
Add two helper functions to convert power management states between
enum and string:
- pm_state_to_string()
- pm_state_from_string()
Signed-off-by: Yongxu Wang <yongxu.wang@nxp.com>
Add necessary configuration for sar_adc1 on imx93 core cm33
There are some issues with USERSPACE, so add an overlay to
disable CONFIG_TEST_USERSPACE, will drop it once it works.
Signed-off-by: Qiang Zhao <qiang.zhao@nxp.com>