Go to file
Robert Hancock d2e5eeb51d shell: backends: uart: avoid unnecessary TX IRQs
The shell UART TX code would only disable the TX IRQ when no data was
available in the TX ring buffer. However, it should also disable the IRQ
when all data retrieved from the buffer has been written. Otherwise it
will just result in another immediate TX IRQ which results in the IRQ
finally being disabled.

For this to work, since ring_buf_get_claim may not always return all
available data in the ring buffer on a single call, we need to loop
until either no data is left in the ring buffer or the UART was unable
to consume any of the data.

Signed-off-by: Robert Hancock <robert.hancock@calian.com>
2024-05-09 15:46:25 +02:00
.github doc: ci: Zephyr now requires Python 3.10 or higher 2024-05-06 14:56:08 +01:00
arch arch: x86: avoided increments/decrements with side effects 2024-05-09 15:44:54 +02:00
boards boards: control the network CPU directly 2024-05-09 15:44:47 +02:00
cmake cmake: linker: Use kconfig for iterable section subalign 2024-05-07 18:01:37 -04:00
doc doc: posix: add links and make minor corrections 2024-05-07 21:22:56 -04:00
drivers drivers: gnss: Add emulated GNSS device driver 2024-05-09 15:45:34 +02:00
dts drivers: gnss: Add emulated GNSS device driver 2024-05-09 15:45:34 +02:00
include/zephyr coding guidelines: comply with MISRA Rule 11.8 2024-05-09 10:28:44 +02:00
kernel spelling: Replace occurrences of "iff" with "if and only if" 2024-05-06 14:58:08 +01:00
lib libc/picolibc: Support Picolibc for toolchains without bundled Picolibc 2024-05-09 10:28:35 +02:00
misc cmake: modules: dts: use devicetree stub file 2023-10-20 12:18:17 -07:00
modules modules: hal_nordic: request nRF5340 network CPU in 802.15.4 init 2024-05-09 15:44:47 +02:00
samples mbedtls: add specific Kconfig option for MBEDTLS_USE_PSA_CRYPTO 2024-05-09 10:27:30 +02:00
scripts twister: testplan: enable runtime quarantine 2024-05-08 15:51:36 +02:00
share sysbuild: cmake: fix incorrect function name in error message 2024-05-04 12:59:51 +03:00
snippets snippets: nus-console: Redirect Shell to nus-console 2024-04-29 15:49:53 +02:00
soc drivers: wdt: nrf: Add WDT instances that exist in nrf54h20 2024-05-09 15:44:40 +02:00
submanifests modules: nanopb: Pull upstream fixes 2024-05-07 21:22:43 -04:00
subsys shell: backends: uart: avoid unnecessary TX IRQs 2024-05-09 15:46:25 +02:00
tests tests: drivers: gnss: gnss_api: Add overlay for emulated boards 2024-05-09 15:45:34 +02:00
.checkpatch.conf checkpatch: ignore EXPORT_SYMBOL 2024-04-05 12:19:36 +02:00
.clang-format Revert "clang-format: add entry for SYS_SEM_LOCK()" 2024-04-23 11:51:44 -04:00
.codecov.yml
.editorconfig
.gitattributes
.gitignore hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00
.gitlint gitlint: do not allow treewide as an area in commit messages 2024-04-10 09:22:24 +02:00
.mailmap
.yamllint
CMakeLists.txt kconfig: Add symbols for GNU C Extensions 2024-04-25 09:54:39 +00:00
CODE_OF_CONDUCT.md coc: Update Code of Conduct to latest Contributor Covenant 2023-12-21 09:38:23 +00:00
CODEOWNERS drivers: ad559x: add i2c bus support 2024-04-01 12:18:47 -05:00
CONTRIBUTING.rst
Kconfig
Kconfig.zephyr linker: Move iterable subalign value from header to kconfig 2024-05-07 18:01:37 -04:00
LICENSE
MAINTAINERS.yml MAINTAINERS: Add overlay-le-audio.conf to Bluetooth Audio 2024-05-08 12:10:55 +02:00
README.rst
SDK_VERSION SDK_VERSION: Use Zephyr SDK 0.16.5-1 2024-03-12 08:54:42 -04:00
VERSION release: Zephyr v3.6.99 2024-02-23 22:28:57 -06:00
version.h.in version: cmake: kconfig: introduce extra <type>_VERSION_<x>_STRING 2024-02-01 10:28:43 +00:00
west.yml boards: silabs: Added support for Counter and Watchdog 2024-05-09 10:29:33 +02:00
zephyr-env.cmd
zephyr-env.sh

.. raw:: html

   <a href="https://www.zephyrproject.org">
     <p align="center">
       <picture>
         <source media="(prefers-color-scheme: dark)" srcset="doc/_static/images/logo-readme-dark.svg">
         <source media="(prefers-color-scheme: light)" srcset="doc/_static/images/logo-readme-light.svg">
         <img src="doc/_static/images/logo-readme-light.svg">
       </picture>
     </p>
   </a>

   <a href="https://bestpractices.coreinfrastructure.org/projects/74"><img
   src="https://bestpractices.coreinfrastructure.org/projects/74/badge"></a>
   <a
   href="https://github.com/zephyrproject-rtos/zephyr/actions/workflows/twister.yaml?query=branch%3Amain">
   <img
   src="https://github.com/zephyrproject-rtos/zephyr/actions/workflows/twister.yaml/badge.svg?event=push"></a>


The Zephyr Project is a scalable real-time operating system (RTOS) supporting
multiple hardware architectures, optimized for resource constrained devices,
and built with security in mind.

The Zephyr OS is based on a small-footprint kernel designed for use on
resource-constrained systems: from simple embedded environmental sensors and
LED wearables to sophisticated smart watches and IoT wireless gateways.

The Zephyr kernel supports multiple architectures, including ARM (Cortex-A,
Cortex-R, Cortex-M), Intel x86, ARC, Nios II, Tensilica Xtensa, and RISC-V,
SPARC, MIPS, and a large number of `supported boards`_.

.. below included in doc/introduction/introduction.rst


Getting Started
***************

Welcome to Zephyr! See the `Introduction to Zephyr`_ for a high-level overview,
and the documentation's `Getting Started Guide`_ to start developing.

.. start_include_here

Community Support
*****************

Community support is provided via mailing lists and Discord; see the Resources
below for details.

.. _project-resources:

Resources
*********

Here's a quick summary of resources to help you find your way around:

Getting Started
---------------

  | 📖 `Zephyr Documentation`_
  | 🚀 `Getting Started Guide`_
  | 🙋🏽 `Tips when asking for help`_
  | 💻 `Code samples`_

Code and Development
--------------------

  | 🌐 `Source Code Repository`_
  | 📦 `Releases`_
  | 🤝 `Contribution Guide`_

Community and Support
---------------------

  | 💬 `Discord Server`_ for real-time community discussions
  | 📧 `User mailing list (users@lists.zephyrproject.org)`_
  | 📧 `Developer mailing list (devel@lists.zephyrproject.org)`_
  | 📬 `Other project mailing lists`_
  | 📚 `Project Wiki`_

Issue Tracking and Security
---------------------------

  | 🐛 `GitHub Issues`_
  | 🔒 `Security documentation`_
  | 🛡️ `Security Advisories Repository`_
  | ⚠️ Report security vulnerabilities at vulnerabilities@zephyrproject.org

Additional Resources
--------------------
  | 🌐 `Zephyr Project Website`_
  | 📺 `Zephyr Tech Talks`_

.. _Zephyr Project Website: https://www.zephyrproject.org
.. _Discord Server: https://chat.zephyrproject.org
.. _supported boards: https://docs.zephyrproject.org/latest/boards/index.html
.. _Zephyr Documentation: https://docs.zephyrproject.org
.. _Introduction to Zephyr: https://docs.zephyrproject.org/latest/introduction/index.html
.. _Getting Started Guide: https://docs.zephyrproject.org/latest/develop/getting_started/index.html
.. _Contribution Guide: https://docs.zephyrproject.org/latest/contribute/index.html
.. _Source Code Repository: https://github.com/zephyrproject-rtos/zephyr
.. _GitHub Issues: https://github.com/zephyrproject-rtos/zephyr/issues
.. _Releases: https://github.com/zephyrproject-rtos/zephyr/releases
.. _Project Wiki: https://github.com/zephyrproject-rtos/zephyr/wiki
.. _User mailing list (users@lists.zephyrproject.org): https://lists.zephyrproject.org/g/users
.. _Developer mailing list (devel@lists.zephyrproject.org): https://lists.zephyrproject.org/g/devel
.. _Other project mailing lists: https://lists.zephyrproject.org/g/main/subgroups
.. _Code samples: https://docs.zephyrproject.org/latest/samples/index.html
.. _Security documentation: https://docs.zephyrproject.org/latest/security/index.html
.. _Security Advisories Repository: https://github.com/zephyrproject-rtos/zephyr/security
.. _Tips when asking for help: https://docs.zephyrproject.org/latest/develop/getting_started/index.html#asking-for-help
.. _Zephyr Tech Talks: https://www.zephyrproject.org/tech-talks