Some platforms, notably ARM64, need more than 512 bytes of breathing
room on the stack. Very weird and difficult-to-track memory corruptions
were caused by test_mheap_realloc without this.
Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
Use Wi-Fi connecting to Qualcomm IPQ8074 AP, and run the UDP RX traffic
with Zperf, but zperf does not return the throughput number after
traffic completion nor any session started prints. After traffic
completion, ping from STA to AP and vice versa does not work. The
socket_service thread is found blocked forever at zsock_wait_data()
after dns_dispatcher_svc_handler() is called via trigger_work().
The root cause of this issue is:
STA received one DHCPv4 packet containing DHCPV4_OPTIONS_DNS_SERVER,
it will create DNS socket and registered to socket_service. Then STA
received another IPv6 router advertisement packet containing
NET_ICMPV6_ND_OPT_RDNSS, it will close socket and change the state of
poll_events to K_POLL_STATE_CANCELLED(8), then registered to
socket_service with same fd. In socket_service thread, zsock_poll()
called zsock_poll_update_ctx() when handled ZFD_IOCTL_POLL_UPDATE, and
it checked the state of poll_events was not K_POLL_STATE_NOT_READY(0),
then it will set pfd->revents to '|= ZSOCK_POLLIN'. Finally
trigger_work() can be called as 'ctx.events[i].revents > 0' is matched.
The fix of this issue is that, in zsock_poll_update_ctx(), it should
check the state of poll_events is neither K_POLL_STATE_NOT_READY nor
K_POLL_STATE_CANCELLED before setting revents as ZSOCK_POLLIN, to avoid
trigger_work be unexpectedly called.
Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
There is a case that if the local is a peripheral and a L2CAP server
with the security level 3,the mitm should be set to make sure the
security level can reach level 3.
But in current implementation, the MITM is not set because the MITM
of `Authentication_Requirements` parameter of remote is not set. And
the security level will be level 2 after the security pairing
procedure complete.
Add a function `bt_l2cap_br_get_max_sec_level` to
get the max level of the registered servers.
`
Force set the MITM bit if the max level is bigger than level 2 and
pairing method is not `just works`.
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Currently, we set P002 (AN000) as the default pin selection
for ADC0 on ek_ra4l1. However, after testing the ADC function
with this pin selection, the ADC function does not work
on this pin.
The main reason is P002 is used for the I2C I/O Port Expander
and is connected to a 10kΩ pull-up resistor.
For the solution, we will select the P003 (AN001)
as default pinsel for adc0
Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
We only need to dereference translate_config once to get the current
region_config we are working with, do this once at the start of the
sections that use it multiple times.
The compiler should optimize the multiple fetches anyway, so this
is purely for code readability.
Signed-off-by: Andrew Davis <afd@ti.com>
Instead of tracking if a matching address has been found and then
doing the translation after, we can loop until one is found and
do the translation and return immediately.
This saves having to keep a "found" variable, and makes the code
shorter and more readable IMHO. Do this here.
Signed-off-by: Andrew Davis <afd@ti.com>
Do not check virt being NULL as 0 is a valid address that can be
translated. Phys on the other hand is an output pointer that will be
assigned to and so cannot be NULL, check this instead to prevent a
NULL pointer dereference later.
Note that phys is allowed to be NULL, so this is not an invalid argument.
It can set to NULL when the caller wants to check if a virtual address is
mapped but does not care about the address itself. In that case -EFAULT
should be returned if the virtual address is not mapped, 0 otherwise.
For RAT, all addresses not translated are still valid and mapped as
pass-through, so we always return 0 in this check case.
Signed-off-by: Andrew Davis <afd@ti.com>
These struct and definitions are only used internally by this driver,
move them out of the public interface header and into the driver source.
Signed-off-by: Andrew Davis <afd@ti.com>
The struct address_trans_region_config is already defined, no reason
to pass this in as a void pointer then cast it later. Pass it in
as a struct pointer.
Signed-off-by: Andrew Davis <afd@ti.com>
This helper function is only used once and is way too small to need
to be factored into its own function. Inlining it greatly reduces
code size and complexity.
While merging, move the ASSERT()S out of the loop, they only need
checked once.
Signed-off-by: Andrew Davis <afd@ti.com>
The interrupt pin is active low, not sure how any of these could have
worked correctly, maybe they've only been tested in polling mode.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
This test checks that the length returned is not altered
even if the payload resembles a valid IPv4 or IPv6 length.
Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
The ethernet header size with VLAN tag is 18 bytes,
so the length check should accommodate this.
Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
Do not update packet length for unsupported packet families.
AF_PACKET family used the IPv6 length update, which breaks the
packet length if there is a payload with bytes resembling a
IPv6 length field less then 6 or a IPv4 length field less
then 46.
Signed-off-by: Christoph Seitz <christoph.seitz@infineon.com>
video_format_cap needs to be terminated with a NULL entry
to allow looping over the formats.
Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
Add one integration platform per testsuite to reduce the number
of issues reported by the qa log level introduced in #86571.
Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
This should allow an issue such as #86681 to be found earlier for a not
widely used config.
Signed-off-by: Etienne de Maricourt <edmecomemail@gmail.com>
Avoid a "defined but not used" warning on
`init_next_pending_timeseries_data` when
LWM2M_RESOURCE_DATA_CACHE_SUPPORT is enabled but not LWM2M_VERSION_1_1.
Signed-off-by: Etienne de Maricourt <edmecomemail@gmail.com>
native_posix has been removed, so let's remove its support from
kconfig for this driver.
Also let's replace its mention in the help message.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
"native POSIX" in Zephyr's context is typically understood as something
else than what this text refers to. Let's rephrase it.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
native_posix has been removed. There is no need to check for it
anymore.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Remove a kconfig dependency on BOARD_NATIVE_POSIX which
does not really exist anymore.
Replace a comment mention of native_posix with native_posix.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Clarify the commentary about how the constructor initialization
is setup and why.
(The current text refers to native_posix, which does not
exist anymore).
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This board does not exist anymore, so this is just dead code at this
point.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Deprecate this header which provides API compatibility since
the header was renamed in 2023, but was never deprecated.
Planned for removal in v4.4.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Deprecate this header which provides API compatibility with
native_posix, with planned removal in v4.4.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Use `W5500-EVB_Pico` - the commercial name of this board - for
`full_name` field of `board.yml`.
Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>