Change the terminology in the documentation and use board instead
of platform where applicable.
Change-Id: I812598e1948ee7df8739e5cc9029278e9e849c7f
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Change terminology and use SoC instead of platform. An SoC provides
features and default configurations available with an SoC. A board
implements the SoC and adds more features and IP block specific to the
board to extend the SoC functionality such as sensors and debugging
features.
Change-Id: I15e8d78a6d4ecd5cfb3bc25ced9ba77e5ea1122f
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Removes the 'priority' parameter from the IRQ_CONFIG macro.
This parameter was not used anymore in any architecture.
The priority is handled in the IRQ_CONNECT macro.
The documentation is updated as well.
Change-Id: I24a293c5e41bd729d5e759113e0c4a8a6a61e0dd
Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
This routine allows the background task to sleep for a specified
number of ticks.
Change-Id: I2533005e3d9a564c2ca0de8333e224743cefb658
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Adds the following generic stack routines:
nano_stack_push()
nano_stack_stack_pop()
nano_stack_pop_wait()
Those routines are convenience wrappers for invoking the task, fiber and
ISR (if applicable) specific implementations.
Change-Id: I6e7bb2ca69bb2e3d5ed955654390746e76e4ab92
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Adds the following generic semaphore routines:
nano_sem_take()
nano_sem_take_wait()
Those routines are convenience wrappers for invoking the task, fiber and
ISR (if applicable) specific implementations.
Change-Id: I09d715d07263eb0ee526231120ba65d1e3feebce
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Adds the following generic lifo routines:
nano_lifo_put()
nano_lifo_get()
nano_lifo_get_wait()
nano_lifo_get_wait_timeout()
Those routines are convenience wrappers for invoking the task, fiber and
ISR (if applicable) specific implementations.
Change-Id: I5252e4643fe4772f1309b26c1b3e4319f5035956
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Add the kernel event logger documentation where the user can find
how to use this mechanism and which event logging points are
available currently.
Change-Id: I6d86c7b79c6b4a56a9e3514b6c4933a35e0c782f
Signed-off-by: Yonattan Louise <yonattan.a.louise.mendoza@intel.com>
The tables in the Kernel Primer are changed to lists. Making it easier
to update them. Other minor changes were done to ensure consitency.
The :c: and :cpp: markup has been fixed. When the documentation for a
call exists, then it is linked.
Change-Id: I8f389a0a0ca7c5fe904c0a1fa520e2e499f1001b
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
Instead of loading all indexed doxygen symbols in one page, we
use the defined groups to load the API documentation in the specific
sections and reduce the trash coming from doxygen to just what we
need.
Change-Id: I030e3de33e8cc26871f95cd45a50af0cae1bb942
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Provides additional details about the use of fibers, following
the standard format now being used for kernel services.
Change-Id: Iee5cca7af213259f1dec53d75b729388fcf93bf8
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
This patch is based on some code contributed by Dirk Brandewie.
This is a generic data structure for queuing data in a FIFO ring
buffer. Any given data enqueued is annotated with an app-specific
type identifier, and small integral value. Use of a data pointer
is optional if the necessary information can be conveyed in the
annotations. We want all the metadata to fit in a single DWORD.
The ring buffer always contains at least one free dword in the
buffer to correctly distinguish between full and empty queues.
Concurrency control is almost nonexistent; depending on usage,
apps may want to introduce the usage of semaphores and/or mutexes
to preserve the integrity of the ring buffer or provide notifications
when data is available.
Change-Id: I860262d2afc96db4476d4c695a92f7da355ab732
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
Adds in a label that can be used to reference the nanokernel semaphore
documentation, similar to what's available for other nanokernel services.
Change-Id: Ic97852e85b41a9e6e778dde820b98ea5be5f06f1
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Also move about_zephyr back to main page and remove duplicated
examples for nano kernel.
Change-Id: Icbc899ce5688d853a59dfc5c8d50f34048ed212b
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit fixes all warnings about cross-references and file names. It
addresses all mark-up issues. Only the warnings regarding Doxygen
objects and files that are intentionally not added to a toctree are left
unhandled.
Change-Id: I5d840522ea0bade4f183e447745244aecf893c94
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
Revises the concepts section to better align with the conventions
used for other kernel object documentation.
Change-Id: Iaefe87ffa163fdaf091a4fc0f42afb9f0988cc7c
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Provides additional details about the use of nanokernel semaphores,
following the standard format now being used for kernel object types.
Change-Id: Iddd1c53ebbdbebdfa7e8bfa335d4d267c69ab572
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Provides a bit more detail, to better align with the descriptions
now used for other nanokernel object types.
Change-Id: I963c670d3b7fb5eedbe902bed66f1ce57d18eb12
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Provides additional details about the use of nanokernel FIFOs,
following the standard format now being used for kernel object types.
Change-Id: Ieccc94eee035413b22b1c8902df61e580f0920e8
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Provides additional details about the use of nanokernel FIFOs,
following the standard format now being used for kernel object types.
Change-Id: Ic6828c1730d160f79ae51ebf004d6af2e7adb7af
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Adds examples showing how to ...
1. initialize a nanokernel LIFO
2. write to a nanokernel LIFO
3. read from a nanokernel LIFO
Change-Id: I8b3646a3712b0aa3b5d3e432bdba63464753a6b5
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Adds a short section describing the nanokernel's background task.
This section is modelled on the section for microkernel tasks,
but excludes areas that aren't applicable to the background task.
Change-Id: Id209bad8ada222347cfcd01a3c822ca486bb48db
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Adds a short section to make clear that microkernel applications
can utilize fibers, and can even use them with a few microkernel
object types. Revises some link names to account for the fact that
there are now 2 sections describing fiber services.
Change-Id: I5960aea8b3959bb4a383f919882419effff5917d
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Adds examples showing how to ...
1. initialize a nanokernel FIFO
2. write to a nanokernel FIFO
3. read from a nanokernel FIFO with a timeout
Change-Id: I6dbe741c2439a80e663f31372b11ef85b9e5b503
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
Adds examples showing how to ...
1. initialize a nanokernel semaphore
2. give a nanokernel semaphore from an ISR
3. take a nanokernel semaphore with a timeout
Change-Id: I6d5c2c0616c1dd69b42f5e3002c8678c067fb0f2
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
There is no concept of a "process" in the system, so remove last
mentions of that concept from free-form text (doc, comments, macro
parameter names).
Change-Id: Ic1b73371c448ed93b0db46bc9bb412d1e1dbc8bd
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
Adds an example showing how to start a fiber from a task.
Change-Id: I5728d9b48650c60ab265924f436f78696849b915
Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
The kernel's services previously referred to as "signalling services",
which include object types such as semaphores, events, and mutexes,
are now referred to as "synchronization services". This term more
clearly conveys their use as a means to synchronize the operation
of two or more entities within the kernel.
Change-Id: Id24b96f2daf7d866a2d134c222e3d0b6fc568f5a
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
A complete rewrite of the Overview section. The revised text
provides a more logical and comprehensive introduction to the
main concepts and capabilities of Zephyr, without providing
an excessive level of detail. (Those details should be provided
by the remaining sections of the Kernel Primer.)
This rewrite has also resulted in some small changes to the
About Zephyr and other Kernel Primer sections.
Change-Id: Idd4d5e0f0aabaaee8cd43d12563018ba4d8f7417
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Removes an unnecessary level of headings in the microkernel and
nanokernel sections of the Zephyr kernel documentation, providing
users with direct access to the major service areas of the
microkernel and nanokernel from the main kernel web page. Also
greatly reduces the introductory text for these 2 sections,
since users can now easily find out what the various subsections
provide by simply clicking on them.
Change-Id: Ibc5858daad49cfb6567dfad285b7a1d5a755d149
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Describes nanokernel timer use, including concepts, examples,
and APIs.
Change-Id: Ibee277c62299e8cbe5c5093f097efd3596fbaf77
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Adds introductory text to highlight the limited signalling choices
provided by the nanokernel. Updates the semaphore API table to
incorporate missing APIs.
Change-Id: I947de383178f8710f0ae238a03f197102dac2845
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Partitions services into a separate file for each service. Updates
API tables to incorporate missing APIs.
Change-Id: Ia08b52b4865967beda02851cfe4a7d5ca4e8f596
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Added an API table to summarize available APIs. (Still need to
add examples of how to use to more significant ones.)
Change-Id: I371912ea77ad264ed0c96f129e8676ab866697db
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Fix documentation to link to autogenerated API entries.
Change-Id: I0355435c189bff17c4468b1f300dcffcce73e51d
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Moves the Nanokernel Object documentation to a new Nanokernel Services
section within the Kernel Primer. Labels, cross-references, figures,
headings and filenames were updated to reflect the new structure.
Change-Id: I04f97e712d78cd211a8ed1315f86895a51affa01
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>