Commit graph

99,250 commits

Author SHA1 Message Date
Hake Huang
d05e274735 test: test_mcuboot: enable test on NXP MCUX platforms
NXP MCUX has no issue with #58080, so enable tests for NXP

Signed-off-by: Hake Huang <hake.huang@oss.nxp.com>
2023-10-27 10:51:05 +02:00
Arunmani Alagarsamy
e9ecc83eea drivers: rtc: new maxim ds1307 rtc driver
Added rtc driver for ds1307. It allows to read and set the date and time

Signed-off-by: Arunmani Alagarsamy <arunmani27100@gmail.com>
2023-10-27 10:50:46 +02:00
Krzysztof Chruściński
503422b91e doc: logging: Add new Kconfig options
Add CONFIG_LOG_SIMPLE_MSG_OPTIMIZE and CONFIG_LOG_FRONTEND_OPT_API

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2023-10-27 10:50:39 +02:00
Krzysztof Chruściński
a68cdb0558 logging: Optimize handling of simple and common log messages
Some compilers (e.g. riscv32) does not handle well complex macros
for logging. Generated code is bigger than expected (e.g. riscv32
code is almost twice bigger than cortex-m code). Use of logging can
lead to unexpected code increase.

To handle that an analysis of the zephyr code base was performed and
it shown that 75-80% of logs are simple strings with 0 arguments
(~45%), one 32 bit argument (~26%) or two 32 bit arguments (~6%).
Given that a set of dedicated macro were created which are applied
to those 3 cases which on 32 bit platform create very simple log
messages without padding or alignment needed.

Such dedicated macros save up to 40% of code (riscv32) and also
executes 30% faster (arm cortex and riscv32).

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2023-10-27 10:50:39 +02:00
Krzysztof Chruściński
182555b3df sys: cbprintf: Add macro for determining if argument fit in 32 bit word
Add Z_CBPRINTF_IS_WORD_NUM(x) which determines if argument is a
number that can fit in 32 bit word. It is used by logging macros
optimized for handling strings with numeric arguments.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2023-10-27 10:50:39 +02:00
Krzysztof Chruściński
900f9c3b24 logging: log_frontend: Add optional API for common messages
Extend frontend API with optional set of functions which can
be used when simplified log message handling is enabled. If this
mode is enabled then there are dedicated macros for processing the
most common messages (string + 0-2 word arguments). Using this API
can speed up the processing of messages that are the most common.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2023-10-27 10:50:39 +02:00
Krzysztof Chruściński
1a0e8d6f9e logging: log_msg: Add functions for handling simple log messages
In preparation for new feature which optimizes handling of
the most common log messages (0-2 32 bit word arguments) add
functions dedicated for that purpose.

Signed-off-by: Krzysztof Chruściński <krzysztof.chruscinski@nordicsemi.no>
2023-10-27 10:50:39 +02:00
Mariusz Skamra
ac3a6d3721 tests: Bluetooth: tester: Fix missing net_buf_unref
This fixes missing unreference of network buffer allocated
when there is no data to send in the ring buffer.
The code have been refactored, so that we check whether there is
anything to send first, and if there is, the TX buffer is allocated.

Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
2023-10-27 10:50:30 +02:00
Mike J. Chen
b0a5492026 drivers: i3c: mcux: Add dt property disable-open-drain-high-pp
The default is that the high time for open-drain clk is one
PPBAUD, which is typically very short. Some device require
a longer high time during the open-drain address phase so
add a property to allow device tree to override the default.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2023-10-27 10:50:16 +02:00
Mike J. Chen
f344019f2d drivers: i3c: mcux: Remove infinite wait for MCTRLDONE in auto-IBI
Remove the MCTRLDONE wait in mcux_i3c_request_auto_ibi().
I've seen this code getting stuck where the MCTRLDONE
bit is never set in the MSTATUS register by the controller
and this function spins forever. Documentaiton of the
MCTRLDONE bit only mentions it being set for EmitStartAddr
and ProcessDAA, but not for AutoIBI requests.

All the calls to this function do completion checks
afterwards, and with a timeout, so I believe the MCTRLDONE
check is not needed (and may not even be correct).

Signed-off-by: Mike J. Chen <mjchen@google.com>
2023-10-27 10:50:16 +02:00
Mike J. Chen
1193049c0a drivers: i3c: mcux: tighten the FIFO read
At high i3c rates, the mcux_i3c_do_one_xfer_read()
could get into an infinite loop where the rx_count
kept returning 0 but the complete status bit
was never set. I believe the problem was that
the function was not emptying the FIFO fast enough,
so tighten the loop that processes the FIFO.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2023-10-27 10:50:16 +02:00
Mike J. Chen
7c1884ae9b drivers: i3c: mcux: send 7h7e on first transfer or after stop
Makes the i3c_mcux driver consistent with the i3c_cdns driver.

Signed-off-by: Mike J. Chen <mjchen@google.com>
2023-10-27 10:50:16 +02:00
Mike J. Chen
16f4861741 drivers: i3c: mcux: fix config_get to return last config set
mcux_i3c_configure() was saving values to a ctrl_config_hal
struct, but config_get() was not returning the values in
that struct. Remove that struct from the static data of
the driver and instead just have it on the stack. We init
that struct as needed just before calling the SDK API
I3C_MasterInit(). There's no reason to keep it around.
Change mcux_i3c_configure() to save a copy of the configuration
in the static data common.ctrl_config, which is what is
returned by config_get().

Signed-off-by: Mike J. Chen <mjchen@google.com>
2023-10-27 10:50:16 +02:00
Aaron Ye
0d1e4684b7 boards: arm: apollo4p_blue_kxr_evb: Enable flash controller.
This commit enables flash controller instance for apollo4p_blue_kxr_evb.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2023-10-27 10:50:05 +02:00
Aaron Ye
c2601e8806 dts: arm: ambiq: Add flash controller instance to Apollo4 Blue Plus SoC.
This commit instantiates the flash controller.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2023-10-27 10:50:05 +02:00
Aaron Ye
51d5794387 drivers: flash: Add Ambiq flash controller driver.
This commit adds flash controller driver for Ambiq Apollo4 SoCs.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2023-10-27 10:50:05 +02:00
Anas Nashif
a6bfbedbf5 doc: project roles: Further finetune language
More details about roles and responsibilities and reviewer expectations.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-10-27 10:49:47 +02:00
Anas Nashif
8663449055 doc: reviewer expectations: minor optimizations
Minor layout and language optimization to the review expectations
document.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-10-27 10:49:47 +02:00
Anas Nashif
d8709301a2 doc: update technical escalation proccess
Update process for technical PR escalation.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-10-27 10:49:47 +02:00
Augusto Zanellato
fe9b23070c boards: arm: xiao_ble: add blackmagicprobe runner
Enable using a BlackMagicProbe for flashing and debugging XIAO BLE
boards.

Tested successfully with BMP 1.9.2 running on ST-Link/v2 against a
`xiao_ble` board.

Signed-off-by: Augusto Zanellato <augusto.zanellato@gmail.com>
2023-10-27 10:49:25 +02:00
TOKITA Hiroshi
2e848d8357 drivers: adc: rpi_pico: Fix pinctrl doesn't apply in initialization.
Fix the problem not apply pinctrl eventhough the config is defined.

In practice, the setting is equals to soc default.
So, there is no apparent change in behavior.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2023-10-27 10:49:17 +02:00
Benjamin Cabé
353f42d8bd doc: refactor vcs_link and git_info extensions
Refactor all git/github related extensions into one file, as they are
working hand in hand.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2023-10-27 10:49:11 +02:00
Benjamin Cabé
701f59ee1e doc: Make it easier to report issues in the documentation
- Add extension to get git metadata (date, SHA-1, ...) regarding the
  latest update made to a page
- Add date of last "actual" update to each manually authored doc page
- Add admonition inviting to report issues
- Add button in breadcrumb to report issue

Fixes #60622.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2023-10-27 10:49:11 +02:00
Benjamin Cabé
32cd631a1b doc: extensions: Add method to get vcs link to report issue
This adds a vcs_link_get_open_issue_url Jinja filter to craft the URL
allowing to report an issue for a given Sphinx page

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2023-10-27 10:49:11 +02:00
Benjamin Cabé
eb1968fa10 doc: extensions: Add ability to edit doc page on GitHub
Update the vcs_link extension to also support generating "edit" URL
vcs_link_version is also now a Sphinx config making its value available
to extensions.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2023-10-27 10:49:11 +02:00
Jan Henke
7ca296c016 auxdisplay: Add SerLCD auxdisplay driver
SerLCD is an interface for several lcd character display sold by sparkfun.

Signed-off-by: Jan Henke <Jan.Henke@taujhe.de>
2023-10-27 10:49:03 +02:00
Daniel Leung
1fac5ed2a6 soc: xtensa/nxp_adsp: put guard in Kconfig.defconfig
This adds a if CONFIG_SOC_FAMILY_NXP_ADSP guard in
Kconfig.defconfig for nxp_adsp. Or else all of its default
get applied everywhere. For example, qemu_xtensa fails
kernel.logging.message_capture tests because
CONFIG_TEST_LOGGING_DEFAULTS is disabled in
nxp_adsp/Kconfig.defconfig which should not have applied
to qemu_xtensa at all. So put a guard in there.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2023-10-26 19:16:53 -04:00
Maureen Helm
36720dbf9c MAINTAINERS: Add entry for multi-function devices (MFD)
Adds a new entry for multi-function device (mfd) drivers to ensure that
incoming PRs to this area get labeled appropriately and have reviews
requested.

Signed-off-by: Maureen Helm <maureen.helm@analog.com>
2023-10-26 22:04:37 +02:00
Robert Lubos
9d3306b22f tests: net: socket: misc: Fix optlen type
The optlen parameter passed to getsockopt() should be of (socklen_t *)
type. Using int produced build errors on 64 bit platforms.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2023-10-26 12:34:12 -05:00
Robert Lubos
f64d09040b tests: net: socket: misc: Increase stack size
Recently added tests require more stack on certain platforms
(nrf52840dk_nrf52840 in this case), hence increase the ZTEST stack size.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2023-10-26 12:34:12 -05:00
Alberto Escolar Piedras
6196acf1d0 samples/drivers/mbox: Add run test for simulated target
Add a runtest for the simulated target.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 12:32:53 -05:00
Alberto Escolar Piedras
eab2d89f53 samples/drivers/mbox: Convert to sysbuild and add support for nrf5340bsim
Convert this sample application build to sysbuild,
and add support for the nrf5340bsim target.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 12:32:53 -05:00
Alberto Escolar Piedras
f871bf9a02 samples 802154_rpmsg: Enablel on simulated nrf5340
Enable building this sample on the simulated nrf5340 net
core.
Note that this sample does nothing on its own, as it
requires a companion application core sample to driver it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 12:31:08 -05:00
Alberto Escolar Piedras
4963f049c5 nrf53bsim: Add support for split 15.4 builds
Add the required chosen DT properties to enable
split 15.4 builds.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 12:31:08 -05:00
Anas Nashif
51f6c4269b soc: microchip_mec: do not enable PM in soc
PM should not be enabled by default at the soc level. This is an
application decision and not a platform decision whether to enable or
disable PM features.

Enabling PM by default will result in descripencies and test scope and
failures in tests that do not account for PM being enabled.

Fixes #60359

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-10-26 12:28:18 -05:00
Alberto Escolar Piedras
f7f800c957 doc: nrf53 bsim: OpenAMP is now supported
Let's delete the note which says OpenAMP is not supported
as it is now.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 17:33:16 +02:00
Alberto Escolar Piedras
7f43b00e23 nrf53_bsim doc: Add paragraph about using sysbuild
And a link to an example sample and its sysbuild.cmake file

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 17:33:16 +02:00
Alberto Escolar Piedras
13c0657bdc samples: nrf53_sync_rtc: Add run test for simulated target
Add a runtest for the simulated target.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 17:33:16 +02:00
Alberto Escolar Piedras
4b90dec91f samples: nrf53_sync_rtc: Convert to sysbuild
Convert this sample application build to sysbuild,
and update documentation.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 17:33:16 +02:00
Alberto Escolar Piedras
851e5cdbe2 samples: nrf53_sync_rtc: Add support in nrf5340bsim
Add support for this sample in the simulated nrf5340

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 17:33:16 +02:00
Alberto Escolar Piedras
9dabc55c3e nrf5340bsim: Add support for NRF53_SYNC_RTC & ENABLE_CPUNET
Add support for these two options in the simulated board.

Before these options were otherwise defined in the real
BOARD/SOC kconfig files, which meant samples/tests which
used them would not be able to build due to a kconfig error.

With this change they can both be selected, and the right
functionality is built in.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 17:33:16 +02:00
Alberto Escolar Piedras
4b88aa9dc1 manifest: Update nrf hw models to latest
* Update the HW models module to
90f4484cbaec986ed253b4fe9649aa75e632de15

Including the following:
* 90f4484 nrf_dppi & dppi_hack: Add support for NRF_DPPI_ENDPOINT_

Note: This update requires hal_nordic/nrfx release 3.2

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-10-26 17:33:16 +02:00
Flavio Ceolin
9b200410d0 modules: mbedtls: Bump to 3.4.1
Bump mbedTLS to the 3.4.1

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2023-10-26 16:47:57 +02:00
Krishna T
85e3a4ca6a scripts: ci: Fix for compliance with multi-user machine
If in a server multiple users are running compliance then it throws
errors as the filename "Kconfig.modules" and "Kconfig.dts" is owned by
someone else.

Fix this by creating a randomized Kconfig file and delete after use.

Signed-off-by: Krishna T <krishna.t@nordicsemi.no>
2023-10-26 16:47:30 +02:00
Eduardo Montoya
55918e7454 MAINTAINERS: add OpenThread collaborator
Add `edmont` as collaborator for OpenThread related repos.

Signed-off-by: Eduardo Montoya <eduardo.montoya@nordicsemi.no>
2023-10-26 16:46:36 +02:00
Andrei Emeltchenko
daa739a410 tests: spinlock: Clear test globals before each test
Clear test global variables before each test execution.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2023-10-26 10:30:24 -04:00
Andrej Butok
3fab7624eb doc: pipes: Fix the pipe read example.
Replaces sizeof(header) which is equal to the size of the pointer,
by sizeof (*header), which is equal to the size of struct message_header.

Signed-off-by: Andrej Butok <andrey.butok@nxp.com>
2023-10-26 10:29:37 -04:00
Anas Nashif
bad87f1684 ci: publish api docs and coverage as well
Also API coverage reports to both PRs and main documentation site.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-10-26 10:12:36 -04:00
Keith Packard
51fee43122 tests/c_lib: Run tests on native/posix targets
With a few minor adjustments, these tests now run fine on native
targets.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-10-26 10:06:35 -04:00
Keith Packard
8780bd2b70 test/c_lib: Make sure time_t is at least 64-bits
Check to ensure that the C library doesn't have obvious 2038 issues.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-10-26 10:06:35 -04:00