Releases: zephyrproject-rtos/zephyr
Zephyr 1.12.0-rc1
Aapo Vienamo (11):
scripts: nrfjprog.py: Add --softreset switch
dts: bindings: i2c: Add bindings for i2c_nrf5
dts: arm: nrf5: Add i2c nodes
boards: arm: nrf5: Enable i2c dts nodes for boards
soc: nrf5: Use i2c configure options generated from dts
gpio: Add a driver for SX1509B
tests: drivers: build_all: Add SX1509 GPIO test
sensors: ccs811: Deassert the reset pin with GPIO
boards: Add support for nRF52 Thingy:52 (PCA20020)
boards: arm: nrf52_pca20020: Add board documentation
gpio: nrf5: Make the init priority configurable
Adithya Baglody (23):
tests: mbox: mbox_api: Added required kconfigs to test obj tracing
tests: mbox: mbox_api: Added new test cases.
tests: mbox: mbox_api: Disable execution on RAM constrained devices.
tests: Kconfig: Added a new kconfig.
tests: kernel: pipe: Added new test cases for pipe.
tests: kernel: pipe_api: Run test with userspace enabled.
kernel: mem_domain: k_mem_partition is now placed in kernel memory.
tests: kernel: semaphore: Added tests for semaphore.
boards: sam_e70_xplained: Enable userspace
tests: kernel: mem_protect: tests for userspace mode.
x86: minnowboard: Add support for enabling MMU
x86: linker: Maintain 4K alignment for application memory.
x86: minnowboard: Enable the userspace mode
soc: sam_e70: Mpu regions should include SRAM regions.
cmake: extensions: Added a new macro zephyr_library_ifdef
kernel: Cmake: Add __ZEPHYR_SUPERVISOR__ macro for kernel files.
arch: Cmake: Add __ZEPHYR_SUPERVISOR__ macro for arch files.
drivers: Cmake: Add __ZEPHYR_SUPERVISOR__ macro for driver files.
tests: Kconfig: Added a new Kconfig for qemu_x86
linker-defs: Increase the number of kernel objects
kernel: thread: Move out the function _thread_entry() to lib
tests: drivers: build_all: Ensure correct builds.
tests: subsys: fs: Enable proper configuration for qemu_x86.
Ajay Kishore (2):
tests: kernel: Add description for test cases
tests: kernel: Add description for test cases
Alberto Escolar Piedras (7):
entropy: nrf5x remove unnecessary header
native: doc eth TAP: can only be compiled in Unix
native doc: minor improvement in ethernet driver
POSIX arch: Fix linker -T warning
sanitycheck: Stop on linker warnings also in native_posix
tests kernel pending: unitialized variable
native: entropy: warn of security risk
Alexander Wachter (7):
API: can: Add API for Controller Area Network driver
drivers: can: Add Kconfig for CAN driver
drivers: can: Add syscall handlers for CAN API
drivers: can: Add dts bindings for CAN
drivers: can: Add CAN driver support for STM32
boards: stm: Add CAN support for stm32f072b micro controller
samples: can: Add example code for CAN driver
Anas Nashif (113):
doc: add test coverage and proposal policy
lib: move ring_buffer Kconfig to lib/, cleanup lib/Kconfig
kernel: smp: group SMP options in Kconfig file
kernel: kconfig: reorg kernel Kconfig a bit
debug: fix RTT console Kconfig
Revert "sanitycheck: Default to using Ninja"
kernel: api: fix doxygen group ending
doc: kernel: capitalize Fifo/Lifo
doc: do not show undocumented members
kernel: api: mark internal functions as such
doc: http: add HTTP APIs to net group
boards: delete arduino_101_ble board
drivers: timer: remove unkown jira ID
cleanup: replace old jira numbers with GH issues
ci: update docker image
samples: fix sample yaml file syntax
tests: ztest: test_main takes no arguments
scripts: cleanup scripts directory
sanitycheck: do not always dump footprint statistics
sanitycheck: do not call cmake twice on run
sanitycheck: do not create overlays for filtered platforms
sanitycheck: simplify logic of build_only/enable_slow checking
sanitycheck: add option to list all available tags
tests: context: rename main test
tests: context: use ztest macros
tests: mutex: rename main test function
tests: rename test -> main.c
tests: kernel: use a consistent test suite name
tests: tags should not be required
tests: add missing harness support
tests: mbedtls_sslclient: fix filtering and default conf
tests: enhance test filtering for net tests
tests: mqtt: fix dependencies
tests: xip: cleanup test
tests: classify tests
tests: posix: fix tags and sections
tests: classify periphera tests
qemu_xtensa: ignore net and bluetooth tests
tests: classify net tests and cleanup
tests: ipv6: cleanup tests
tests: base64: do not exclude newlib
tests: net: context: simplify filtering
tests: cleanup meta-data of various tests
boards: native_posix: mark netif as supported
boards: fix yaml syntax and reduce indentation
boards: reduce testing on the same platform with variations
boards: test networking only in one qemu type
samples: sample.yaml cleanup
tests: cleanup subsystem tests meta-data
samples: power_mgr: add harnesss configuration
tests: net: checksum_offload: exclude native [REVERTME]
build: use git version and hash for boot banner
license: fix spdx identifier in a few files
CODEOWNERS: update owners
tests: kernel: style, tag, and category fixes
tests: use consistent test function names
tests: net: style, tag, and category fixes
tests: crypto: style, tag, and category fixes
tests: posix: style, tag, and category fixes
tests: ztest: style, tag and category fixes
tests: posix: mqueue remove extra printk
tests: stackprot: move to ztest
ztest: support skipping tests
sanitycheck: parse test cases from source files
tests: allow unsupported tests to be skipped
sanitycheck: support listing test cases
tests: fix meta data of peripheral tests
tests: mem_prot: skip unsupported tests
ztest: fix result checking
build: simplify git describe call
toolchain: update xtools config
tests: irq_offload: document test functions
tests: critical: document test functions
tests: errno: document test functions
tests: fixed doxygen comments
samples: enhance integration sample and document it
tests/samples: add hw dependencies
samples: remove stray config
tests: remove comma from whitelist
tests: document skipping tests and listing them
tests: enhance test meta-data/improve test naming
tests: neighbor: use ztest asserts
tests: http: call tests via ztest macro
tests: ipv6: convert to ztest
tests: flash_map: use proper test name
tests: integration: do not run test on hw
tests: remove duplicate tests
tests: rename main test to main.c
tests: fix doxygen comments
tests: alert: add doxygen documentation
doc: process test documentation
CODEOWNERS: add more owners to tests/*
CODEOWNERS: more fix and and updates
sanitycheck: device handler, allow running tests on real hw
sanitycheck: parse test results and create detailed report
sanitycheck: cleanup handler class
sanitycheck: simplify argument passing and use global options
tests: remove dot after PASS|FAIL
sanitycheck: do not count duplicate tests
sanitycheck: support skipped tests, enhance device handler
ci: remove pyserial install
sanitycheck: we need pyserial for sanitycheck
checkpatch: downgrade COMPLEX_MACRO to a warning
tests: doxygen comment cleanup
ci: use new docker file with new SDK
CODEOWNERS: fix path syntax
boards: frdm_kw41z: enable xoroshiro on board level only
doc: update mac instructions
samples: leds_demo: depend on netif and gpio
boards: minnowboard: do not run net/bluetooth tests
doc: Update Zephyr SDK version
tests: common: fixed pointer formatting
doc: tests: remove obsolete and bogus test groups
Andrei Emeltchenko (49):
usb: cdc_acm: Fix typo
usb: cdc_acm: Fix write when USB writes only chunk
usb: cdc_acm: yield in the waiting loop
Bluetooth: hci_usb: Simplify write function
usb: Remove USB VID / PID for sanity check builds
tests: Add USB HID composite test
usb: hid: Fix setting report size for composite configuration
usb: sample: Add support for composite configuration for HID
usb: Add multifunction composite build test
usb: Remove duplicated CDC_ECM_SUBCLASS definition
usb: Remove duplicated ACM_SUBCLASS definition
wpanusb: Assign USB Product ID to 802.15.4 over USB
wpanusb: Remove unneeded configuration option
wpanusb: Remove old hardcoded VID / PID
wpanusb: Use DEBUG syslog level
Bluetooth: hci_usb: Use USB Device defined VID / PID
usb: dfu: Use USB Device defined VID / PID
doc: usb: Move USB sections to USB Stack
doc: Make code consistent lowering case
doc: Add USB documentation identifiers and links
usb: usb_dc_dw: Fix incorrect MPS return
usb: Add BOS Descriptors
usb: Add sys_cpu_to_le16() conversion for USB field
usb: Add subsys/usb for device descriptor header
usb: mass_storage: Use simpler header include
usb: Add Bluetooth USB Device configuration options
usb: Add Bluetooth device decriptors
usb: Add Bluetooth device class core functionality
usb: Use new USB Device interface for Bluetooth over USB sample
usb: hci_usb: Fix test name
u...
Zephyr v1.11.0
We are pleased to announce the release of Zephyr kernel version 1.11.0.
Major enhancements with this release include:
- Thread-level memory protection on x86, ARC and Arm, userspace and memory
domains - Symmetric Multi Processing (SMP) support on the Xtensa architecture.
- Initial Armv8-M architecture support.
- Native development environment on Microsoft Windows.
- Native build target on POSIX platforms.
- POSIX PSE52 partial support.
- Thread support via integration with OpenThread.
- Firmware over-the-air (FOTA) updates over BLE using MCUmgr.
- Lightweight flash storage layer for constrained devices.
- Additional SoC, platform and driver support for many of the already supported
platforms.
The following sections provide detailed lists of changes by component.
Kernel
-
Initial Symmetric Multi Processing (SMP) support added:
- SMP-aware scheduler
- SMP timer and idling support
- Available on the Xtensa architecture
-
POSIX PSE52 support:
- Timer, clock, scheduler and pthread APIs
Architectures
-
User space and system call related changes:
- Added ARC user space implementation
- Added Arm user space implementation
- Fixed a few MPU related issues with stack guards
-
Armv8-M initial architecture support, including the following cores:
- Arm Cortex-M23
- Arm Cortex-M33
-
New POSIX architecture for native GNU/Linux and macOS build targets:
- Targets native executables that can be run on the host operating system
Boards
-
New native_posix board for the POSIX architecture:
- Includes a template for hardware models
- Adds support for console and logging
- Interrupts and timers are simulated in several different configurations
-
Added support for the following Arm boards:
- adafruit_trinket_m0
- arduino_zero
- lpcxpresso54114
- nrf52_sparkfun
- nucleo_f429zi
- stm32f072_eval
- stm32f072b_disco
-
Removed Panther board support, which included boards/x86/panther and
boards/arc/panther_ss -
Refactored dts.fixup so common SoC-related fixes are in arch/<*>/soc
and board dts.fixup is only used for board-specific items.
Drivers and Sensors
- New LED PWM driver for ESP32 SoC
- Fixed ESP32 I2C driver
- Added I2C master, QSPI flash, and GPIO drivers for nios-II
- Added PinMux, GPIO, serial drivers for LPC54114
- Added PinMux, GPIO, serial, SPI, and watchdog drivers for sam0
- Added APA102 and WS2821B led_strip drivers
- Added native entropy driver
- Moved some sensors to dts
- Added AMG88xx, CCS811, and VL53L0x sensor drivers
- Redefined SENSOR_CHAN_HUMIDITY in percent
Networking
- Generic OpenThread support added
- OpenThread support to nRF5 IEEE 802.15.4 driver added
- NXP MCUX ethernet driver IPv6 multicast join/leave enhancements
- Ethernet STM32 fixes
- IEEE 802.15.4 Sub-GHz TI CC1200 chip support added
- IEEE 802.15.4 test driver (upipe) hw filtering support added
- IEEE 802.15.4 radio API enhancements
- Net loopback driver fixes
- Net management API event enhancements
- IPv6 neighbor addition and removal can be monitored
- Static IPv4 and DHCPv4 configuration enhancements
- Bluetooth IPSP disconnect fix
- Network buffer enhancements
- ICMPv4 and ICMPv6 error checking fixes
- Network interface address handling enhancements
- Add routing support between network interfaces
- LWM2M fixes and enhancements
- Old legacy HTTP API removed
- Old legacy ZoAP API removed
- CoAP fixes
- TCP fixes
- HTTP fixes
- RPL fixes
- Net-app API fixes
- Net-shell fixes
- BSD socket API fixes
Bluetooth
- Multiple fixes to the controller
- Fixed potential connection transmission deadlock issue with the help
of a dedicated fragment pool - Multiple fixes to Mesh support
- Added test automation for Mesh (for tests/bluetooth/tester)
Build and Infrastructure
-
Native development environment on Microsoft Windows:
- Uses CMake and Kconfiglib to avoid requiring an emulation layer
- Package management support with Chocolatey for simple setup
- Build time now comparable to Linux and macOS using Ninja
Libraries / Subsystems
-
New management subsystem based on the cross-RTOS MCUmgr:
- Secure Firmware Updates over BLE and serial
- Support for file system access and statistics
- mcumgr cross-platform command-line tool
-
FCB (File Circular Buffer) lightweight storage layer:
- Wear-leveling support for NOR flashes
- Suitable for memory constrained devices
HALs
- Updated Arm CMSIS from version 4.5.0 to 5.2.0
- Updated stm32cube stm32l4xx from version 1.9.0 to 1.10.0
- Updated stm32cube stm32f4xx from version 1.16.0 to 1.18.0
- Added Atmel SAMD21 HAL
- Added mcux 2.2.1 for LPC54114
- Added HAL for VL53L0x sensor from STM
- Imported and moved to nRFx 0.8.0 on Nordic SoCs
- Added QSPI Controller HAL driver
Documentation
- Added MPU specific stack and userspace documentation
- Improved docs for Native (POSIX) support
- Docs for new samples and supported board
- General documentation clarifications and improvements
- Identify daily-built master-branch docs as "Latest" version
- Addressed Sphinx-generated intra-page link issues
- Updated doc generation tools (Doxygen, Sphinx, Breathe, Docutils)
Tests and Samples
- Added additional tests and test improvements for user space testing
Issue Related Items
These GitHub issues were addressed since the previous 1.10.0 tagged
release:
.. comment List derived from GitHub Issue query: ...
- :github:
1082
- build all tests have issues for devices that don't exist on a given board - :github:
1281
- spi_ll_stm32 driver does not support stm32f1soc - :github:
1291
- Initial Posix PSE52 Support - :github:
1460
- 1.10 Release Checklist - :github:
1462
- rename nano_internal.h to kernel_internal.h - :github:
1526
- Bluetooth:mesh:prov_start: Invalid authentication - :github:
1532
- There are no RISC-V boards in the list of supported boards - :github:
1727
- Support out-of-tree board definitions - :github:
1793
- I2S device APIs and Drivers - :github:
1868
- Build System cleanup and Kernel / Application build separation - :github:
1877
- Provide single point of notification for new data on multiple sockets. - :github:
1890
- Memory Management - :github:
1891
- Native Port - :github:
1892
- NFC Stack - :github:
1893
- Unified Kernel - :github:
1921
- Bluetooth LE 4.2 Hardware Support - :github:
1926
- build system does not re-link if linker script changed - :github:
1930
- bluetooth tester shall support logging on Arduino101 - :github:
2007
- C++ compiler flags are not managed correctly - :github:
2072
- create abstraction layer to directly use Altera HAL drivers for Nios II IP blocks - :github:
2107
- handle configuration changes with more code coverage - :github:
2239
- sporadic illegal instruction exception on Nios II in test_errno - :github:
2244
- LE Controller: remove util folder - :github:
2280
- Move defaults.tc and .known-issue under tests/ - :github:
2347
- Thread Protocol v1.1 Dependencies on the IP Stack - :github:
2365
- Port IOT Protocols to the new IP Stack - :github:
2477
- no unit tests exist for CONFIG_DEBUG_INFO - :github:
2620
- object files created outside of $O directory when obj-XYZ path is relative - :github:
2722
- QEMU NIOS2 sporadic FAIL in tests/legacy/kernel/test_timer/nanokernel - :github:
2760
- Implement Virtual USB ethernet Adapter support - :github:
2819
- legacy/kernel/test_task_priv randomly fails on EMSK ARC - :github:
2889
- [ARC] legacy/benchmark/latency_measure not measuring RIRQ/FIRQ - :github:
2891
- implement _tsc_read equivalent for all architectures - :github:
2912
- Develop Guideline for Handling Configuration Changes with More Code Coverage - :github:
2937
- Thread-level Memory Protection Support - :github:
2939
- Add Xtensa Port - :github:
2943
- Support for the KW22D512 Kinetis MCU based USB Dongle - :github:
2971
- I2C High-Speed Mode is not implemented - :github:
2994
- The build system crashes when GCCARMEMB_TOOLCHAIN_PATH has a space in it - :github:
3069
- XML encoding/decoding library - :github:
3081
- Concise Binary Object Representation (CBOR) - :github:
3083
- I2C problem Zephyr OS sensor example on NRF51 and F401re - :github:
3127
- IP stack does not implement multicasting requirements of IPv6 RFCs and network driver model lacks features to implement it properly - :github:
3240
- Unnecessary code footprint bloat due to "static inline" - :github:
3279
- Reclaiming Memory - :github:
3283
- Split net_buf parsing context from the actual data - :github:
3302
- samples/subsys/logging/logger-hook needs to be a test case - :github:
3308
- [TAHI] No "ICMPv6 error message" is received while sending echo request with parameter problem header - :github:
3316
- [IPv6 TAHI] Section 1: RFC 2460 - IPv6 Specification - :github:
3317
- [IPv6 TAHI]Section 4: RFC 1981 - Path MTU Discovery for IPv6 - :github:
3318
- [IPv6 TAHI]Section 5: RFC 4443 - ICMPv6 - :github:
3322
- [IPv6 TAHI] Section 3: RFC 4862 - IPv6 Stateless Address Autoconfiguration - :github:
3323
- [IPv6 TAHI] Section 2: RFC 4861 - Neighbor Discovery for IPv6 - :github:
3329
- Build warnings [-Wpointer-sign] with LLVM/icx (bluetooth_ipsp) - :github:
3345
- Missing board documentation for riscv32/zedboard_pulpino - :github:
3346
- Missing board documentation for riscv32/qemu_riscv32 - :github:
3351
- Missing board documentation for arm/bbc_microbit board - :github:
3352
- Missing board documentation for arm/nrf51_blenano - :github:
3439
- IP stack: No MTU handling on send() - :github:
3440
- IP stack: No TCP receive window handling - :github:
3483
- Unify STM32...
Zephyr v1.11.0-rc3
Aapo Vienamo (2):
sensors: css811: Use HAS_DTS_I2C_DEVICE in Kconfig
drivers: sensor: ccs811: Fix value conversion
Anas Nashif (9):
codeowners: add additional owners for riscv32
CODEOWNERS: minor cleanup
tests: posix: rwlock: add more tests
tests: move posix layer tests out of kernel
tests: posix: fix test names in yaml
posix: sem_init accepts zero value
tests: posix: add negative testing for semaphore
tests: pthread: use posix semaphore
tests: remove duplicate pthread test
Andrew Boie (1):
arch: x86: fix integer stub comments
Andrzej Puzdrowski (4):
test: subsys: storage: flash_map: fix test of get sectors API
subsys: storage: flash_map: Fix Coverity issues
subsys: storage: flash_map: enable only if any flash driver is enable
drivers: flash: move FLASH_HAS_PAGE_LAYOUT Kconfig from arch
Andy Ross (3):
xtensa/asm2: Fix stack pointer during preemption spills
xtensa/asm2: Save shift/loop registers on exception entry
tests/crypto/mbedtls: Disable CONFIG_FORCE_NO_ASSERT
Carles Cufi (3):
doc: release notes: Add major 1.11 features
Bluetooth: controller: Generate LE Conn Complete on cancellation
release: move version to 1.11.0-rc3
David B. Kinder (3):
doc: add 1.11 links for docs and release notes
doc: add version info on Latest docs
doc: release notes: fix spelling and formatting
Erwan Gouriou (6):
ext/hal: stm32cube: Update STM32F0 README file
ext/hal: stm32cube: Update STM32F1 README file
ext/hal: stm32cube: Update STM32F3 README file
ext/hal: stm32cube: Update STM32F4 README file
ext/hal: stm32cube: Update STM32F7 README file
ext/hal: stm32cube: Update STM32L4 README file
Ioannis Glaropoulos (2):
arch: arm: remove redundant dependence on ARM_CORE_MPU
arch: arm: fix bug in escalted HF dump
Johan Hedberg (3):
samples: bluetooth: mesh: Add basic documentation
Bluetooth: Mesh: Switch to using Linux Foundation Company ID
doc: release notes: Add Bluetooth changes for 1.11 release
Kumar Gala (7):
kernel: mem_domain: Fix compile issues
arch: arm: Add one hardware platform to default testing
samples: sensor: ccs811: Add dummy dts.fixup so we can always build
tests: fatal: Fix incorrect filter on kernel.fatal.stack_protection
doc: release notes: Add board related release notes
drivers: sensor: lsm6ds0: Fix assert logical error
doc: release notes: add HAL section related updates
Leandro Pereira (2):
soc: esp32: Enable building with newer ESP-IDF
doc: release notes: Add notes for ESP32 SoCs
Luiz Augusto von Dentz (1):
Bluetooth: GATT: Fix possible crash while resubscribing
Mariusz Skamra (2):
Bluetooth: Add missing check prior sending LE Set Privacy Mode cmd
Bluetooth: Fix available LPN groups count
Maureen Helm (2):
CODEOWNERS: Update entries for nxp soc families, boards, and drivers
doc: release notes: Add driver and sensor changes for 1.11 release
Niranjhana N (1):
tests: kernel: posix: stop relying on path for naming
Paul Sokolovsky (3):
net: sockets: Fix mask application in sock_set_flag()
net: sockets: zsock_accepted_cb: Init child socket on success only
net: sockets: Preserve user_data for any net_context send() or recv()
Punit Vara (3):
kernel: Remove unnecessary old code
kernel: Add posix API for semaphore
tests: add semaphore posix API test
Ramakrishna Pallala (2):
tests: kernel: Add a test to verify early sleep
drivers: flash: Fix Nios-II QSPI flash Coverity issue
Ravi kumar Veeramally (1):
net: http: Provide destination address in http replies
Reto Schneider (1):
boards: olimex stm32-e407: Fix pin number of RESET
Wayne Ren (5):
scripts: bug fixes in arc.py for make flash
boards: em_starterkit: fix the mpu regions definition
boards: em_starterkit: fix the board default config
arch: arc: bug fixes in arc mpu driver
arch: arc: fix the bug of context switch in interrupt
Youvedeep Singh (7):
kernel: POSIX: Compatibility layer for POSIX read-write lock APIs.
tests: kernel: posix: pthread_rwlock: POSIX rw lock test.
tests: posix: pthread_rwlock: Added more APIs in test.
kernel: POSIX: correcting time calculation in timer_gettime.
tests: posix: timer: Added some APIs in test.
kernel: pthread: correcting pthread_setschedparam.
tests: posix: pthread_cancel: Added some APIs in test.
Zephyr 1.11.0-rc2
Aapo Vienamo (1):
drivers: i2c: nrf5: Make the driver thread-safe
Alberto Escolar Piedras (6):
native: added more proper command line parameters parsing
native: added entropy device
samples: drivers/entropy fixes
bluetooth: controller: last radio hal changes for simulation
native: doc: command line related improvements
bluetooth: controller: nrf5: fix to IC-specific reset function
Anas Nashif (1):
tests: slab: fix dead code
Andrei Emeltchenko (3):
net: Exit early on zero length packet append
usb: msc: Fix USB write check
usb: msc: Cleanup USB write
Andy Gross (1):
doc: release notes: Add security notes
Carles Cufi (2):
bluetooth: controller: nrf5: Add IC-specific reset function
Bluetooth: controller: Default to the LF Company ID
David B. Kinder (5):
doc: fix broken link in contributing guidelines
doc: fix misspellings in XTENSA Kconfig
doc: fix misspellings in docs
doc: remove use of sphinx autodoc extension
doc: release notes: documentation
Holman Greenhand (1):
timer: cortex_m: Fix the discontinuous readings of the cycle counter.
Ioannis Glaropoulos (2):
cmake: indicate single precision floating-point for Cortex-M33
arch: arm: correct fault address logging
Johan Hedberg (2):
drivers: led_strip: Add driver for software-based WS2812B operation
samples: led_strip: Extend ws2812 sample with ws2812b_sw support
Johannes Hutter (1):
Bluetooth: Add HCI error code definitions
Jonas Pfaff (1):
boards: arm: same70: Add mcuboot flash partitions to dts
Jukka Rissanen (1):
doc: Add networking information to 1.11 release note
Justin Watson (1):
codeowners: Add fallrisk as codeowner of SOC SAM4S
Kumar Gala (8):
cmake: Move SOC_* var defines to cmake/app/boilerplate.cmake
cmake: dts.cmake: Use SOC_PATH to find soc/dts.fixup
dts: quark_se_c1000_ss: Refactor dts.fixup into arch/arc/soc
dts: quark_se: Refactor SoC dts.fixup into arch/x86/soc/intel_quark/<SOC>
dts: ia32: Refactor SoC dts.fixup into arch/x86/soc/ia32
dts: x86/atom: Refactor SoC dts.fixup into arch/x86/soc/atom
dts: arm: Refactor SoC dts.fixup into arch/arm/soc
cmake: dts: Fix usage of BOARD vs BOARD_FAMILY
Leandro Pereira (13):
kernel: mem_domain: Check for overlapping regions when considering W^X
kernel: mem_domain: Use u8_t for number of partitions in struct
net: 6lo: Do not try compressing IPHC header if not set
net: ip: dhcpv4: Do not try to write to NULL pointer on failure
net: ipv6: net_icmpv6_get_na_hdr() may return NULL
net: ipv6: Remove unused net_ipv6_get_nbr_by_index()
net: ipv6: net_icmpv6_get_ns_hdr() may return NULL
net: ipv6: net_icmpv6_get_ra_hdr() may return NULL
net: ieee802154: net_udp_get_hdr() might return NULL
net: net_pkt: A net_context might have no interface
net: route: Do not dereference NULL pointer while getting next hop
net: net_app: Close packet if couldn't skip TLS header
net: sockets: Do not reference NULL pointer with empty frags on start
Mariusz Skamra (1):
Bluetooth: Workaround privacy feature issue
Marti Bolivar (5):
doc: flash_partitions: rework
doc: application: re-work DT overlay section
dts: common.dts: trivial whitespace cleanup
boards: dts: replace comments with links to documentation
boards: delete misleading comments in flash partitions
Michael Hope (2):
slip: fix a bug when in non-TAP mode.
netusb: drop the extra byte added for multiple-of-64-byte packets.
Michael Scott (6):
net: http: client: handle empty body for PUT/POST request response
net: http: honor CONFIG_HTTP_CLIENT_NETWORK_TIMEOUT setting
net: http: fix flush in http_prepare_and_send()
net: http: dont add CRLF to protocol in http_client_send_get_req()
net: http: client: remove payload send_chunk logic
net: context: fix semaphore for offload in in net_context_put()
Niranjhana N (6):
tests: kernel: posix: add ztest to POSIX clock
tests: kernel: posix: add ztest to pthread
tests: kernel: posix: add ztest to pthread_cancel
tests: kernel: posix: add ztest to pthread_join
tests: kernel: posix: add ztest to timer
tests: kernel: posix: add pthread tests
Paul Sokolovsky (3):
net: app: Move mbedTLS debug log level config to mbedTLS Kconfig
samples: sockets: echo: Better error and short write handling
samples: net: echo_async: Better error and write handling
Philémon Jaermann (1):
drivers: sensors: Enable LSM6DS0 GYRO sampling rate
Ruslan Mstoi (4):
drivers: console: Fix crash in shell
net: ipv6: Drop ICMPv6 packet if NA header is NULL
net: ipv6: Drop ICMPv6 NS if neighbor table is full
net: ipv6: Ignore reachable time greater than maximum
Savinay Dharmappa (1):
subsys: kernel_event_logger: change kernel event values
Sebastian Bøe (3):
cmake: Find out earlier whether ccache is to be used or not
openthread: Use ccache when enabled
stm32cube: cmake: Pure refactoring of build script
Spoorthi K (1):
tests: kernel: Verify the call to abort handler
Tomasz Bursztyka (2):
net/mgmt: Fix how event_mask is handled on layer and layer code part
net/mgmt: Protect the event_callback list when manipulating it.
Vinayak Kariappa Chettimada (1):
Bluetooth: controller: Fix missing advDelay in Low Duty Cycle Directed
Vitor Massaru Iha (2):
drivers: pwm: Add PWM LED driver for ESP32
samples: basic: fade_led: Update sample to work with ESP32
Yannis Damigos (1):
boards/arm/nucleo_l476rg: Fix usart1 node
Youvedeep Singh (1):
kernel: POSIX: correcting default thread prio & policy in attr.
Zephyr v1.11.0-rc1
Aapo Vienamo (2):
drivers: i2c: nrf5: Fix SDA pin naming
drivers: i2c: nrf5: Make pins for Port 1 configurable
Adithya Baglody (15):
x86: quark_d2000: ISR stack size was no longer sufficient.
boards: quark_d2000: openocd: Fixed load image command for D2000.
kernel: userspace: Fixed the issue of handlers getting dropped by linker
kernel: mem_domain: Add arch specfic destroy for remove thread API.
kernel: mem_domain: Add an arch interface to configure memory domain
kernel: mem_domain: Add to current thread should configure immediately.
tests: kernel: fatal: x86: Fixed the issue with stack alignment.
ztest: cleanup phase should reset the timeout queue.
tests: x86_mmu_api: Fixed testcase crash.
kernel: thread: Repeated thread abort crashes.
tests: abort: Testcase for repeated thread abort
ztest: cleanup phase should reset the timeout queue.
userspace: ARM: Fixed Kconfig for ARM_USERSPACE
cmake: kobject: Fixed kobject text area overflow for optimization 0
tests: pipe: pipe_api: Converted pipe test cases to run in usermode.
Alberto Escolar Piedras (56):
arch: native: Run Zephyr natively in a POSIX OS
native: test timestamp_serialize for POSIX
tests: benchmark: fix for too fast archs
tests: kernel/context posix arch support
test: kernel/fatal changes for POSIX
native: test: exit as soon as test is done
test: sprintf fix for POSIX arch
test: workq : fix for native arch
tests: kernel/common : fix for native
test: kernel/tickless fix for native
test: sleep: fix for posix arch
test: timer use k_busy_wait()
test: kernel/critical fix for posix arch
tests: kernel/threads/scheduling fix for native arch
native: blacklisted 3 testcases
native: Handle gracefully SIGTERM and SIGINT
tests: bluetooth/bluetooth can also be run in native_posix
native: Accept command line arguments
native: native_posix doc improvements
sanitycheck: Allow pre/postfixes in tests stdout
tests: driver/ipm blacklist for POSIX arch
tests: kernel/context support other posix boards
tests: bluetooth/bluetooth fix for boards with a controller
native: don't slow down tests
native: documentation improvements
native: fixed configuration warning
native: Corrected board name in config short description
native: nrf52 changes to HAL to support running on simulated HW
native: minor consistency rename
native: doc fix regarding ztest not stopping
sanitycheck: fix crashes with symlinks in path
native: arch: added recommended stack size config
native: added stdin handling for shell
test: shell: native_posix also supports shell
shell: Added noprompt command
native: doc: typo in figure
build: Added CONFIG_NO_OPTIMIZATIONS
CI: preprocess coverage with lcov for codecov.io
native: POSIX arch: Exclude unlikely code from coverage
native: SOC: exclude unlikely code from coverage
native test: End tests as soon as they pass fail
native: exclude from coverage not coverable code
native: added posix_get_hw_cycle()
native: native_posix timer + irq fix
test: sha256 can also be run in native_posix
test: kernel/common added note about systick period
test: bugfix kernel/tickless/tickless_concept
test: run benchmark/boot_time also in native_posix
tests: run tests/kernel/tickless also in ARCH_POSIX
native: coverage exclusions
native: timer bugfix in tickless mode part
CI: also generate coverage for unit tests
doc: Sanitycheck command line options fixup
sanitycheck: better coverage report generation
native: __ASSERT() to immediately terminate
CODEOWNERS: added entry for POSIX arch & native_posix board
Anas Nashif (244):
kconfig: stack_usage: remove extra space
kconfig: remove deprecated DEBUG_TRACING_KERNEL_OBJECTS
kernel: sys_clock: remove obsolete and unused functions
kernel: threads: remove thread groups
kernel: remove reference to legacy_timer.c in build system
doc: fix version parsing
boards: fix board yaml syntax
tests/samples: fixed yaml syntax
sanitycheck: refactor data parsing in script
sanitycheck: flake8 fixes and move closer to pep8
sanitycheck: use test instead of section
sanitycheck: reworked Platform/Architecture classes
sanitycheck: remove platform-level option
sanitycheck: we do not need to pass ARCH= on command line
sanitycheck: descriptive variable names
sanitycheck: remove usage of qemu for generic handlers
sanitycheck: disable expr parser debug
sanitycheck: allow placing parsetab.py in a custom dir
sanitycheck: adapt testcase documentation
doc: add __init__.py for python2 compatibility
kconfig: fix help syntax and add spaces
samples: mesh/onoff-app: fix sample.yaml syntax
tests/booting/stub: disable banner
boards: remove panther board
lib: move crc from drivers to lib/
lib: move ring_buffer from misc/ to lib/
gitlint: do not complain about hard tabs in body
cmake: replace @ in path with _
kernel: support custom k_busy_wait()
libc: some architectures do not require baremetal libc
kconfig: move ARCH_HAS_THREAD_ABORT to arch level
cmake: add zephyr_link_libraries_ifdef
arch: architecture defines kernel entry
kernel: move posix header to posix/
board: posix: add native_posix board definition
cmake: support other emulation platforms/runners
posix: native: support native runner
cmake: cleanup qemu runner configuration
native: build zephyr.exe for posix arch
native: build .exe files for posix arch
testing: add option to generate coverage reports
tests: crypto: fix call to memset
posix: enable benchmarks for other architectures
sanitycheck: support native build with *.exe extension
sanitycheck: add native handler
sanitycheck: work around linking posix port
ci: generate code coverage report
tests: move aio sample to tests
tests: rename AIO api test
build: remove stray CMakeLists.txt
tests: dma: use depends_on to whitelist platforms
tests: remove standalone enc28j60 build test
tests: add a new harness keyword to schema
tests: gpio: make test depend on gpio capability
boards: add supported features
sanitycheck: harness support
tests: i2c: make test depend on i2c
tests: integrate nsim test in build test
tests: ipm: fix testcase tags
tests: pci: fix tags
tests: pinmux: depend on pinmux and support harness
samples: pwm: depend on boards supporting PWM
tests: pwm: fix dependencies and use depends_on
tests: integrate quark clock test in build test
tests: rtc: fix dependencies
tests: uart: fixed filtering and make test global
tests: kernel: move build test out of kernel
samples: apds9960: remove arc related configs
samples: apds9960: fix dependencies
samples: bme280: fix dependencies and test cleanup
samples: bmg160: fix dependencies and test cleanup
samples: bmi150: fix dependencies and test cleanup
samples: fxas21002: fix dependencies and test cleanup
samples: fxos8700: fix dependencies and test cleanup
samples: hts221: fix dependencies and test cleanup
samples: magn_polling: fix dependencies and test cleanup
samples: bmi160: fix dependencies and test cleanup
samples: max30101: fix dependencies and test cleanup
samples: mcp9808: fix dependencies and test cleanup
samples: sx9500: fix dependencies and test cleanup
samples: TH02: fix dependencies and test cleanup
samples: TMP112: fix dependencies and test cleanup
samples: rtc: fix dependencies and test cleanup
samples: watchdog: fix dependencies and sample cleanup
tests: benchmark: rename default .conf file
tests: move gdb_server to test_build
samples: bluetooth and net samples need test setup
samples: entropy: filter based on HW capabilities
samples: crypto: remove build_only and sample cleanup
samples: drivers: remove build_only flag
samples: remove build_only from various samples
samples: remove more build_only tags
tests: remove build_only option
tests: gdb server is build_only
tests: timer_api: remove build_only, exclude arches
net: remove zoap library
sanitycheck: declare command line options global
sanitycheck: use global command line options variable
sanitycheck: support ninja builder
sanitycheck: remove unused map
sanitycheck: encode logs correctly
ci: upload coverage data to codecov.io
ci: add .codecov.yml for codecov.io configuration
ci: coverage: do not parse boards without coverage
tests: coverage depends on native applications
coverage: build with -O0 to get more information
scripts: python: cleanup script and fix PEP8 issues
script: remove unused script: gcc-version.sh
kconfig: rename CONFIG_BSP_SHARED_GDT_RAM_*
tests: test sys_kernel_version_get()
kernel: version: parenthesize macro value
ci: codecov.io: ignore appending adjustments
sanitycheck: move native_posix to the top
ci: do coverage reporting only from first matrix job
doc: remove unsupported doxygen options
ci: run sanitycheck with ninja
tests: static_idt: do not include test cmake
tests: remove empty test header
tests: minor clea...
Zephyr v1.10.0
We are pleased to announce the release of Zephyr kernel version 1.10.0.
Major enhancements with this release include:
- Initial alpha-quality thread-level memory protection on x86, userspace and memory
domains - Major overhaul to the build system and a switch from Kbuild to CMake.
- Newtron Flash Filesystem (NFFS) Support
- Increased testsuite coverage and migrated majority of testcases to use ztest
- Integration with MCUBOOT Bootloader
- Additional SoC, platform and driver support for many of the already supported
platforms.
The following sections provide detailed lists of changes by component.
Kernel
-
Remove deprecated k_mem_pool_defrag code
-
Initial alpha-quality thread-level memory protection on x86, userspace and memory
domains:- Same kernel & driver APIs for kernel and user mode threads
- System calls for privilege elevation
- Stack overflow protection
- Kernel object and device driver permission tracking
- Simple app vs. kernel memory separation
- Memory domain APIs for fine-tuning memory region permissions
- Stack memory protection from other threads
-
Add the following application-facing memory domain APIs:
- k_mem_domain_init() - to initialize a memory domain
- k_mem_domain_destroy() - to destroy a memory domain
- k_mem_domain_add_partition() - to add a partition into a domain
- k_mem_domain_remove_partition() - to remove a partition from a domain
- k_mem_domain_add_thread() - to add a thread into a domain
- k_mem_domain_remove_thread() - to remove a thread from a domain
-
add k_calloc() which uses kernel heap to implement traditional calloc()
semantics. -
Introduce object validation mechanism: All system calls made from userspace,
which involve pointers to kernel objects (including device drivers), will need
to have those pointers validated; userspace must never be able to crash the
kernel by passing it garbage.
Architectures
-
nrf52: Add support for LOW_POWER state and SYSTEM_OFF
-
Architecture specific memory domain APIs added
-
Tickless Kernel Implementation for Xtensa
-
Added support for the following ARM SoCs:
- NXP i.MX RT1052
- Silabs EFM32WG
- STM F0
- TI MSP432P4xx
Boards
-
Jailhouse port: The port will enable Zephyr to run as a guest OS on x86-64
systems. It comes with a test on QEMU to validate that, thus this new board
introduction. -
Power Management for nrf52 series SOC
-
Added support for the following ARM boards:
- 96b_neonkey
- efm32wg_stk3800
- mimxrt1050_evk
- msp_exp432p401r_launchxl
- nucleo_f030r8
- nucleo_f091rc
- stm32f411e_disco
- stm32f412g_disco
- stm32l476g_disco
- usb_kw24d512
Drivers and Sensors
- timer: Add Support for TICKLESS KERNEL in xtensa_sys_timer
- Rename
random
toentropy
- Add Atmel SAM I2S (SSC) driver
- Add Atmel SAM DMA (XDMAC) driver
- Add plantower PMS7003 Driver
- Add Altera shim driver for JTAG UART soft IP
- Add Altera shim driver for timer soft IP
- Introduce mcux ccm driver
- Introduce mcux igpio shim driver
Networking
- HTTP API changed to use net-app API. Old HTTP API is deprecated.
- Loopback network interface support added. This is used in testing only.
- LWM2M multi-fragment network packet support added.
- New CoAP library implementation, supporting longer network packets.
- Deprecated ZoAP library.
- mDNS (multicast DNS) support added.
- SNTP (Simple Network Time Protocol) client library added.
- Various fixes for: TCP, RPL, ARP, DNS, LWM2M, Ethernet, net-app API, Network
shell, and BSD socket API - Network management API fixes.
- Networking sample application fixes.
- 6lo IPv6 header compression fixes.
- IEEE 802.15.4 generic fixes.
- IEEE 802.15.4 mcr20a driver fixes.
- IEEE 802.15.4 kw41z driver fixes.
- IEEE 802.15.4 nrf5 driver fixes.
Bluetooth
- Multiple qualification-related fixes for Bluetooth Mesh
- Support for Bluetooth Mesh Friend Node role
- Support for Bluetooth Mesh Foundation Client Models
- New Bluetooth Mesh shell module and test application
- Support for PA/LNA amplifiers in the BLE Controller
- Support for additional VS commands in the BLE Controller
- Multiple stability fixes for the BLE Controller
Build and Infrastructure
- The Zephyr project has migrated to CMake, an important step in a
larger effort to make Zephyr easier to use for application developers
working on different platforms with different development environment
needs. This change retains Kconfig as-is, and replaces all Makefiles
with corresponding CMakeLists.txt. The DSL-like Make language that
KBuild offers is replaced by a set of CMake extensions that provide
either simple one-to-one translations of KBuild features or introduce
new concepts that replace KBuild concepts. Please re-read the Getting
Started guide
(http://docs.zephyrproject.org/getting_started/getting_started.html)
with updated instructions for setting up and developing on your host-OS.
You will need to port your own out-of-tree scripts and Makefiles to
CMake.
Libraries / Subsystems
- The implementation for sys_rand32_get() function has been moved to a new
"random" subsystem. There are new implementations for this function, one based
in the Xoroshift128+ PRNG (using a hardware number generator to seed), and
another that obtains random numbers directly from a hardware number generator
driver. Hardware number generator drivers have been moved to a
"drivers/entropy" directory; these drivers only expose the interface provided
by include/entropy.h. - TinyCrypt updated to version 0.2.8
HALs
- Add Altera HAL for support NIOS-II boards
- Add mcux 2.3.0 for mimxrt1051 and mimxrt1052
- stm32cube: HAL/LL static library for stm32f0xx v.1.9.
- Add support for STM32 family USB driver
- Add Silabs Gecko SDK for EFM32WG SoCs
- Simplelink: Update cc32xx SDK to version 1.50.00.06
Documentation
- Missing API documentation caused by doxygen subgroups and missing
Sphinx directives now included. - Note added to all released doc pages mentioning more current content could
be available from the master branch version of the documentation. - Documentation updated to use CMake (vs. Make) in all examples, and
using a new Sphinx extension to keep examples consistent. - Getting Started Guide material updated to include CMake dependencies
and build instructions required for version 1.10. - Instead of hiding all expected warnings from the document build
process (there are some known doxygen/sphinx issues), the build
now outputs all warnings, and then reports
if any new/unexpected warnings or errors were detected. - Obsolete V1 to V2 porting material removed.
- Continued updates to documentation for new board support, new samples,
and new features. - Integration of documentation with new zephyrproject.org website.
- Documentation moved to docs.zephyrproject.org site (with redirection
from zephyrproject.org/doc)
Tests and Samples
- Benchmarking: cleanup of the benchmarking code
- Add userspace protection tests
- Move all tests to ztest and cleanup coding style and formatting
Issue Related Items
These GitHub issues were addressed since the previous 1.9.0 tagged
release:
- #779 - CI: shippable - provide some means to allow users to rebuild
- #1166 - Keeping reusable components under samples/ leads to build issues
- #1236 - Cleanup CONFIG_EXECUTION_BENCHMARKING
- #1241 - tests/net/ipv6/ FAILED on qc1000:x86
- #1242 - tests/kernel/mutex/mutex/ FAILED @ esp32
- #1256 - [cmake] A board should support multiple configurations (variants)
- #1270 - Issue : Information CC3220SF LaunchXL
- #1280 - shell on Arduino Due prints "shell>" before the delayed boot banner
- #1289 - C++ 11 support!
- #1332 - sanitycheck builds too many duplicates in CI, make it smarter
- #1392 - No module named 'elftools'
- #1397 - no serialport output
- #1415 - Problem with forcing new line in generated documentation.
- #1416 - Regression added by commit cd35742 (net/ethernet/arp: Let ethernet L2 managing pkt's reference while sending)
- #1419 - test, please ignore
- #1425 - spi.h and spi_legacy.h documentation conflicts
- #1428 - networking defines being used but not defined anywhere
- #1435 - Could not connect to Eclipse Leshan Demo Server
- #1445 - doc: groups of items in API documentation not displaying
- #1450 - make kconfig help is difficult to understand
- #1474 - tests/net/ipv6_fragment build failure, missing testcase.yaml
- #1487 - net/lib/dns doesn't respect CONFIG_NET_IPV6=n
- #1488 - Replacing Make/Kbuild with CMake
- #1499 - doc: replace Mac OS with macOS
- #1501 - doc: Fix link title
- #1510 - "make debugserver" broken for qemu_xtensa
- #1522 - "make qemu" may not regenerate .config after changes to prj.conf
- #1524 - doc: Remove "Changes from Version 1 Kernel" document
- #1527 - make htmldocs failed
- #1538 - esp32: is broken for the latest esp-idf version
- #1542 - filter-known-issues.py fails if input file is empty
- #1543 - doc: add process documentation for importing non-Apache2.0 licensed code
- #1544 - regression: net: K64F: DHCP seems to fail a lot after 91041f9
- #1558 - Master reports itself as if it was 1.9.0 release
- #1571 - Update to latest tinycrypt: v0.2.8
- #1573 - tests/net/lib/http_header_fields/ fails with CONFIG_HTTP_PARSER_STRICT enabled
- #1580 - checkpatch output in shippable log displays without line breaks
- #1581 - two tests fail in qemu_cortex_m3 with new SDK
- #1597 - remove deprecated k_mem_pool_defrag()
- #1626 - Bluetooth LE dual mode topology
- #1628 - Bluetooth LE data length extension
- #1629 - LE privacy 1.2
- #1630 - E2E tests for connection
- #1632 - Implement Environmental Sensing Profile sample app
- #1653 - enable stack canaries on ARC so we can run test_stackprot
- #1670 - A...
Zephyr v1.10.0-rc3
Akhilesh Kumar Upadhyay (2):
x86: mmu: kernel: Validate existing APIs
tests: kernel: x86 : App to validate x86 specific boot time page table
Anas Nashif (7):
cmake: add zephyr_cc_option_nocheck
kernel: stack: add -fstack-protector-all without checks
kconfig: fix CPU_HAS_FPU dependencies
cmake: add missing config for *.lst files
doc: update release notes for 1.10
tests: remove unused and obsolete test header
cleanup: remove nanokernel/nano leftovers
Andrew Boie (1):
gen_syscall_header: create dummy handler refs
David B. Kinder (10):
doc: update 1.10 release notes
doc: add missing API content
doc: fix handling of OPTION directive in genrest
doc: fix broken notes directives
doc: fix doxygen commment in x86/arch.h
doc: fix doxygen API comments for http_app.h
doc: fix doc Makefile dependency on python
doc: fix broken footnote reference in esp32 doc
doc: environment setup needs zephyr clone first
doc: add links to 1.10 docs and release notes
Gil Pitney (1):
boards: arm: cc3220sf_launchxl: doc: clarify external flash size
Gustavo Lima Chaves (1):
cmake: honor again CONFIG_KERNEL_ENTRY
Ioannis Glaropoulos (1):
drivers: serial: Fix nRF5x UART IRQ Mask values
Johan Hedberg (29):
Bluetooth: Mesh: Remove unnecessary variable
Bluetooth: Mesh: Deliver TTL=1 PDUs only to the local net interface
Bluetooth: Mesh: Fix GATT Proxy & Node Identity state binding
Bluetooth: Mesh: Fix GATT Proxy Service CCC read permissions
Bluetooth: Mesh: Fix initializing Node ID start time
Bluetooth: Mesh: Fix disconnecting clients when disabling GATT Proxy
Bluetooth: Mesh: Fix Replay Protection List checking
Bluetooth: Mesh: Introduce API for clearing the RPL
doc: Add Bluetooth changes to 1.10 release notes
Bluetooth: Mesh: Clearly document the magic 18 byte minimum length
Bluetooth: Mesh: Fix logging mesh addresses
Bluetooth: Mesh: Fix sending beacons to Friend Queue & GATT clients
Bluetooth: Mesh: Fix setting an upper limit on beacon interval
Bluetooth: Mesh: Fix beacon cache handling
Bluetooth: Mesh: Fix changing Relay state from Not Supported (0x02)
Bluetooth: Mesh: Fix relaying conditions for Adv & GATT bearers
Bluetooth: Mesh: Fix using the correct transmit state
Bluetooth: Mesh: Fix format specifier for s32_t
Bluetooth: Mesh: shell: Fix AppKey Add command handler
Bluetooth: Mesh: Fix copy-paste mistake in log message
Bluetooth: Mesh: Fix relaying from GATT to Advertising
Bluetooth: Mesh: Coding-style: Remove redundant whitespace
Bluetooth: Mesh: Add support for sending NetKey Add message
Bluetooth: Mesh: Add Proxy advertising support for multiple subnets
Bluetooth: Mesh: Add helpers for starting/stopping Node ID
Bluetooth: Mesh: Prioritize subnets with Node ID
Bluetooth: Mesh: Suppport multiple subnets for app-triggered Node ID
Bluetooth: Mesh: Proxy: Fine-tune subnet advertising rotation
Bluetooth: Mesh: Proxy: Don't try to advertise when it's not possible
Kumar Gala (5):
doc/dts: Update to reflect new path locations
Add missing license and copyright headers
doc: update whitespace in release-notes-1.10.rst
doc: Update release notes for ARM SoC & Board additions
release: move version to 1.10.0-rc3
Marti Bolivar (1):
arch: x86: fix jailhouse build
Michael Scott (1):
net: if: fix ND reachable calculation
Neil Armstrong (2):
boards: nucleo_f091rc: fix cmake build
flash: stm32l4x: fix build
Piotr Mienkowski (4):
drivers: Add Atmel SAM DMA (XDMAC) driver
drivers: add missing i2s directory to CMakeLists.txt
drivers: Add Atmel SAM I2S (SSC) driver
tests: Add i2s driver test
Sebastian Bøe (7):
Revert "cmake: add zephyr_cc_option_nocheck"
Revert "kernel: stack: add -fstack-protector-all without checks"
kernel: stack: add -fstack-protector-all without checks
cmake: Move syscall_macros.h generation into the build stage
cmake: Re-organize syscall generation wrt. the build system
cmake: Fix EXTRA_LDFLAGS feature
cmake: Change the zephyr_get_* API to be LANG-aware
Stefan Smarzly (1):
boards: arm: compatible scratch slot size for mcuboot on NRF52 PCA10040
Zephyr v1.10.0-rc2
Adithya Baglody (1):
x86: swap: save the scratch pad registers.
Anas Nashif (20):
fs: api: add doxygen group for filesystem
doc: update index with latest previous releases
doc: update doxygen configuration file
doc: strip zephyr root from generated docs
doc: fix indentation of yaml samples
doc: crc16: add to doxygen group
doc: json: add to doxygen group
kconfig: fix type of config for nrf5 15.4
build: use kconfig to select generated artifacts
ci: verify author identity
kconfig: move GDB_INFO kconfig to subsys/debug
kconfig: update BOOT_BANNER help message
kconfig: move IRQ_OFFLOAD to a more generic place
kconfig: clean CPU features and define only once
samples: logger-hook: remove unused configs
boards: galileo and minnowboard require zephyr.strip
sanitycheck: use glob to find board yaml file
sanitycheck: rename qemu_time to handler time
sanitycheck: fix documentation and remove mention of kbuild
sanitycheck: remove obsolete DISABLE_TRYRUN
Aska Wu (4):
net: tcp: Fix tcp passive close
net: sockets: Support ipv6 wildcard and loopback address
net: tcp: First check sequence number
net: context: Make sure contexts lock is released when error
Daniel Wagenknecht (2):
drivers: i2c_ll_stm32_v2: reorder to remove duplication
drivers: i2c_ll_stm32_v2: don't use while loops in interrupt mode
Ding Tao (1):
net: pkt: Fix possible division by zero
Erwan Gouriou (1):
yaml: fix properties syntax to 'mapping' instead of 'series'
Johan Hedberg (75):
Bluetooth: Mesh: Move per-buffer mesh meta-data to external struct
Bluetooth: Mesh: Introduce user data for the advertising callback
Bluetooth: Mesh: Introduce a second advertising callback
Bluetooth: Mesh: Fix notifying message send completion for GATT proxy
Bluetooth: Mesh: Use a unified send callback also for public API
Bluetooth: Mesh: Fix encoding/decoding Publish Retransmit value
Bluetooth: Mesh: Fix model publication
Bluetooth: Mesh: Fix calling send start for multi-segmented messages
Bluetooth: tests: Add new mesh_shell app
Bluetooth: tests/shell: Move mesh into its own configuration
Bluetooth: Mesh: Fix ignoring all messages in LPN mode
Bluetooth: Mesh: Add Model Subscription Del & Overwrite support
Bluetooth: Mesh: shell: Add mod-sub-del command
Bluetooth: Mesh: Update TODO file
Bluetooth: Mesh: shell: Declare mandatory dependency on BT_MESH_CFG_CLI
Bluetooth: Mesh: Fix node reset
Bluetooth: Mesh: Proxy: Downgrade advertising errors to warnings
Bluetooth: Mesh: Fix non-periodic Model Publication
Bluetooth: samples/mesh_demo: Remove unused model publication
Bluetooth: tests/mesh: Fix model publication
Bluetooth: Mesh: Provide documentation for the publication API
Bluetooth: Mesh: Fix accuracy of Publish Period
Bluetooth: tests/mesh_shell: Fix main stack size for qemu
Bluetooth: Mesh: remove redundant 32-bit wrap-around code
Bluetooth: Mesh: Improve model publication documentation
Bluetooth: Mesh: Fix dereferencing mod->pub too early
Bluetooth: Mesh: Fix coverity warning of unchecked return
Bluetooth: Mesh: Friend: Fix poll timeout type
Bluetooth: samples/mesh_demo: Fix address handling
Bluetooth: tests/mesh_shell: Tweak configuration a little bit
Bluetooth: Fix compiler warning when VS HCI is unset
Bluetooth: Mesh: shell: Add appidx command for setting the AppIndex
Bluetooth: Mesh: Add skeleton for Health Client model
Bluetooth: Mesh: Add support for sending Health Fault Get message
Bluetooth: Mesh: Add support for receiving Health Current Status
Bluetooth: Mesh: shell: Use a valid Company ID
Bluetooth: Mesh: shell: Add Health Fault support to the server
Bluetooth: Mesh: Add support for Health Fault Clear messages
Bluetooth: Mesh: Add support for Health Fault Test messages
Bluetooth: Mesh: Add support for Health Period messages
Bluetooth: Mesh: Introduce helpers to wait for a status message
Bluetooth: Mesh: Add support for Health Attention messages
Bluetooth: Mesh: Health: Fix requiring specific Company ID
Bluetooth: Mesh: Introduce public LPN APIs for better control
Bluetooth: Mesh: Increase initial poll timeout
Bluetooth: Mesh: LPN: Fix clearing pending request
Bluetooth: Mesh: LPN: Fix clearing group status
Bluetooth: Mesh: shell: Fix decoding vendor model IDs
Bluetooth: Mesh: shell: Add support for decoding hex strings
Bluetooth: Mesh: shell: Add raw network PDU sending support
Bluetooth: Mesh: Improve logging related to Label UUID lookups
Bluetooth: Mesh: Add support for manipulating Label UUIDs
Bluetooth: Mesh: shell: Fix & clean up command help
Bluetooth: Mesh: Fix creating initial beacon data
Bluetooth: Mesh: shell: Add iv-update command
Bluetooth: Mesh: Add IV Update test mode API
Bluetooth: Mesh: Fix NetKey Update behavior in Phase 1
Bluetooth: Mesh: shell: Fix health publication message size
Bluetooth: Mesh: Improve documentation for model publication
Bluetooth: Mesh: shell: Fix sending health publication
Bluetooth: Mesh: Restrict scope of variables in health_get_registered()
Bluetooth: Mesh: shell: Make Static OOB optional
Bluetooth: Mesh: shell: Add command for setting the UUID
Bluetooth: Mesh: shell: Fix parsing "boolean" parameters
Bluetooth: Mesh: Introduce option for Node ID timeout
Bluetooth: Mesh: Use 32-bit math for Node ID duration
Bluetooth: Mesh: Fix proxy advertising handling
Bluetooth: Mesh: Fix clearing network message cache
Bluetooth: Mesh: Remove unnecessary logic for key selection
Bluetooth: Mesh: Fix & clean up Friendship Credential handling
Bluetooth: Mesh: Fix clearing Friend state upon reset
Bluetooth: Mesh: Fix looking up existing friendship contexts
Bluetooth: Mesh: Reduce logging clutter for LPN lookups
Bluetooth: Mesh: Log information about the on-behalf-of flag
Bluetooth: Mesh: Fix Friend messaging state tracking
Jukka Rissanen (10):
samples: net: echo-client: Fix compilation with mbedtls
samples: net: echo_client: Only send allowable number of bytes
doc: Add networking information to 1.10 release note
samples: net: zperf: Remove deadcode
samples: net: zperf: Check pkt before accessing it
samples: net: zperf: Check UDP pkt before accessing it
tests: net: context: Fix timeout test
net: app: Honor MTU when sending TLS/DTLS data
samples: net: zperf: Ignore error when creating TCP sample pkt
samples: net: echo-server: Fix compilation with mbedtls
Kumar Gala (2):
kernel: Remove deprecated k_mem_pool_defrag code
release: move version to 1.10.0-rc2
Leandro Pereira (1):
drivers: i2c_gpio: Use quoted #include directive for i2c_bitbang
Luiz Augusto von Dentz (2):
poll: Update code comments to reflect latest changes
poll: k_poll: Document -EINTR return
Maureen Helm (1):
mimxrt1050_evk: Fix kernel timer frequency
Michael Hope (1):
flash: minor documentation improvements.
Patrik Flykt (1):
net: pkt: Compute TX payload data length
Paul Sokolovsky (4):
tests: socket: Make runnable with sanitycheck
net: sockets: Handle EINTR return from k_poll()
cmake: qemu: Restore QEMU_INSTANCE option handling.
cmake: qemu: Restore QEMU_PTY/QEMU_PIPE option handling.
Robert Chou (1):
net: lwm2m: POST with <obj>/<obj instance> is a WRITE op
Savinay Dharmappa (6):
dts: arduino_101_sss: Add dts support
dts: arc: Get flash address from dts file
dts: x86: Add device tree support for atom based devices
dts: x86: minnowboard: Add dts support for minnowboard
dts: x86: Add device tree support for QUARK_X1000 soc based devices
dts: x86: galileo: Add device tree support for galileo board
Sebastian Bøe (4):
cmake: Generate POST_BUILD items based on KConfig
cmake: Give zephyr_library_* flags precedence over zephyr_* flags
cmake: extensions: Add check_compiler_flag function
cmake: Extend cc-option support to C++
Stephen Smalley (4):
tests/kernel/mem_protect/protection: fix test_main arguments
tests/kernel/mem_protect/userspace: Add userspace protection tests
arm: define _image_rodata_start/end
tests/kernel/mem_protect/userspace: test that _k_neg_eagain is in rodata
Sven Dowideit (1):
doc: make the CMake instructions a little more active
Tomasz Bursztyka (1):
net/ieee802154: Make RAW mode generic
Vakul Garg (3):
Bluetooth: Added missing checks for whether CONFIG_BT_PRIVACY is enabled
net: pkt: Account for IP header length for allowable payload data
net: pkt: Corrected data length appended in net_pkt_append()
Vinayak Kariappa Chettimada (8):
Bluetooth: controller: Fix memq_dequeue function
Bluetooth: controller: Optimise memq interface
Bluetooth: controller: Replace void * with memq_link_t
Bluetooth: controller: Use PPI indices 14/15 for PA/LNA
drivers: pwm: nRF5x: Use TIMER2 and PPI indices 14-19
Bluetooth: controller: Fix compile error when LE_ENC is disabled
Bluetooth: tests: Fix config option dependencies
Bluetooth: shell: Fix compile error due to missing memq.h include
Vitor Massaru Iha (1):
pinmux: esp32: Unnecessary iteration in "for" loop
Yannis Damigos (1):
dts: stm32f1: Fix pinctrl node base address
Yongfa Zhou (3):
...
Zephyr v1.10.0-rc1
Adam Podogrocki (2):
iwdg: make independent watchdog driver compliant with STM32Cube LL API
iwdg: the sample of the use of STM32 Independent Watchdog
Adithya Baglody (25):
x86: MMU: Miscellaneous macros related to MMU.
x86: MMU: Updated MMU code to use the new macros.
kernel: arch interface for memory domain
ARM: MPU: Arch specific memory domain APIs
x86: MMU: Memory domain implementation for x86
x86: MMU: Configure page tables entries for memory domain in swap.
kernel: Arch specific memory domain APIs added
samples: MPU: updated the memory domain test for x86.
x86: MMU: Kconfig option to enable the PAE tables.
x86: MMU: Generation of PAE tables
x86: MMU: Create PAE page structures and unions.
x86: MMU: Enable boot time PAE page tables.
qemu: x86: Enable the 'Execute Disable' capability of the PAE pages.
x86: MMU: Set PAE page tables for QEMU as default.
tests: protection: Enable the complete test suit for qemu_x86.
x86: MMU: Set PAE page tables for QEMU as default.
tests: benchmarking: cleanup of the benchmarking code.
kernel: arch interface for memory domain
ARM: MPU: Arch specific memory domain APIs
x86: MMU: Memory domain implementation for x86
x86: MMU: Configure page tables entries for memory domain in swap.
kernel: Arch specific memory domain APIs added
samples: MPU: updated the memory domain test for x86.
kernel: init: mem_domain structure is initialized for dummy thread.
dts: x86: RAM start address needs to be page aligned for arduino 101.
Alberto Escolar Piedras (1):
kernel: Preprocessor Undef warning fix in kernel.h
Anas Nashif (129):
misc: remove MAINTAINERS file
scripts: move GRUB script to galileo
sanitycheck: move all related files to sanity_chk
scripts: move dts related scripts to scripts/dts/
scripts: move footprint scripts to footprint/
scripts: move checkpatch scripts to checkpatch/
scripts: move kconfig related scripts to scripts/kconfig
cleanup: Move #include directives
cleanup: remove the whitespaces before the # character
cleanup: remove commented #include
kconfig: remove exta menu for x86 core options
kconfig: remove unused config DEBUG_IRQS
kconfig: generalised stack protection options
kconfig: move interrupt options into arch menu
kconfig: move fatal error handler to arch options
boards: esp32: make board depend on SOC
boards: xt-sim: make board depend on SIMULATOR_XTENSA
boards: qemu_xtensa: add CONFIG_SIMULATOR_XTENS=y to defconfig
cleanup: remove obsolete nano_work.h
cleanup: remove lots of references to unified kernel
doc: update release notes index with 1.9
doc: update release notes with ARC details
ci: remove obsolete COVERAGE variable
ci: remove obsolete PLATFORM variable
sanitycheck: rename arch_root -> board_root
sanitycheck: save/load lists of filterd tests
ci: avoid duplicates when running sanitycheck
ci: remove installation of python sh module
ci: use docker image v0.1
ci: compliance script should use python3
samples: add missing sample.yaml and fix build
ci: fix --only-failed mode of sanitycheck
build: remove leftover qemu target
dfu: img_util: move flash defines to SoC
qemu: cleanup qemu configurations
release: Update version to 1.9.99 for pre-release of 1.10
scripts: Update checkpatch to latest from the linux kernel
arm: atmel: define soc family in correct Kconfig
arch: riscv32: define soc family in correct Kconfig
kconfig: cleanup file system kconfig
subsys: fs: consolidate nffs kconfig options
subsys: fs: consolidate elm FAT kconfig options
tests: add fs tag to filesystem tests
samples: net: use 'run' target in common Makefile.ipstack
doc: reference github issues instead of jira
usb: fix header by adding subsystem prefix
usb: fix local includes and add usb namespace
json: fix doxygen description
usb: move headers to include/usb/class
spi: fix including spi_ll_stm32.h
i2c: fix include for i2c_bitbang in some drivers
tests: nffs: fix include
dfu: fix includes
lib: json: move json.h to include/
ci: support building on master commits
doc: add ci build status of master
checkpatch: define typedefsfile to deal with a few false positives
sanitycheck: inifile -> yamlfile
ztest: add missing includes
sanitycheck: fix support for unit tests
ci: compliance: decode output to utf8
doc: fix location of grub script
doc: run oldconfig on xtools config
toolchains: fix xtools configurations
tests: samples: fix yaml syntax
boards: add supported features
sanitycheck: add extra_configs for testing with multiple values
tests: adc_api: use new testcase scheme and cleanup
tests: adc_simple: use depends_on for testcase
tests: aio: use depends on
tests: errno: using new extra_configs
tests: timer: remove obsolete CONFIG_NANO_TIMEOUTS
tests: Bluetooth: simplify BT init test
tests: nffs: cleanup configs
doc: document extra_configs option for testcases
sanitycheck: fix extra_configs with multiple values
samples: echo_server: remove unrelated CONFIG_ARC_INIT
samples: echo client/server: test more configurations
ci: fix encoding of documentation warning file
ci: do not treat message parts as xml
ci: build pull requests on 4 minions
ci: Use latest docker image with SDK 0.9.2
cleanup: rename fiber/task -> thread
samples: bluetooth: add nrf52_pca10040 to beacon sample
tests: gen_inc_file: fix include syntax
soc: ti_simplelink: rename header directory for registers
linker: use quotes with OUTPUT_ARCH macro
headers: fix global includes for various source files
scripts: require python module wheel
drivers: pinmux: PINMUX_CC2650 depends on GPIO
boards: move pinmux driver to board/soc dir
tests: minor cleanup for fp_sharing test
tests: removed stray bitfield.c file
tests: add testcase.yaml to multicore power
samples: remove ieee802154 sample, we have echo server/client
checkpatch: add NANO_ESF as a typedef to avoid spacing errors
gitignore: add build directory to ignore list
ci: support cmake in shippable
CODEOWNERS: add cmake owners
sanitycheck: adapt for cmake
sampels: remove obsoleted static_lib sample
doxygen: ignore misc/util.h
doc: update with CMake instructions
linker: use UTIL_LISTIFY macro for dealing with .a files
kconfig: fix Qt header for building Qt based kconfig
tests: use cmake to build object benchmarks
ci: update shippable for new SDK
doc: fix doxygen EXCLUDE
cmake: fixed version handling
doc: fixed version parsing for docs
build: add top-level Makefile for docs
ci: call 'make htmldocs' from root
cmake: use zephyr_library_* for all boards
ci: reduce number of minions to 4
cmake: Support disjoint toolchain and SDK locations
doc: redirect doc generation output using tee
boards: em_starterkit: add EM11D and EM7D configurations
arch: arm: fix EM7D makefile
flash: fix arc flasher script
flasher: remove obsolete KBUILD_VERBOSE
doc: em_starterkit: adapt with new configurations
flash: support flashing multiple configurations of a single board
doc: make sure we use gdb from SDK
doc: fix location of non APL code README
doc: report which warnings/errors are new
doc: fix reference to CTNG supported toolchains
ci: move doc.warnings up to be evaluated
drivers: crypto: add missing CMakeLists.txt file
sample: crypto: also test mbedTLS config
Andrei Emeltchenko (42):
net: icmpv4: Fix ICMPv4 checksum calculation
net: icmpv4: Fix ICMPv4 packet size calculation
net: l2: Correct debug message and avoid unneeded assignment
net: arp: Exit early on zero gateway provided
net: arp: Always report error for missing gateway
usb: Correct length print modifier
usb: Handle SET_INTERFACE request
usb: Add Ethernet Control Mode (ECM) subclass definition
usb: trivial: Clean up tabulation
usb: cdc: Add Ethernet Networking Descriptor definitions
usb: Update USB common definitions
usb: Add Custom subclass definition
usb: Add DEVICE_QUAL descriptor definitions
usb: Add USB definitions for RNDIS Ethernet device
usb: Add CDC Class specific request definitions
usb: Allow to select configuration for composite devices
usb: webusb: Move USB version definition to right place
usb: Remove default Vendor and Product ID
usb: Add missing tag to sanity check configuration
boards: tinytile: Set original firmware Vendor and Product IDs
usb: Add extra debug information
usb: Add CDC ECM composite configuration
usb: netusb: Add ethernet emulation device
usb: netusb: Add composite device with ECM function
usb: Add sanity_check configuration for netusb
net: sample: Add USB Ethernet stick configuration
usb: Use RFC 7042 Documentation values for MAC strings
usb: dw: Fix debug log specifier for FIFO not empty
usb: dw: Add sleep before FIFO flash
quark_se: Enable GPIO needed for USB DW driver
samples: echo_server: GPIO should be selected in the board configs
usb: netusb: Select NET_L2_ETHERNET when choosing Device Networking
samp...
Zephyr v1.9.2
Changes since v1.9.2:
Kernel
- Generic queue item acquisition fixed to always return a valid item when
using K_FOREVER
Bluetooth
- Multiple stability fixes for BLE Mesh
- Multiple stability fixes for the BLE Controller
Details:
Anas Nashif (2):
ci: compliance: decode output to utf8
release: Zephyr 1.9.2
Carles Cufi (3):
Bluetooth: controller: Fix Controller to Host flow control leak
Bluetooth: controller: Fix flow control packet drop
doc: 1.9.x release notes
Johan Hedberg (24):
Bluetooth: Mesh: Fix string signedness issue
Bluetooth: Mesh: Fix SDU length check
Bluetooth: Mesh: Drop invalid destination addresses
Bluetooth: Mesh: Fix copy-paste mistake when assigning to cfg->frnd
Bluetooth: Mesh: Fix encoding health status when app has no callback
Bluetooth: Mesh: Set timer for periodic publish before publishing
Bluetooth: Mesh: Always set company ID in health status message
Bluetooth: Mesh: Send ack for every message with matching FCS
Bluetooth: Mesh: Allow TTL <= 1 for the local net interface
Bluetooth: Mesh: Remove local network interface Kconfig option
Bluetooth: Mesh: Fix Health Period Set OpCode
Bluetooth: Mesh: Fix encoding fault count to Health Current Status
Bluetooth: Mesh: Fix spelling of "heartbeat"
Bluetooth: Mesh: Fix zeroing heartbeat state
Bluetooth: Mesh: Fix resetting heartbeat subscription expiry properly
Bluetooth: Mesh: Fix Set LPNTimeout message handling
Bluetooth: Mesh: Fix setting health period divider
Bluetooth: Mesh: Don't send health status messages if a test fails
Bluetooth: Mesh: Fix dropping valid proxy configration messages
Bluetooth: Mesh: Fix revoking app keys
Bluetooth: Mesh: Fix missing initialization of bt_mesh.local_queue
Bluetooth: Mesh: Fix potential access to uninitialized variable
Bluetooth: Mesh: Fix mod sub status parameters upon failure
Bluetooth: Mesh: Fix missing feature bits
Luiz Augusto von Dentz (4):
queue: k_queue_get: Fix NULL return
poll: k_poll: Return -EINTR if not ready
queue: k_queue_cancel_wait: Fix not interrupting other threads
tests: fifo: Add prj_poll.conf
Paul Sokolovsky (1):
kernel: queue: k_queue_poll: Fix slist access race condition
Steve Brown (1):
Bluetooth: Mesh: heartbeat fixes for message count
Vinayak Kariappa Chettimada (18):
Bluetooth: controller: Fix slave from initiating conn upd ind
Bluetooth: controller: Fix Conn Param Req response timeout
Bluetooth: controller: Fix CPR procedure's Conn Upd initiation
Bluetooth: controller: Fix PHY Update response state transition
Bluetooth: controller: Fix NRF_AAR use
Bluetooth: controller: Fix missing PHY update procedure reset
Bluetooth: controller: Fix missing reset of FC feature
Bluetooth: controller: Fix connection update supervision timeout
Bluetooth: controller: Fix Coded PHY supervision timeout
Bluetooth: controller: Fix tIFS calc for Coded PHY
Bluetooth: controller: Fix PA/LNA for Coded PHY
Bluetooth: controller: Add encrypted Coded PHY support
Bluetooth: controller: Add Coded PHY packet tx time restrictions
Bluetooth: controller: Remove assert on invalid LL id
Bluetooth: controller: Fix Ctrl PDU Tx starvation assert
Bluetooth: controller: Fix to enable Asym PHY on nRF52 Series
Bluetooth: controller: Fix MIC error due to parallel Enc Proc
Bluetooth: controller: Fix diff proc collision with enc proc