| .. _zephyr_1.8: | 
 |  | 
 | Zephyr Kernel 1.8.0 | 
 | #################### | 
 |  | 
 | We are pleased to announce the release of Zephyr kernel version 1.8.0. | 
 |  | 
 | Major enhancements with this release include: | 
 |  | 
 | * Tickless kernel | 
 | * IP Stack improvements | 
 | * Bluetooth 5.0 features | 
 | * Ecosystem: Tracing, debugging support through third-party tools (openocd, | 
 |   Segger Systemview) | 
 | * Improved build support on Mac and Windows development environments | 
 | * Xtensa GCC support | 
 | * Initial implementation of MMU/MPU support | 
 | * Expanded device support | 
 |  | 
 | The following sections provide detailed lists of changes by component. | 
 |  | 
 | Kernel | 
 | ****** | 
 |  | 
 | * Use k_cycle_get_32 instead of sys_cycle_get_32 for Kernel | 
 | * Added k_panic() and k_oops() APIs for Kernel | 
 | * Added k_thread_create() API for Kernel | 
 | * Added k_queue API for Kernel | 
 | * Add tickless kernel support | 
 |  | 
 | Architectures | 
 | ************* | 
 |  | 
 | * arm: Update core to use struct k_thread | 
 | * arm: Added ARM MPU support | 
 | * dts: Added ARM CMSDK support | 
 | * arm: Added Initial support for NXP MPU | 
 | * arm: Added Device Tree Support for nRF52832 SoC based boards | 
 | * arm: Fixed nRF52840-QIAA SoC support for device tree | 
 | * arm: Added Device Tree Support for nRF52840 SoC & boards | 
 | * arm: Added Device Tree Support for nRF51822 SoC & boards | 
 | * dts: Introduced st/mem.h for FLASH & SRAM sizes | 
 | * dts: Put IRQ priority into the interrupt property | 
 | * arm: Support for MKL25Z soc | 
 | * arm: Added FPU support | 
 | * x86: defined MMU data structures | 
 | * Support for ARC EM Starter Kit version 2.3 added | 
 |  | 
 |  | 
 |  | 
 | Boards | 
 | ****** | 
 |  | 
 | * Added qemu_xtensa board definition | 
 | * Added a more informative page fault handler x86 board | 
 | * xtensa: build similar to other Zephyr arches | 
 | * Define MMU data structures for x86 board | 
 | * Added support for board disco_l475_iot1 | 
 | * Added STM32F413 Nucleo board | 
 | * Added support for the CC3220SF_LAUNCHXL board | 
 | * Support for new ARM board FRDM-KL25Z | 
 | * arduino_101 board enable GPIO by default | 
 | * boards: convert to using newly introduced integer sized types | 
 | * arm: Added support for Nucleo L432KC board | 
 | * arm: Added support for STM32L496G Discovery board | 
 | * arm: Added support for STM32F469I-DISCO board | 
 | * BBC micro:bit: Added driver & API for the 5x5 LED display | 
 |  | 
 | Drivers and Sensors | 
 | ******************* | 
 |  | 
 | * UART interrupt-driver API is better defined | 
 | * Support for pull-style console API | 
 | * nRF5 IEEE 802.15.4 radio driver added | 
 | * KW41Z IEEE 802.15.4 radio driver added | 
 | * Added MCUX TRNG driver | 
 | * Added support for the SiFive Freedom E310 pinmux driver | 
 | * drivers/sensor: Convert formatter strings to use PRI defines | 
 | * Added lps22hb sensor driver | 
 | * Added lsm6dsl sensor driver | 
 | * Added heart rate sensor driver | 
 | * Added support for max30101 heart rate sensor | 
 | * Added support for lis2dh accelerometer | 
 |  | 
 | Networking | 
 | ********** | 
 |  | 
 | * HTTPS server support added | 
 | * HTTP Basic-Auth support added | 
 | * IPv6 fragmentation support added | 
 | * Add block wise support to CoAP for well-known response | 
 | * Big refactoring of network buffer handling | 
 | * Start to collect TCP statistics if enabled in config | 
 | * IEEE 802.15.4 security support added | 
 | * DNS resolver sample application added | 
 | * IPv6 multicast listener (MLDv2) support added | 
 | * NATS protocol sample application added | 
 | * HTTP client and server connectivity fixes | 
 | * Network samples Coverity fixes | 
 | * Network samples llvm compiler warning fixes | 
 | * MQTT publisher connectivity fixes | 
 | * 6lo IPv6 header compression fixes | 
 | * CoAP connectivity fixes | 
 | * DHCPv4 connectivity fixes | 
 | * TCP connectivity fixes | 
 | * DNS documentation and connectivity fixes | 
 | * IPv6 connectivity fixes | 
 | * IPv4 ARP fixes | 
 | * IEEE 802.15.4 configuration tweaking fixes | 
 | * Remove ORFD (Overly Reduced Function Device) 802.15.4 support | 
 | * Network offloading driver fixes | 
 | * Fix various memory leaks | 
 | * Properly check TCP and UDP checksum before accepting packet | 
 | * Start RX and TX network threads in proper order | 
 | * Network samples documentation fixes and clarifications | 
 | * RPL mesh routing fixes | 
 | * Network link (MAC) address fixes | 
 |  | 
 | Bluetooth | 
 | ********* | 
 |  | 
 | * Host: Added ATT and SMP packet tracking for flow control enforcement | 
 | * Host: GATT database changed to a linked list in preparation for dynamic allocation | 
 | * Bluetooth 5.0: The Controller reports itself as 5.0-capable | 
 | * Bluetooth 5.0: Introduced Channel Selection Algorithm #2 support | 
 | * Bluetooth 5.0: Added Multiple PHY support, both 2Mbit/s and long-range coded | 
 | * Bluetooth 5.0: Integrated Scan Request notifications | 
 | * Controller: Added Low Duty Cycle Directed Advertising support | 
 | * Controller: Added Scan duplicate filtering support | 
 | * Controller: Enforced complete role separation in the controller for smaller builds | 
 | * Controller: Introduced Advanced Controller configuration with several new Kconfig options | 
 | * Controller: Changed the radio interrupts to direct ISRs to reduce interrupt latency | 
 | * Added HCI Controller to Host flow control support in both Host and Controller | 
 | * BR/EDR: Added HFP (e)SCO audio channel establishment support | 
 | * BR/EDR: Added support for a functional SDP server | 
 |  | 
 | Build and Infrastructure | 
 | ************************ | 
 |  | 
 | * Support building host tools | 
 | * Added separate DTS target | 
 | * Added support for MSYS2 | 
 | * Use -O2 instead of -Os for ARC with SDK 0.9 | 
 |  | 
 | Libraries | 
 | ********* | 
 |  | 
 | * Added library for software driven I2C | 
 | * Created a HTTP library | 
 | * Added HTTP server library support | 
 | * Added minimal JSON library | 
 | * Update TinyCrypt to version 0.2.6 | 
 | * Added minimal JSON library | 
 |  | 
 | HALs | 
 | **** | 
 |  | 
 | * Added Atmel SAM family I2C (TWIHS) driver | 
 | * Added Atmel SAM serial (UART) driver | 
 | * Added WDT driver for Atmel SAM SoCs | 
 | * Added Atmel SAM4S SoC support | 
 | * Imported Nordic 802.15.4 radio driver | 
 | * Added Initial support for NXP MPU | 
 | * Updated QMSI to 1.4 RC4 | 
 | * Added FPU support | 
 | * Added basic support for STM32F413 | 
 | * Introduced STM32F4x DMA driver | 
 | * pinmux: stm32: Added support for Nucleo L432KC | 
 | * Added support for STM32L496G Discovery board | 
 | * Added dts for STM32F407 | 
 | * Added support for STM32F4DISCOVERY Board | 
 | * Added support for STM32F469XI | 
 | * Added support for STM32F469I-DISCO | 
 |  | 
 | Documentation | 
 | ************* | 
 |  | 
 | * Board documentation added for new board ports | 
 | * Added a board porting guide | 
 | * Added security sections to porting and user guides | 
 | * Continued migration of wiki.zephyrproject.org material to website and github wiki | 
 | * Improved CSS formatting and appearance of generated documents | 
 | * Added breadcrumb navigation header with kernel version number | 
 | * Updated getting started setup guides for Linux, Windows, and macOS | 
 | * Updates and additions to follow new and updated kernel features | 
 | * Broken link and spelling check scans | 
 | * Removed deprecated kernel documentation (pre 1.6 release) from website (still available in git repo if needed) | 
 |  | 
 | Tests and Samples | 
 | ***************** | 
 |  | 
 | * Added test to verify same tick timeout expiry order | 
 | * Added clock_test for kernel | 
 | * Added tickless tests | 
 | * Added a simple CC2520 crypto dev test | 
 | * Added combined observer & broadcaster app for Bluetooth samples | 
 | * Added support to wait both IPv4 and IPv6 | 
 | * Enabled tickless kernel option in some apps | 
 |  | 
 | JIRA Related Items | 
 | ****************** | 
 |  | 
 | .. comment  List derived from Jira query: ... | 
 |  | 
 | * :jira:`ZEP-248` - Add a BOARD/SOC porting guide | 
 | * :jira:`ZEP-339` - Tickless Kernel | 
 | * :jira:`ZEP-540` - add APIs for asynchronous transfer callbacks | 
 | * :jira:`ZEP-628` - Validate RPL Routing node support | 
 | * :jira:`ZEP-638` - feature to consider: flag missing functionality at build time when possible | 
 | * :jira:`ZEP-720` - Add MAX30101 heart rate sensor driver | 
 | * :jira:`ZEP-828` - IPv6 - Multicast Join/Leave Support | 
 | * :jira:`ZEP-843` - Unified assert/unrecoverable error infrastructure | 
 | * :jira:`ZEP-888` - 802.15.4 - Security support | 
 | * :jira:`ZEP-932` - Adapt kernel sample & test projects | 
 | * :jira:`ZEP-948` - Revisit the timeslicing algorithm | 
 | * :jira:`ZEP-973` - Remove deprecated API related to device PM functions and DEVICE\_ and SYS\_* macros | 
 | * :jira:`ZEP-1028` - shrink k_block struct size | 
 | * :jira:`ZEP-1032` - IPSP router role support | 
 | * :jira:`ZEP-1169` - Sample mbedDTLS DTLS client stability on ethernet driver | 
 | * :jira:`ZEP-1171` - Event group kernel APIs | 
 | * :jira:`ZEP-1280` - Provide Event Queues Object | 
 | * :jira:`ZEP-1313` - porting and user guides must include a security section | 
 | * :jira:`ZEP-1326` - Clean up _THREAD_xxx APIs | 
 | * :jira:`ZEP-1388` - Add support for KW40 SoC | 
 | * :jira:`ZEP-1391` - Add support for Hexiwear KW40 | 
 | * :jira:`ZEP-1392` - Add FXAS21002 gyroscope sensor driver | 
 | * :jira:`ZEP-1435` - Improve Quark SE C1000 ARC Floating Point Performance | 
 | * :jira:`ZEP-1438` - AIO: AIO Comparator is not stable on D2000 and Arduino101 | 
 | * :jira:`ZEP-1463` - Add Zephyr Support in segger SystemView | 
 | * :jira:`ZEP-1500` - net/mqtt: Test case for the MQTT high-level API | 
 | * :jira:`ZEP-1528` - Provide template for multi-core applications | 
 | * :jira:`ZEP-1529` - Unable to exit menuconfig | 
 | * :jira:`ZEP-1530` - Hotkeys for the menu at the bottom of menuconfig sometimes doesn't work | 
 | * :jira:`ZEP-1568` - Replace arm cortex_m scs and scb functionality with direct CMSIS-core calls | 
 | * :jira:`ZEP-1586` - menuconfig: Backspace is broken | 
 | * :jira:`ZEP-1599` - printk() support for the '-' indicator  in format string (left justifier) | 
 | * :jira:`ZEP-1607` - JSON encoding/decoding library | 
 | * :jira:`ZEP-1621` - Stack Monitoring | 
 | * :jira:`ZEP-1631` - Ability to use k_mem_pool_alloc (or similar API) from ISR | 
 | * :jira:`ZEP-1684` - Add Atmel SAM family watchdog (WDT) driver | 
 | * :jira:`ZEP-1695` - Support ADXL362 sensor | 
 | * :jira:`ZEP-1698` - BME280 support for SPI communication | 
 | * :jira:`ZEP-1711` - xtensa build defines Kconfigs with lowercase names | 
 | * :jira:`ZEP-1718` - support for IPv6 fragmentation | 
 | * :jira:`ZEP-1719` - TCP does not work with 6lo | 
 | * :jira:`ZEP-1721` - many TinyCrypt test cases only run on ARM and x86 | 
 | * :jira:`ZEP-1722` - xtensa: TinyCrypt does not build | 
 | * :jira:`ZEP-1735` - Controller to Host flow control | 
 | * :jira:`ZEP-1759` - All python scripts needed for build should be moved to python 3 to minimize dependencies | 
 | * :jira:`ZEP-1761` - K_MEM_POOL_DEFINE build error "invalid register name" when built with llvm/icx from ISSM toolchain | 
 | * :jira:`ZEP-1769` - Implement  Set Event Mask and LE Set Event Mask commands | 
 | * :jira:`ZEP-1772` - re-introduce controller to host flow control | 
 | * :jira:`ZEP-1776` - sending LE COC data from RX thread can lead to deadlock | 
 | * :jira:`ZEP-1785` - Tinytile: Flashing not supported with this board | 
 | * :jira:`ZEP-1788` - [REG] bt_enable: No HCI driver registered | 
 | * :jira:`ZEP-1800` - Update external mbed TLS library to latest version (2.4.2) | 
 | * :jira:`ZEP-1812` - Add tickless kernel support in HPET timer | 
 | * :jira:`ZEP-1816` - Add tickless kernel support in LOAPIC timer | 
 | * :jira:`ZEP-1817` - Add tickless kernel support in ARCV2 timer | 
 | * :jira:`ZEP-1818` - Add tickless kernel support in cortex_m_systick timer | 
 | * :jira:`ZEP-1821` - Update PM apps to use mili/micro seconds instead of ticks | 
 | * :jira:`ZEP-1823` - Improved Benchmarks | 
 | * :jira:`ZEP-1825` - Context Switching KPI | 
 | * :jira:`ZEP-1836` - Expose current ecb_encrypt() as bt_encrypt() so host can directly access it | 
 | * :jira:`ZEP-1856` - remove legacy micro/nano kernel APIs | 
 | * :jira:`ZEP-1857` - Build warnings [-Wpointer-sign] with LLVM/icx (bluetooth_handsfree) | 
 | * :jira:`ZEP-1866` - Add Atmel SAM family I2C (TWIHS) driver | 
 | * :jira:`ZEP-1880` - "samples/grove/temperature": warning raised when generating configure file | 
 | * :jira:`ZEP-1886` - Build warnings [-Wpointer-sign] with LLVM/icx (tests/net/nbuf) | 
 | * :jira:`ZEP-1887` - Build warnings [-Wpointer-sign] with LLVM/icx (tests/drivers/spi/spi_basic_api) | 
 | * :jira:`ZEP-1893` - openocd: 'make flash' works with Zephyr SDK only and fails for all other toolchains | 
 | * :jira:`ZEP-1896` - [PTS] L2CAP/LE/CFC/BV-06-C | 
 | * :jira:`ZEP-1899` - Missing board documentation for xtensa/xt-sim | 
 | * :jira:`ZEP-1908` - Missing board documentation for arm/nucleo_96b_nitrogen | 
 | * :jira:`ZEP-1910` - Missing board documentation for arm/96b_carbon | 
 | * :jira:`ZEP-1927` - AIO: AIO_CMP_POL_FALL is triggered immediately after aio_cmp_configure | 
 | * :jira:`ZEP-1935` - Packet loss make RPL mesh more vulnerable | 
 | * :jira:`ZEP-1936` - tests/drivers/spi/spi_basic_api/testcase.ini#test_spi - Assertion Fail | 
 | * :jira:`ZEP-1946` - Time to Next Event | 
 | * :jira:`ZEP-1955` - Nested interrupts crash on Xtensa architecture | 
 | * :jira:`ZEP-1959` - Add Atmel SAM family serial (UART) driver | 
 | * :jira:`ZEP-1965` - net-tools HEAD is broken for QEMU/TAP | 
 | * :jira:`ZEP-1966` - Doesn't seem to be able to both send and receive locally via local address | 
 | * :jira:`ZEP-1968` - "make mrproper" removes top-level dts/ dir, makes ARM builds fail afterwards | 
 | * :jira:`ZEP-1980` - Move app_kernel benchmark to unified kernel | 
 | * :jira:`ZEP-1984` - net_nbuf_append(), net_nbuf_append_bytes() have data integrity problems | 
 | * :jira:`ZEP-1990` - Basic support for the BBC micro:bit LED display | 
 | * :jira:`ZEP-1993` - Flowcontrol Required for CDC_ACM | 
 | * :jira:`ZEP-1995` - samples/subsys/console breaks xtensa build | 
 | * :jira:`ZEP-1997` - Crash during startup if co-processors are present | 
 | * :jira:`ZEP-2008` - Port tickless idle test to unified kernel and cleanup | 
 | * :jira:`ZEP-2009` - Port test_sleep test to unified kernel and cleanup | 
 | * :jira:`ZEP-2011` - Retrieve RPL node information through CoAP requests | 
 | * :jira:`ZEP-2012` - Fault in networking stack for cores that can't access unaligned memory | 
 | * :jira:`ZEP-2013` - dead object monitor code | 
 | * :jira:`ZEP-2014` - Default samples/subsys/shell/shell fails to build on QEMU RISCv32 / NIOS2 | 
 | * :jira:`ZEP-2019` - Xtensa port does not compile if CONFIG_TICKLESS_IDLE is enabled | 
 | * :jira:`ZEP-2027` - Bluetooth Peripheral Sample won't pair with certain Android devices | 
 | * :jira:`ZEP-2029` - xtensa: irq_offload() doesn't work on XRC_D2PM | 
 | * :jira:`ZEP-2033` - Channel Selection Algorithm #2 | 
 | * :jira:`ZEP-2034` - High Duty Cycle Non-Connectable Advertising | 
 | * :jira:`ZEP-2037` - Malformed echo response | 
 | * :jira:`ZEP-2048` - Change UART "baud-rate" property to "current-speed" | 
 | * :jira:`ZEP-2051` - Move away from C99 types to zephyr defined types | 
 | * :jira:`ZEP-2052` - arm: unhandled exceptions in thread take down entire system | 
 | * :jira:`ZEP-2055` - Add README.rst in the root of the project for github | 
 | * :jira:`ZEP-2057` - crash in tests/net/rpl on qemu_x86 causing intermittent sanitycheck failure | 
 | * :jira:`ZEP-2061` - samples/net/dns_resolve networking setup/README is confusing | 
 | * :jira:`ZEP-2064` - RFC: Making net_shell command handlers reusable | 
 | * :jira:`ZEP-2065` - struct dns_addrinfo has unused fields | 
 | * :jira:`ZEP-2066` - nitpick: SOCK_STREAM/SOCK_DGRAM values swapped compared to most OSes | 
 | * :jira:`ZEP-2069` - samples: net: dhcpv4_client: runs failed on frdm k64f board | 
 | * :jira:`ZEP-2070` - net pkt doesn't full unref after send a data form bluetooth's ipsp | 
 | * :jira:`ZEP-2076` - samples: net: coaps_server: build failed | 
 | * :jira:`ZEP-2077` - Fix IID when using CONFIG_NET_L2_BLUETOOTH_ZEP1656 | 
 | * :jira:`ZEP-2080` - No reply from RPL node after 20-30 minutes. | 
 | * :jira:`ZEP-2092` - [NRF][BT] Makefile:946: recipe for target 'include/generated/generated_dts_board.h' failed | 
 | * :jira:`ZEP-2114` - tests/kernel/fatal : Fail for QC1000/arc | 
 | * :jira:`ZEP-2125` - Compilation error when UART1 port is enabled via menuconfig | 
 | * :jira:`ZEP-2132` - Build samples/bluetooth/hci_uart fail | 
 | * :jira:`ZEP-2138` - Static code scan (coverity) issues seen | 
 | * :jira:`ZEP-2143` - Compilation Error on Windows 10 with MSYS2 | 
 | * :jira:`ZEP-2152` - Xtensa crashes on startup for cores with coprocessors | 
 | * :jira:`ZEP-2178` - Static code scan (coverity) issues seen |