Find a file
Dawid Niedzwiecki 457d437841 timer: cortex-m systick: add idle timer
Some chips, that use Cortex-M SysTick as the system timer, disable a
clock in a low power mode, that is the input for the SysTick e.g.
STM32Fx family.

It blocks enabling power management for these chips. The wake-up
function doesn't work and the time measurement is lost.

Add an additional IDLE timer that handles these functionality when the
system is about to enter IDLE. It has to wake up the chip and update the
cycle counter by time not measured by the SysTick. The IDLE timer has to
support counter API (setting alarm and reading current value).

Signed-off-by: Dawid Niedzwiecki <dawidn@google.com>
2023-11-07 09:42:37 +01:00
.github .github: workflows: Expand Twister Unit Tests' requirements 2023-11-06 10:08:44 +01:00
arch arch: cortex_ar: Introduce SMP support into Cortex-A/R aarch32 2023-11-06 15:32:01 -06:00
boards boards: arm: apollo4p_blue_kxr_evb: Enable clock control. 2023-11-07 09:42:25 +01:00
cmake arch: arm: cortex_ar: Use TPIDRURW as a base pointer for TLS 2023-11-06 15:32:01 -06:00
doc doc: memory: Fix SYS_MEM_BLOCKS_DEFINE_STATIC description 2023-11-06 19:03:29 -05:00
drivers timer: cortex-m systick: add idle timer 2023-11-07 09:42:37 +01:00
dts dts: arm: ambiq: Add clock control instances to Apollo4 Blue Plus SoC. 2023-11-07 09:42:25 +01:00
include/zephyr drivers: clock_control: Add Ambiq clock_control driver. 2023-11-07 09:42:25 +01:00
kernel kernel: Update k_thread_state_str() 2023-11-06 18:59:35 -05:00
lib libc/picolibc: Don't force TLS when using picolibc module 2023-11-07 09:42:19 +01:00
misc cmake: modules: dts: use devicetree stub file 2023-10-20 12:18:17 -07:00
modules modules libc3: Add missing Kconfig dependency 2023-11-06 10:10:27 +01:00
samples samples/net/cloud/aws_iot_mqtt: Fix sample yaml 2023-11-06 16:06:36 +01:00
scripts ci: assignees: do not set trivial on manifest changes 2023-11-06 12:11:58 -05:00
share sysbuild: Support SB_CONF_FILE and SB_EXTRA_CONF_FILE as lists 2023-10-11 18:25:05 +03:00
snippets snippets: xen_dom0: add support for Renesas R-Car Gen3 boards 2023-09-15 11:15:00 +01:00
soc intc: nxp_s32: use instance-based DT macros 2023-11-06 19:02:56 -05:00
submanifests modules: canopennode: make the CANopenNode module optional 2023-10-26 09:48:26 +02:00
subsys sd: add SDIO subsystem 2023-11-06 19:01:08 -05:00
tests tests/c_lib: Test picolibc module configurations 2023-11-07 09:42:19 +01:00
.checkpatch.conf checkpatch: Remove ext/ from excludes 2022-11-30 12:06:55 -05:00
.clang-format clang-format: flag *_SECTION_FOREACH as for loop 2023-05-26 11:04:54 -05:00
.codecov.yml yamllint: fix all yamllint comments errors 2023-01-04 01:16:45 +09:00
.editorconfig editorconfig: Improve verbosity 2022-04-28 08:55:39 -04:00
.gitattributes gitattributes: consider SVG files generated 2021-10-14 12:42:44 -04:00
.gitignore scripts: compliance: add a check for missing west area maintainer enties 2023-09-14 08:13:57 -07:00
.gitlint .gitlint: de-duplicate defaults with zephyr_commit_rules.py 2023-09-21 09:29:24 +02:00
.mailmap mailmap: sort alphabetically 2023-05-15 13:23:32 -04:00
.yamllint scripts: compliance: add support for YAMLLint 2023-01-04 17:29:23 +01:00
CMakeLists.txt cmake: cleanup and simplify the standard include logic in Zephyr 2023-11-06 18:57:30 -05:00
CODE_OF_CONDUCT.md
CODEOWNERS drivers: regulator: add MAX20335 driver 2023-11-02 20:32:40 +00:00
CONTRIBUTING.rst doc: Fixed a link in CONTRIBUTING.rst 2019-02-28 12:46:04 -08:00
Kconfig kconfig: Clean up header comments and make them consistent 2019-11-04 17:31:27 -05:00
Kconfig.zephyr scripts: check_init_priorities: drop the same priority check 2023-11-03 11:45:23 +01:00
LICENSE
MAINTAINERS.yml MAINTAINERS: add some missing (mainly doc-related) entries 2023-11-04 07:39:08 -04:00
README.rst doc: README: Rework Resources section 2023-10-17 19:05:20 +03:00
VERSION release: bump main to v3.5.99 2023-10-20 14:32:45 +03:00
version.h.in kernel: banner: Allow for customising version 2023-08-21 10:09:46 +02:00
west.yml manifest: Update hal_ambiq revision. 2023-11-07 09:42:25 +01:00
zephyr-env.cmd scripts: remove west from scripts/ 2019-01-29 10:15:01 +01:00
zephyr-env.sh everywhere: fix typos 2022-03-18 13:24:08 -04:00

.. 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