The test fails with a stack overflow on qemu_x86 when we build with
llvm. Bump the test stack a little addresses the issue.
Signed-off-by: Kumar Gala <kumar.gala@intel.com>
Add a missing bytes in the configuration of ili9341 screen that causes
a compilation issue. The value added is the default one defined in the
ilitek,ili9341.yaml file.
Signed-off-by: Guillaume Gautier <guillaume.gautier-ext@st.com>
Adds details on a bug for for the shell RX ring buffer receive
size being made larger when the shell MCUmgr transport is
selected, to fix an issue whereby commands were corrupt.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
More GigaDevice support added, include drivers, boards, etc.
Also, some known issue has been fixed.
Signed-off-by: HaiLong Yang <hailong.yang@brainco.cn>
Added comments about new drivers, bug fixes, and enhancements made to
sensor drivers since the last release.
Signed-off-by: Maureen Helm <maureen.helm@intel.com>
Previous method of setting default USB related log levels for Thingy53
led to generating inconsistent configuration, ex.
CONFIG_USB_CDC_ACM_LOG_LEVEL=0 and CONFIG_USB_CDC_ACM_LOG_LEVEL_INF=y
at the same time. This commit changes to proper implementation
which is overlaying choice's default.
Signed-off-by: Mateusz Kapala <mateusz.kapala@nordicsemi.no>
For Thingy:53 board, USB remote wakeup should be disabled by
default. Current solution disabled it from Kconfig.defconfig,
but was always overwritten by imply in CONFIG_USB_NRFX.
This change disables it in board *_defconfig files.
Signed-off-by: Mateusz Kapala <mateusz.kapala@nordicsemi.no>
The data stage of Control transfers that are sent from Host to Device, can
be made out of multiple OUT transactions, if the amount of data to be
transmitted is larger than the endpoint size. When this happens, the DATA
pid should be toggling. The USB Device driver of the pico must correctly
prime the EP0_OUT buffer with the correct data PID, otherwise the hardware
will reject the received transaction.
Before this change the driver used to always prime EP0_OUT with a DATA1
pid.
After this change the driver only uses DATA1 pid after a setup transaction,
and then toggles the pid for each transaction.
Signed-off-by: Purdea Andrei <andrei@purdea.ro>
QCBOR cannot be shipped with Zephyr.
Allow the application to supply their own copy of QCBOR or let the TF-M
build system automatically download this dependency.
Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
Includes changes to allow Zephyr to avoid building the initial
attestation service at build time.
Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
Disables the initial attestation suite, which we are unable to run
at present due to a license issue with the underlying QCBOR library
which this service depends on in TF-M.
This commit can be reverted once an acceptable solution has been found
for the QCBOR license in TF-M.
Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
Prevents Zephyr from enabling the initial attestation service in TF-M,
due to a dependency it has on an incompatibly-licensed library (QCBOR).
This update checks if either of the following config flags are
enabled at build time:
- `CONFIG_TFM_PARTITION_INITIAL_ATTESTATION`
- `CONFIG_TFM_PSA_TEST_INITIAL_ATTESTATION`
If either of these are set to true, a fatal error will be thrown at
build time, indicating the reason for the failure.
This change can be reverted once a longer term solution to the QCBOR
license issues has been resolved.
Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
On a repeated dma_start, the stm3u5 dma driver should return
immediately if it is already started.
On a repeated dma_stop, the stm3u5 dma driver should return
immediately if it is already stopped.
This like the dma driver does for other stm32 series.
Signed-off-by: Francois Ramu <francois.ramu@st.com>
Because of CAN bus clock, some bitrate values might not not give
a valid timing calculation depending on the CAN bus freq.
The sysclock is changed to the highest common value between
USB 48MHz and CAN.
The result is a sysclock of 192MHz. Then is USB at 48MHz
and the CAN bus freq is the APB1 (PCLK1) at 48MHz
Signed-off-by: Francois Ramu <francois.ramu@st.com>
Fixes sporadic data access violations that were occuring when pipes
were being used from an ISR. The ISR was incorrectly using the pipe
descriptor belonging to the interrupted thread. This led to corrupted
pipe meta-data. The solution proposed here is to perform a run-time
check and if use a pipe descriptor on the ISR's stack if called from
an ISR.
For additional information, see:
https://github.com/zephyrproject-rtos/zephyr/issues/52812
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
Adds a spin lock/unlock barrier pair after a pipe thread wakes.
After the list of waiting threads is generated, it is possible for
threads on that list to timeout and be removed from the wait queue.
However, since that list was generated before the timeout occurred,
the timed-out thread must wait until the copying is done (the
pipe's spin-lock has been released).
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
By the time the working list of readers/writers is processed, it is
possible that waiting reader/writer being processed had timed out
and is no longer on the wait queue. As such, we can not blindly
wake the next thread as that next thread might not be the thread we
had just been processing.
To address this, the calls to z_sched_wake() have been replaced
with z_unpend_thread() and z_ready_thread() so that a specific
thread can be safely targeted for waking.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
Uses the new z_sched_waitq_walk() routine to walk the pipe's wait
queue to build a list of waiting threads that will be used for
the data transfer.
This method is preferred over the previous as it ensures that
wait queue is safely traversed.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
Adds a routine to safely walk a specified wait queue and invoke a
custom callback function on each waiting thread.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
This is a workaround for a compiler bug on (at least) GCC 12.1.0 in
Zephyr SDK 0.15.1. The optimizer generates this function with a last
instruction that is an unconditional branch (a tail call into the
chunk_set() handling). But that means that the NEXT instruction gets
decoded as part of the branch delay slot, but that instruction isn't
part of this function! Some instructions aren't legal in branch delay
slots. One of those is ENTER_S, which is a very common entry
instruction for whatever function the linker places after us. It
seems like the compiler doesn't understand this problem. Stuff a NOP
in to guarantee the code is legal.
Comment above is duplicated in the code. The workaround is
straightforward once the issue is understood, but the path to get here
was hilariously weird.
Fixes#54720
Signed-off-by: Andy Ross <andyross@google.com>
Correct bit mask for RF2XX_RX_TRAC_BIT_MASK. Current mask produce dead
code warnings when comparing to value:
RF2XX_TRX_PHY_STATE_TRAC_INVALID = 0x07
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Allows receive packets that are bigger than
CONFIG_RNDIS_BULK_EP_MPS.
Considering:
* MaxPacketsPerTransfer is 1
* MaxTransferSize is 1558
* PacketAlignmentFactor is 0 (20=1)
The rndis_bulk_out shall be able to receive transfer
up to 1558 bytes (inclusive).
Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
Fixing typo in llcp_lp_cc_established revealed the need for completing
the CIS establishment procedure by additional call to local/remote
check_done function.
Fixed by exposing lr_check_done and rr_check_done with naming update and
calling after injecting the CIS_ESTABLISHED event.
Signed-off-by: Morten Priess <mtpr@oticon.com>
If CIS offset in LL_CIS_IND is less than EVENT_OVERHEAD_START_US, the
controller is not able to establish the CIS in the ACL connection event
specified, but needs to start setup one connection event earlier.
With this commit, if offset is larger than EVENT_OVERHEAD_START_US the
first CIS event can be prepared in due time immediately.
This enables the controller to setup first CIS, even when instant is
equal to the ACL event_counter.
Signed-off-by: Morten Priess <mtpr@oticon.com>
Fix Periodic Advertising time reservation when enabling with
ADI support. As the PDU is updated, use the updated PDU to
calculate the time reservation.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Add implementation to schedule BIG events after Periodic
Advertising when Periodic Advertising is enabled after
Extended Advertising has already been enabled.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
As the range of ticker_id has been checked, context specific
get interface be used instead of doing range check again in
ull_hdr_get_cb().
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Fix auxiliary PDU time reservation calculation to reserve
for possible increase in PDU len due to updates to data in
the Common Extended Header Format of the PDUs.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Fix assertion due to delayed prepare of first BIG event when
supporting encryption. Crypto calculation introduce extra
processing delay causing the scheduling of first BIG event
to be delayed. Detect such delay and skip to next ISO
interval.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Fix the access address and radio ready timestamp to derive
the value of the first subevent, so that correct anchor
point reference is used in scheduling subsequent subevents.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Fix uninitialized CIS LLL structure member variables,
uninitialised CIS acl_handle causes HCI command disallowed
for acl_handle's other than 0x0000.
Initialize other variables like sn, nesn etc. when create
CIS control procedure is performed.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
This fixes an issue whereby when USB CDC is used for receiving MCUmgr
commands, the commands are corrupted, invalid or messed up by
increasing the receive buffer size so that it can handle at least 1
full MCUmgr fragment.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Adds a note that the nrf52840dongle_nrf52840 board has switched
from the default console being the unconnected UART to USB CDC.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Enables use of the USB CDC port as the default UART for this board,
as it is a USB dongle and makes more sense to use the on-board USB
port instead of a disconnected/floating UART interface.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
cy8c95xx I2C GPIO support was broken in commit 4b30008 due
to wrong i2c bus and addr were wrote during GPIO_PORT_INIT.
Now fix this issue.
Signed-off-by: Siyuan Cheng <siyuanc@synopsys.com>
Address map used for config item `uart_dev` and `uart_regs` is
currently derived using the rpi hal macros `uart0` and `uart1`
which map to the same register address as given in the `reg` property
of the devicetree.
However, the sdk macro is generated using `uart##idx` which zephyr does
not necessarily map to uart0 or uart1.
This is, for example, the case when disabling uart0 with the devicetree
status "disabled"
and enabling uart1 for which then the idx==0 and not 1 which therefore
maps to the wrong controller address space.
This can simply be fixed by deriving the base address from
`DT_INST_REG_ADDR(idx)` instead
Signed-off-by: Ramon Aerne <ramon.aerne@axelera.ai>