Only set a cpu as active (on pm subsystem) when the cpu is effectively
initialized. We cannot assume on pm subsystem that all cpus were
initialized since when the option CONFIG_SMP_BOOT_DELAY is used cpus are
initialized on demand by the application.
Note that once cpus are properly initialized the subystem is able to track
their status.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Doxygen groups in large_comp_data_cli/srv, rpr_cli/srv, opp_agg_cli/srv
belong to the bt_mesh group, otherwise they show up as top level
modules.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Rename the subsystems group from `subsys` to `os_services`, aligning
with what we have on the Sphinx side.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
When building whith CONFIG_KERNEL_COHERENCE enabled,
__stackmem was not being put in the user_stack section making
impossible to gen_kobject script find user capable stacks.
It is responsability of the platform to put user_stacks
section in the appropriated region.
Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
Add a property to the ADC channels which allows the configuration
of the current source pin.
Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
Added Input/Output trigger mux address's as properties
that can be passed into the DMA driver. This is intended
to send INPUTMUX signals into the DMA.
Signed-off-by: Emilio Benavente <emilio.benavente@nxp.com>
For secure EL2 to be entered the EEL2 bit in SCR_EL3 must be set. This
should only be set if Zephyr has not been configured for NS mode only,
if the device is currently in secure EL3, and if secure EL2 is supported
via the SEL2 bit in AA64PFRO_EL1. Added logic to enable EEL2 if all
conditions are met.
Signed-off-by: Chad Karaginides <quic_chadk@quicinc.com>
A function to send Host Command response is needed for commands that
that sends IN_PROGRESS status or doesn't return e.g. perform reboot.
Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
Many RTOS applications assume the virtual and physical address
is 1:1 mapping, so add the 1:1 mapping support in z_phys_map()
to easy adapt these applications.
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Update the sensor shell logic to use the new sensor_read() APIs and
make triggers an option of the sensor_shell sample (this avoids the
trigger stealing the interrupt status from one-shot reads).
Signed-off-by: Yuval Peress <peress@google.com>
Add a new async API based on the RTIO subsystem. This new API allows:
1. Users to create sampling configs (telling the sensor which channels
they want to sample together).
2. Sample data in an asynchronous manner which provides greater control
over the data processing priority.
3. Fully backwards compatible API with no driver changes needed for
functionality (they are needed to improve performance).
4. Helper functions for processing loop.
Signed-off-by: Yuval Peress <peress@google.com>
Added intel LPSS DMA interface using dw common to support
usage of internal DMA in LPSS UART, SPI and I2C for
transfer and receive operations.
Signed-off-by: Anisetti Avinash Krishna <anisetti.avinash.krishna@intel.com>
Adds MDIO driver. Works via exposed
ADIN2111 functions.
It is possible to access Clause 45 and 22 registers.
Due to MDIO API limitation Clause 45 access
is done using driver specific MDIO functions.
Provides API and functions for PHY driver.
Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
Adds initial ADIN2111 2-Port 10BASE-T1L (SPE)
switch support. Works over SPI.
The driver creates 2 interfaces, 1 per port (PHY).
Configures multicast and broadcast filters.
The same unicast is applied to both ports.
Supports:
- Link state detection
- CRC enable/disable
- Ports config set
- Ports ETH stats
Provides functions for MDIO driver.
Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
Support for multiple instances of a class implementation,
and the ability to register an instance to a configuration
at runtime, requires a mechanism to add a string descriptor
and update its index based on the total number of descriptors.
We also need to handle some special string descriptors like
Product or Serial Number provided by the application.
Marked as such by using specific macros, these descriptors
can be sorted out by the stack and the device descriptor
indexes are updated automatically.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
Add and use specific macros for manufacturer, product, and
serial number string descriptors.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
While this does not provide much of an advantage yet,
it will allow us to add descriptors and assign an index
more easily in the next commit.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
If we try to reuse a string descriptor node, the content will
be corrupted because the device stack assumes it is still ASCII7
encoded. Add a flag to indicate that a descriptor node contains
UTF16LE encoded content.
And while we are at it, add a flag to indicate that the SN string
should not be obtained from the hwinfo API.
Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
The coap client takes requests and provides responses
asynchronously to callback given in a request.
Currently supports only 1 request at a time.
Signed-off-by: Jarno Lämsä <jarno.lamsa@nordicsemi.no>
Added Kconfig options to make HAS characteristics that has notify as
optional property selectable and thus optional. These settings are
global, meaning that a chosen notify property will be used for all
registered has instances.
Signed-off-by: Fredrik Danebjer <frdn@demant.com>
All posix arch boards are required to provide the same
tracing/print API.
So, instead of having a different driver for native_posix and the
bsim boards, let's have a common one which uses this API.
This in turn results in the printk strings being printed in
the same underlaying backend as before with individual drivers.
A part from this, the native_posix console driver was a full
backend for the now long gone Zephyr console shell
(named legacy_shell from 527256501f
until it was retired in fd0b7f7767).
The whole input handling in this driver was dead code
(since 140a8d0c8a)
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This reworks the UDP transport to resolve some issues with object
interactions and streamlines the code.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Adds callback checks to other fs_mgmt group file access functions
which allows for file access control, and moves where the callback
is triggered for uploads and downloads to prevent getting the
callback multiple times for the same file. The callback struct has
been modified so applications using the previous signature will
need to be updated.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
K_THREAD_DEFINE and K_KERNEL_THREAD_DEFINE have common code
so extract the common code and put them into another macro
Z_THREAD_COMMON_DEFINE().
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
This addition allows to define threads without a privileged stack,
and are to run in kernel mode only.
When CONFIG_USER_SPACE is enabled, a thread ends up allocating
space for both its own thread stack and a privileged stack.
When a thread runs in kernel mode only, this extra space for
the privileged stack is not needed.
The macro K_THREAD_DEFINE(), by default, defines a thread with
privileged stack. A new macro K_KERNEL_THREAD_DEFINE() is added
so that a kernel mode only thread can be defined without
the privileged stack.
DL: Edited commit message, clarification in function comment and
alignment.
Signed-off-by: Jose Alberto Meza <jose.a.meza.arellano@intel.com>
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
The internal comment in K_THREAD_DEFINE() on alignment needed
for x86 is outdated. The alignment is taken care of by
the iterable sections in linker scripts. So remove.
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Fuel gauge properties used #defines to support Cpp custom downstream
properties. However, discussion in
https://github.com/zephyrproject-rtos/zephyr/pull/56666#discussion_r1189580654
showed that we could still use enums for this use-case if we typedefed a
uint as a fuel gauge property type. Since enums are more maintainable and
easier to extend, we should move from defines to enums.
Change fuel gauge properties from defines to an extendable enum.
Signed-off-by: Aaron Massey <aaronmassey@google.com>
Events in the power-management policy context are defined as any source
that will wake up the system at a known time in the future. By
registering such event, the policy manager will be able to decide wether
certain power states are worth entering or not.
Events will bypass the ticks argument received by the policy manager if
they occur earlier.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Latency is always specified in microseconds, so apend `us` to the
relevant variables. Also, make it clear that latency request structures
are private (they are just exposed publicly to allow static allocation).
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
I realized today that we had a "." and "IDs of message." top level
Doxygen sections. It looks like the multidomain helpers module was
merged without a proper Doxygen structure. This patch adds the helpers to
a subgroup within `log_backend` and uses `@name` to group definitions.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Split the CAP initiator broadcast start API into a create
and a start. This will allow users to create the broadcast source
without starting it immediately, making it possible to get the
BASE etc. without an active advertising set.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Give architectures that need it the ability to perform special checks
while e.g. waiting for a spinlock to become available.
Signed-off-by: Nicolas Pitre <npitre@baylibre.com>