/Zephyr-latest/tests/benchmarks/sched_userspace/src/ |
D | main.c | 4 * SPDX-License-Identifier: Apache-2.0 15 #include "user.h" 28 static inline int stamp(int state) in stamp() 33 * precision. In practice it's VERY jittery in recent qemu in stamp() 46 static int yielder_status; 54 thread->partition, in yielder_entry() 57 ret = k_mem_domain_init(&thread->domain, ARRAY_SIZE(parts), parts); in yielder_entry() 64 k_mem_domain_add_thread(&thread->domain, k_current_get()); in yielder_entry() 70 static k_tid_t threads[MAX_NB_THREADS]; 72 static int exec_test(uint8_t nb_threads) in exec_test() [all …]
|
/Zephyr-latest/samples/kernel/bootargs/ |
D | README.rst | 1 .. zephyr:code-sample:: bootargs 10 Zephyr support both dynamic bootargs, received from supported bootloader, and static bootargs embed… 15 Static bootargs don't have special requirements. 21 Static bootargs 24 Static bootargs can be configured using ``CONFIG_BOOTARGS_STRING``. 26 .. zephyr-app-commands:: 27 :zephyr-app: samples/kernel/bootargs 35 .. code-block:: console 37 *** Booting Zephyr OS build v3.7.0-514-gd4490bc739d1 *** 47 .. zephyr-app-commands:: [all …]
|
/Zephyr-latest/tests/ztest/error_hook/src/ |
D | main.c | 4 * SPDX-License-Identifier: Apache-2.0 16 static K_THREAD_STACK_DEFINE(tstack, STACK_SIZE); 17 static struct k_thread tdata; 19 static ZTEST_BMEM int case_type; 39 static void trigger_assert_fail(void *a) in trigger_assert_fail() 49 __no_optimization static void trigger_fault_illegal_instruction(void) in trigger_fault_illegal_instruction() 61 __no_optimization static void trigger_fault_access(void) in trigger_fault_access() 73 /* As this test case only runs when User Mode is enabled, in trigger_fault_access() 82 * Note: this is not applicable for ARM Cortex-M: in trigger_fault_access() 83 * In Cortex-M, nPRIV read access to address 0x0 is generally allowed, in trigger_fault_access() [all …]
|
/Zephyr-latest/samples/net/dns_resolve/ |
D | README.rst | 1 .. zephyr:code-sample:: dns-resolve 3 :relevant-api: dns_resolve net_mgmt 11 try to resolve various hostnames according to how the user has 14 - If IPv4 is enabled, then A record for ``www.zephyrproject.org`` is 16 - If IPv6 is enabled, then AAAA record for ``www.zephyrproject.org`` is 18 - If mDNS is enabled, then ``zephyr.local`` name is resolved. 23 - :ref:`networking_with_host` 25 - screen terminal emulator or equivalent. 27 - For most boards without ethernet, the ENC28J60 Ethernet module is required. 29 - dnsmasq application. The dnsmasq version used in this sample is: [all …]
|
/Zephyr-latest/doc/connectivity/bluetooth/autopts/ |
D | autopts-linux.rst | 1 .. _autopts-linux: 14 - Testing Zephyr Host Stack on QEMU 16 - Testing Zephyr Host Stack on :ref:`native_sim <native_sim>` 18 - Testing Zephyr combined (controller + host) build on Real hardware (such as nRF52) 20 For running with QEMU or :ref:`native_sim <native_sim>`, see :ref:`bluetooth_qemu_native`. 33 https://www.nordicsemi.com/Software-and-tools/Development-Tools/nRF-Command-Line-Tools/Download. 42 - JLink_Linux_V688a_x86_64.deb 44 - nRF-Command-Line-Tools_10_12_1_Linux-amd64.deb 65 Start -> Settings -> Update & Security -> Windows Update 71 Windows guest. This is easiest setup for VirtualBox, and does not require any static IPs to be [all …]
|
/Zephyr-latest/arch/x86/core/ |
D | fatal.c | 3 * SPDX-License-Identifier: Apache-2.0 21 /* Causes QEMU to exit. We passed the following on the command line: in arch_system_halt() 22 * -device isa-debug-exit,iobase=0xf4,iosize=0x04 in arch_system_halt() 25 * QEMU process is (X * 2) + 1. in arch_system_halt() 27 * It has been observed that if the emulator exits for a triple-fault in arch_system_halt() 38 static inline uintptr_t esf_get_sp(const struct arch_esf *esf) in esf_get_sp() 41 return esf->rsp; in esf_get_sp() 43 return esf->esp; in esf_get_sp() 58 cpu_id = arch_curr_cpu()->id; in z_x86_check_stack_bounds() 67 (_current->base.user_options & K_USER) != 0) { in z_x86_check_stack_bounds() [all …]
|
/Zephyr-latest/doc/connectivity/networking/api/ |
D | coap.rst | 14 protocol for use with constrained nodes and constrained (e.g., low-power, 21 is configurable as per user needs. The Zephyr CoAP library 27 protocol, a simple, low-cost remote management and service enablement mechanism. 32 - `RFC7252: The Constrained Application Protocol (CoAP) <https://tools.ietf.org/html/rfc7252>`_ 33 - `RFC6690: Constrained RESTful Environments (CoRE) Link Format <https://tools.ietf.org/html/rfc669… 34 - `RFC7959: Block-Wise Transfers in the Constrained Application Protocol (CoAP) <https://tools.ietf… 35 - `RFC7641: Observing Resources in the Constrained Application Protocol (CoAP) <https://tools.ietf.… 51 The ``.well-known/core`` resource should be added before all other 52 resources that should be included in the responses of the ``.well-known/core`` 55 .. code-block:: c [all …]
|
/Zephyr-latest/doc/releases/ |
D | release-notes-1.5.rst | 7 1.5.0. This is the first release to follow the 3-month release cadence. 13 - TCP Support 14 - Integration of the Paho MQTT Library support with QoS 15 - Flash Filesystem Support 16 - Integration of the mbedTLS library for encryption 17 - Improved BR/EDR support (for L2CAP, in particular). 18 - Support for the Altera Nios II/f soft CPU architecture 25 - Added nano_fifo_put_list() APIs, which allows queuing a list of elements 27 - Removed unused memory pool structure field. 28 - Enhanced memory pool code. [all …]
|
D | release-notes-1.10.rst | 12 * Initial alpha-quality thread-level memory protection on x86, userspace and memory 27 * Initial alpha-quality thread-level memory protection on x86, userspace and memory 30 * Same kernel & driver APIs for kernel and user mode threads 35 * Memory domain APIs for fine-tuning memory region permissions 38 * Add the following application-facing memory domain APIs: 40 * k_mem_domain_init() - to initialize a memory domain 41 * k_mem_domain_destroy() - to destroy a memory domain 42 * k_mem_domain_add_partition() - to add a partition into a domain 43 * k_mem_domain_remove_partition() - to remove a partition from a domain 44 * k_mem_domain_add_thread() - to add a thread into a domain [all …]
|
D | release-notes-1.8.rst | 13 * Ecosystem: Tracing, debugging support through third-party tools (openocd, 39 * arm: Fixed nRF52840-QIAA SoC support for device tree 61 * Support for new ARM board FRDM-KL25Z 66 * arm: Added support for STM32F469I-DISCO board 72 * UART interrupt-driver API is better defined 73 * Support for pull-style console API 89 * HTTP Basic-Auth support added 91 * Add block wise support to CoAP for well-known response 124 * Bluetooth 5.0: The Controller reports itself as 5.0-capable 126 * Bluetooth 5.0: Added Multiple PHY support, both 2Mbit/s and long-range coded [all …]
|
D | release-notes-2.1.rst | 13 * Expanded support for ARMv6-M architecture. 49 * Added support for memory protection features (user mode and 50 hardware-based stack overflow detection) in ARMv6-M architecture 51 * Added QEMU support for ARMv6-M architecture 52 * Extended test coverage for ARM-specific kernel features in ARMv6-M 54 * Enhanced runtime MPU programming in ARMv8-M architecture, making 55 the full partitioning of kernel SRAM memory a user-configurable 57 * Added CMSIS support for Cortex-R architectures. 59 * Added missing Cortex-R CPU device tree bindings. 60 * Fixed incorrect Cortex-R device tree specification. [all …]
|
D | release-notes-1.11.rst | 12 * Thread-level memory protection on x86, ARC and Arm, userspace and memory 15 * Initial Armv8-M architecture support. 20 * Firmware over-the-air (FOTA) updates over BLE using MCUmgr. 32 * SMP-aware scheduler 42 * User space and system call related changes: 44 * Added ARC user space implementation 45 * Added Arm user space implementation 47 * Armv8-M initial architecture support, including the following cores: 49 * Arm Cortex-M23 50 * Arm Cortex-M33 [all …]
|
D | release-notes-1.9.rst | 49 * Bluetooth Qualification-ready BLE Controller 82 * ARC: Nested interrupt support for normal, non-FIRQ interrupts 90 * arm: Added Olimex STM32-E407 and STM32-P405 boards 91 * arm: Added STM32F412 Nucleo and STM32F429I-DISC1 boards 116 * net-app API support added. This is higher level API that can be used 126 networking applications using a well-known, cross-platform API 140 * IPSP net-app support: a simplified networking API reducing duplication 143 * BLE controller qualification-ready, with all required tests passing 144 * Controller-based privacy (including all optional features) 186 auto-generated configuration docs), and source code doxygen comments [all …]
|
D | release-notes-1.12.rst | 12 - Asymmetric multiprocessing (AMP) via integration of OpenAMP 13 - Persistent storage support for Bluetooth Low Energy including Mesh 14 - 802.1Q - Virtual Local Area Network (VLAN) traffic on an Ethernet network 15 - Support multiple concurrent filesystem devices, partitions, and FS types 16 - Ethernet network management interface 17 - Networking traffic prioritization on a per-connection basis 18 - Support for Ethernet statistical counters 19 - Support for TAP net device on the native POSIX port 20 - Command-line Zephyr meta-tool "west" 21 - SPI slave support [all …]
|
D | release-notes-2.0.rst | 12 * The kernel now supports both 32- and 64-bit architectures. 17 * We added support for :ref:`Point-to-Point Protocol (PPP) <ppp>`. PPP is a 20 * We added support for UpdateHub, an end-to-end solution for large scale 21 over-the-air device updates. 22 * We added support for ARM Cortex-R Architecture (Experimental). 32 * Fixes CVE-2019-9506: The Bluetooth BR/EDR specification up to and 35 negotiation. This allows practical brute-force attacks (aka "KNOB") 42 * New kernel API for per-thread disabling of Floating Point Services for 43 ARC, ARM Cortex-M, and x86 architectures. 45 * Additional support for compatibility with 64-bit architectures. [all …]
|
D | release-notes-1.13.rst | 16 * Support for IEEE 802.1AS-2011 generalized Precision Time Protocol (gPTP) 23 * Basic support for Arm TrustZone in Armv8-M 33 * Fix errno access for user mode 42 * arch: arm: implement ARMv8-M MPU driver 44 * arch: arm: macro API for defining non-secure entry functions 48 * arch: ARM: Change the march used by cortex-m0 and cortex-m0plus 50 * arch: arm: basic Arm TrustZone-M functionality for Cortex-M23 and Cortex-M33 51 * arch: arm: built-in stack protection using Armv8-M SPLIM registers 52 * arch: arm: API for using TT intrinsics in Secure/Non-Secure Armv8-M firmware 63 * riscv32: riscv-privilege: Microsemi Mi-V support [all …]
|
D | release-notes-2.4.rst | 33 * CVE-2020-10060: UpdateHub Might Dereference An Uninitialized Pointer 34 * CVE-2020-10064: Improper Input Frame Validation in ieee802154 Processing 35 * CVE-2020-10066: Incorrect Error Handling in Bluetooth HCI core 36 * CVE-2020-10072: all threads can access all socket file descriptors 37 * CVE-2020-13598: FS: Buffer Overflow when enabling Long File Names in FAT_FS and calling fs_stat 38 * CVE-2020-13599: Security problem with settings and littlefs 39 * CVE-2020-13601: Under embargo until 2020/11/18 40 * CVE-2020-13602: Remote Denial of Service in LwM2M do_write_op_tlv 50 <https://github.com/zephyrproject-rtos/zephyr/issues?q=is%3Aissue+is%3Aopen+label%3Abug>`_. 62 * The :c:func:`wdt_feed` function will now return ``-EAGAIN`` if [all …]
|
/Zephyr-latest/arch/riscv/core/ |
D | pmp.c | 4 * SPDX-License-Identifier: Apache-2.0 6 * Physical Memory Protection (PMP) is RISC-V parlance for an MPU. 14 * PMP slot configurations are updated in memory to avoid read-modify-write 18 * In the stackguard case we keep an m-mode copy for each thread. Each user 19 * mode threads also has a u-mode copy. This makes faster context switching 23 * Thread-specific m-mode and u-mode PMP entries start from the PMP slot 30 #include <zephyr/linker/linker-defs.h> 54 #define NAPOT_RANGE(size) (((size) - 1) >> 1) 59 static void print_pmp_entries(unsigned int pmp_start, unsigned int pmp_end, in print_pmp_entries() 72 start = (index == 0) ? 0 : (pmp_addr[index - 1] << 2); in print_pmp_entries() [all …]
|
/Zephyr-latest/boards/native/doc/ |
D | arch_soc.rst | 22 Zephyr application, eliminating the need for architecture-specific 56 To build for the 32bit targets you must have the 32-bit C library installed in your system 57 (in Debian/Ubuntu this is provided by the ``gcc-multilib`` package). 67 for Linux (WSL1) because WSL1 does not support native 32-bit binaries. 72 <https://github.com/microsoft/WSL/issues/2468#issuecomment-374904520>`_ it 102 - There can **not** be busy wait loops in the application code that wait for 109 .. code-block:: c 117 .. code-block:: c 123 - Code that depends on its own execution speed will normally not 127 .. code-block:: c [all …]
|
/Zephyr-latest/doc/services/tracing/ |
D | index.rst | 10 your application and allows :ref:`tools` running on a host to visualize the inner-working of 13 Every system has application-specific events to trace out. Historically, 16 1. Determining the application-specific payload, 17 2. Choosing suitable serialization-format, 18 3. Writing the on-target serialization code, 20 5. Writing the PC-side deserializer/parser, 21 6. Writing custom ad-hoc tools for filtering and presentation. 38 Although the user can extend any of the supported serialization formats 57 formats. This enables tool reuse, of which line-textual (babeltrace) and 61 See `CTF - A Flexible, High-performance Binary Trace Format [all …]
|
/Zephyr-latest/doc/ |
D | glossary.rst | 16 The set of user-supplied files that the Zephyr build system uses 18 It can contain application-specific code, kernel configuration settings, 25 if it does not require any board-specific capabilities. 32 fully-linked binary. 44 hardware system or a simulated system running under QEMU. A board can 53 specified by the build system can be over-ridden by the application, 57 The human-readable name of a :term:`board`. Uniquely and descriptively 114 high-priority conditions that require interrupting the current code 118 The set of Zephyr-supplied files that implement the Zephyr kernel, 155 introducing both secure and non-secure builds for platforms with Trusted [all …]
|
/Zephyr-latest/doc/hardware/arch/ |
D | arm_cortex_m.rst | 3 Arm Cortex-M Developer Guide 9 This page contains detailed information about the status of the Arm Cortex-M 11 developing Zephyr applications for Arm Cortex-M-based platforms. 17 Arm Cortex-M implementation variants. 20 …---------------------------------+-----------------------------------+-----------------+---------+… 22 …---------------------------------+-----------------------------------+-----------------+---------+… 23 … | Arm v6-M | Arm v7-M | Arm v8-M … 24 …---------------------------------+-----------------------------------+-----------------+---------+… 26 …---------------------------------+-----------------------------------+-----------------+---------+… 28 …---------------------------------+-----------------------------------+-----------------+---------+… [all …]
|
/Zephyr-latest/doc/develop/test/ |
D | ztest.rst | 1 .. _test-framework: 19 * ``suite_name`` - The name of the suite. This name must be unique within a single binary. 20 * :c:type:`ztest_suite_predicate_t` - An optional predicate function to allow choosing when the 23 * :c:type:`ztest_suite_setup_t` - An optional setup function which returns a test fixture. This 25 * :c:type:`ztest_suite_before_t` - An optional before function which will run before every single 27 * :c:type:`ztest_suite_after_t` - An optional after function which will run after every single 29 * :c:type:`ztest_suite_teardown_t` - An optional teardown function which will run at the end of 34 .. code-block:: C 39 static bool predicate(const void *global_state) 41 return ((const struct test_state*)global_state)->x == 5; [all …]
|
/Zephyr-latest/doc/connectivity/networking/ |
D | overview.rst | 13 The networking IP stack is modular and highly configurable via build-time 18 * **IPv6** The support for IPv6 is enabled by default. Various IPv6 sub-options 44 * The IPv4 address can also be configured manually. Static IPv4 addresses 50 * **UDP** User Datagram Protocol 63 implemented. Both blocking and non-blocking datagram (UDP) and stream (TCP) 71 A sample :zephyr:code-sample:`mqtt-publisher` client application for MQTT v3.1.1 is 76 Both :zephyr:code-sample:`coap-client` and :zephyr:code-sample:`coap-server` sample 79 * **LWM2M** OMA Lightweight Machine-to-Machine Protocol 85 :zephyr:code-sample:`lwm2m-client` sample implements the library as an example. 91 :zephyr:code-sample:`sockets-http-client` and [all …]
|
/Zephyr-latest/subsys/debug/gdbstub/ |
D | gdbstub.c | 4 * SPDX-License-Identifier: Apache-2.0 33 * implementation, like qemu. Lets use the same here. 39 static bool not_first_start; 58 static inline const 67 if ((addr >= r->start) && in find_memory_region() 68 (addr < r->end) && in find_memory_region() 69 ((addr + len) >= r->start) && in find_memory_region() 70 ((addr + len) < r->end)) { in find_memory_region() 95 if ((r->attributes & GDB_MEM_REGION_READ) == in gdb_mem_can_read() 97 if (r->alignment > 0) { in gdb_mem_can_read() [all …]
|