Add support for processing the Fault Status Registers and recoverable
data abort for the cortex A7.
Based on Cortex-A7 MPCore Technical Reference Manual (ARM DDI 0406).
(see https://developer.arm.com/documentation/ddi0406)
Signed-off-by: Julien Racki <julien.racki@st.com>
We can't use the timer.h as the arm timer
is within the soc and does not have an address.
Instead we use the armv8_timer.h, renaming it to armv7_v8_timer.h
for the Cortex-A7 as the cp15 access are compatible.
Signed-off-by: Julien Racki <julien.racki@st.com>
The PCAL6534 driver simply doesn't work. This is
due to an incorrect mapping of commands to pcal6534
registers.
Signed-off-by: Victor Brzeski <vbrzeski@meta.com>
Setting the filter registers in master CAN requires initializing master
CAN first. CONFIG_CAN_MAX_EXT_ID_FILTER banks are reserved for IDE
frames. Previously we set FS1R(CAN filter scale register) at init time,
but it is possible that the master CAN is not initialized at that time.
That is when the filter banks are not set correctly, causing that we get
wrong filter_id from slave CAN. This patch fixes the issue by setting
FS1R at the time of initializing master CAN.
Tested on:
STM32F407IGH6 with 2 std_id and 2 ext_id on each of CAN1 and CAN2.
Signed-off-by: Wenxi Xu <xuwenxi0517@gmail.com>
sys_clock_elapsed requires access to system clock register interface
which is often slow. When new relative timeout is added sys_clock_elapsed()
is called once to calculate delta ticks and then if that triggers setting
new timeout sys_clock_elapsed() is called again. This call is redundant
since everything happens under spin lock so it is better to reuse value
returned by the first call.
Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
Disables test logging defaults for the intel_adsp/ssp as it
has been found that when they are enabled they interfere
with the proper functioning of the test.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
Improves error reporting in the intel_adsp/ssp test so that
errors are caught and flagged by the test infrastructure.
Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
According the specification, in extreme cases, the deviation of the APB
clock and LFCLK clock can reach up to +/-1% (+/- 10ms).
Therefore, exclude npcx platforms from the test because it required 1ms
accuracy.
fixes: #66185
Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
Replace occurrences of "RaspberryPi" with "Raspberry Pi" in
documentation, comment blocks etc. Correct the name of "PicoW" to
"Pico W", matching Raspberry Pi's documentation at
https://www.raspberrypi.com/documentation/microcontrollers/pico-series.html .
Signed-off-by: Andrew Featherstone <andrew.featherstone@gmail.com>
`extern "C"` is not a valid language linkage for declaring
`int main(...)`, as per the ISO C++ Standard Specification.
This fixes the violations of -Wmain, and brings Zephyr
closer to valid C++.
See the C++ standard wording here:
https://eel.is/c++draft/basic.start.main#3.sentence-5
See also the clang warning -Wmain:
https://clang.llvm.org/docs/DiagnosticsReference.html#wmain
However, for freestanding code (i.e. with -ffreestanding),
main has no special meaning, and we need to prevent name
mangling. So allow this forward linkage when not hosted.
This only applies to C++ as these linkage declarations only
exist inside __cplusplus guards.
Signed-off-by: Jordan R Abrahams-Whitehead <ajordanr@google.com>
Added Internal pin connection for
I2S Loopback testing when I2S is enabled.
Added I2S testing support for RW612.
Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
When building with clang it reports:
tests/subsys/mgmt/mcumgr/settings_mgmt/src/main.c:69:22: error: variable
'test_response_read_data_start' is not needed and will not be emitted
[-Werror,-Wunneeded-internal-declaration]
static const uint8_t test_response_read_data_start[5] = {
^
tests/subsys/mgmt/mcumgr/settings_mgmt/src/main.c:73:22: error: variable
'test_response_read_data_end' is not needed and will not be emitted
[-Werror,-Wunneeded-internal-declaration]
static const uint8_t test_response_read_data_end[1] = {
^
The values of test_response_read_data_start and
test_response_read_data_end are not actually used anywhere in the tests.
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Configuration files such as max32655.cfg is used for openocd purpose
and is stored in variable ${MAX32_TARGET_CFG}. It was set manually
based on whether CONFIG_SOC_MAX32655_M4 is set, now, it gets set
automatically utilizing ${CONFIG_SOC} variable.
Signed-off-by: Hao Zhang <Hao.Zhang@analog.com>
Add .. zephyr:board-supported-runners:: to the Programming and Debugging
section of the documentation for each board that has one such section,
as this is the most natural place to put it.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Use runners.yaml from build metadata to gather info regarding board
supported runners, store the info in the board catalog, and allow
to display it as a table in a board's doc page using the
.. zephyr:board-supported-runner:: directive.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Replace manually authored hardware features table with the new Zephyr
board supported hardware directive which automatically generates an
up-to-date table based on the boards' Devicetree.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
The callback function for the DMA is not used in the case where no DMA
properties are given in the esuart node in the device tree. It causes
a warning in the CI build.
Signed-off-by: Martin Hoff <martin.hoff@silabs.com>
The error occur when discoverying br devices and need to send request_name
for many found devices.
In system work queue task, bt_hci_inquiry_complete->
report_discovery_results is called, then request_name is called for all
the found devices. The controller gives HCI_Remote_Name_Request_Complete
event for every name request result and one buf is allocated from
hci_rx_pool to save HCI_Remote_Name_Request_Complete. When system work
queue task is blocked to call request_name for every device, many
HCI_Remote_Name_Request_Complete are received for the already sent
request_name, it uses up all the buf of hci_rx_pool, then the bt_rx_thread
task is blocked to get buf from hci_rx_pool when next
HCI_Remote_Name_Request_Complete is received, meanwhile the next
request_name send hci cmd and wait the result, but the hci status/complete
event can't be received because the bt_rx_thread is blocked and
bt_uart_isr is kept in the state to receive last
HCI_Remote_Name_Request_Complete, then bt_dev.ncmd_sem is not released,
then the next request_name send hci cmd again, but the bt_dev.ncmd_sem is
invalid, then bt_hci_cmd_send_sync fail and assert.
resolve it by requesting name one by one.
Signed-off-by: Mark Wang <yichang.wang@nxp.com>
MODULE_EXT_ROOT allows Zephyr modules to provide glue code for Zephyr
modules using `cmake-ext: True` and/or `kconfig-ext:True`.
A module ext root provides a `modules.cmake` file which defines
variables like: `set(ZEPHYR_FOO_CMAKE_DIR <glue-code-path>/foo)`
It is intended that a downstream module can replace Zephyr's default
glue code, which again can be replaced further downstream.
Setting values in first modules.cmake (Zephyr's) are replaced by later
processed modules.cmake (downstream) when the setting name is identical.
Therefore the module ext root list should not be reversed, and Zephyr
itself should be placed as first entry in the list.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
Remove redundant descriptions in RTC bindings, such
as "... node", "... common bindings" and "This binding provides".
Signed-off-by: James Roy <rruuaanng@outlook.com>