Go to file
Jordan Yates b5c4140afb device: optimize handles array
Optimize the handles array by making the following observations:
 * The devicetree ordinal at index 0 in pass1 is discarded by
   gen_handles.py, and therefore does not appear in the pass2 array.
 * gen_handles.py does not need `DEVICE_HANDLE_ENDS` to determine the
   end of the handle array, as that information is present in the .elf.

Therefore, instead of replacing the devicetree ordinal with an
additional `DEVICE_HANDLE_ENDS` at the end (to preserve lengths), we
can simply move the ordinal to the end and have it be the original
`DEVICE_HANDLE_ENDS` symbol. This reduces the size of the array by
one handle per device (2 bytes).

Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
2021-08-25 19:43:54 -04:00
.buildkite ci: Update daily to use docker image 0.18.2 2021-08-17 12:51:16 -05:00
.github actions: run footprint action in zephyr repo only 2021-08-23 12:49:43 -04:00
arch arch: riscv: introduce global pointer relative addressing support 2021-08-20 18:53:23 -04:00
boards boards: nucleo_g01re: Missing zephyr_udc0 alternate node label 2021-08-25 18:03:31 -04:00
cmake cmake: emu: nsim: Allow all nsim platform use mdb 2021-08-24 07:22:22 -04:00
doc doc: document devicetree/pinctrl.h macros 2021-08-25 18:09:00 -04:00
drivers adc: npcx: use new DT pinctrl accessors 2021-08-25 18:09:00 -04:00
dts devicetree: add tests for devicetree/pinctrl.h macros 2021-08-25 18:09:00 -04:00
include device: optimize handles array 2021-08-25 19:43:54 -04:00
kernel kernel: allow linking a prebuilt library instead of compiling 2021-08-25 18:01:14 -04:00
lib libc: types: suppress deviation 2021-08-24 07:23:02 -04:00
misc toolchain: add GEN_ABSOLUTE_SYM_KCONFIG() 2021-02-02 09:23:45 -05:00
modules drivers: counter: added ctimer driver for lpcexpresso55s69 2021-08-24 17:13:22 -04:00
samples drivers: adc: add LPADC driver support to mimxrt685 platform 2021-08-25 18:02:00 -04:00
scripts device: optimize handles array 2021-08-25 19:43:54 -04:00
share cmake: check zephyr version if specified and ZEPHYR_BASE is set 2021-05-25 16:48:35 -05:00
soc soc: stm32: use new DT pinctrl accessors 2021-08-25 18:09:00 -04:00
subsys pm: device_runtime: Fix possible underflow 2021-08-25 19:40:17 -04:00
tests devicetree: add tests for devicetree/pinctrl.h macros 2021-08-25 18:09:00 -04:00
.checkpatch.conf checkpatch: ignore linux specific ENOSYS warning 2021-03-30 10:50:14 -05:00
.clang-format clang-format: Change lines length limit from 80 to 100 2021-05-06 08:13:32 -05:00
.codecov.yml
.editorconfig
.gitattributes
.gitignore gitignore: add common Python venv directories 2021-04-20 11:30:40 -05:00
.gitlint
.mailmap mailmap: update mailmap file with some stray emails 2021-06-17 14:15:41 -04:00
.uncrustify.cfg
CMakeLists.txt kernel: fix kobj table if having .sdata section. 2021-07-22 07:29:21 -05:00
CODE_OF_CONDUCT.md
CODEOWNERS boards: arm: Add Legend 2.5" boards 2021-08-23 08:26:23 -04:00
CONTRIBUTING.rst
Kconfig
Kconfig.zephyr soc: esp32s2: add initial soc support files for esp32s2 2021-07-28 21:09:27 -04:00
LICENSE
MAINTAINERS.yml MAINTAINERS: Add 'Nuvoton_Numicro Platform' for Nuvoton Numicro family. 2021-08-07 20:37:24 -04:00
README.rst readme: add missing logo 2021-07-21 10:37:37 -05:00
VERSION version: add EXTRAVERSION to VERSION file 2021-06-05 07:07:01 -04:00
version.h.in
west.yml west.yml: Update CMSIS-Core components to 5.8.0 release 2021-08-25 18:02:54 -04:00
zephyr-env.cmd
zephyr-env.sh

.. raw:: html

   <a href="https://www.zephyrproject.org">
     <p align="center">
       <img src="doc/_static/images/logo-readme.png">
     </p>
   </a>

   <a href="https://bestpractices.coreinfrastructure.org/projects/74"><img
   src="https://bestpractices.coreinfrastructure.org/projects/74/badge"></a>
   <a href="https://buildkite.com/zephyr/zephyr">
   <img
   src="https://badge.buildkite.com/f5bd0dc88306cee17c9b38e78d11bb74a6291e3f40e7d13f31.svg?branch=main"></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-M,
Intel x86, ARC, Nios II, Tensilica Xtensa, and RISC-V, 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 Slack; see the Resources
below for details.

.. _project-resources:

Resources
*********

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

* **Help**: `Asking for Help Tips`_
* **Documentation**: http://docs.zephyrproject.org (`Getting Started Guide`_)
* **Source Code**: https://github.com/zephyrproject-rtos/zephyr is the main
  repository; https://elixir.bootlin.com/zephyr/latest/source contains a
  searchable index
* **Releases**: https://github.com/zephyrproject-rtos/zephyr/releases
* **Samples and example code**: see `Sample and Demo Code Examples`_
* **Mailing Lists**: users@lists.zephyrproject.org and
  devel@lists.zephyrproject.org are the main user and developer mailing lists,
  respectively. You can join the developer's list and search its archives at
  `Zephyr Development mailing list`_. The other `Zephyr mailing list
  subgroups`_ have their own archives and sign-up pages.
* **Nightly CI Build Status**: https://lists.zephyrproject.org/g/builds
  The builds@lists.zephyrproject.org mailing list archives the CI
  (buildkite) nightly build results.
* **Chat**: Zephyr's Slack workspace is https://zephyrproject.slack.com.  Use
  this `Slack Invite`_ to register.
* **Contributing**: see the `Contribution Guide`_
* **Wiki**: `Zephyr GitHub wiki`_
* **Issues**: https://github.com/zephyrproject-rtos/zephyr/issues
* **Security Issues**: Email vulnerabilities@zephyrproject.org to report
  security issues; also see our `Security`_ documentation. Security issues are
  tracked separately at https://zephyrprojectsec.atlassian.net.
* **Zephyr Project Website**: https://zephyrproject.org

.. _Slack Invite: https://tinyurl.com/2vue8666
.. _supported boards: http://docs.zephyrproject.org/latest/boards/index.html
.. _Zephyr Documentation: http://docs.zephyrproject.org
.. _Introduction to Zephyr: http://docs.zephyrproject.org/latest/introduction/index.html
.. _Getting Started Guide: http://docs.zephyrproject.org/latest/getting_started/index.html
.. _Contribution Guide: http://docs.zephyrproject.org/latest/contribute/index.html
.. _Zephyr GitHub wiki: https://github.com/zephyrproject-rtos/zephyr/wiki
.. _Zephyr Development mailing list: https://lists.zephyrproject.org/g/devel
.. _Zephyr mailing list subgroups: https://lists.zephyrproject.org/g/main/subgroups
.. _Sample and Demo Code Examples: http://docs.zephyrproject.org/latest/samples/index.html
.. _Security: http://docs.zephyrproject.org/latest/security/index.html
.. _Asking for Help Tips: https://docs.zephyrproject.org/latest/getting_started/index.html#asking-for-help