zephyr/include
Daniel Leung 811c838ff1 microkernel: introduce support for private mutexes
This enable defining mutexes in source code in addition to
defining in MDEF files. This introduces the macro
DEFINE_MUTEX(mutex_name). The mutexes created this way are
the same, in functionality, as those defined in MDEF files.
They can be manipulated by the standard microkernel
mutex APIs.

Sample usage:

    DEFINE_MUTEX(mutex1);

    void one_function(void)
    {
        task_mutex_lock_wait(mutex1);
        ...
        task_mutex_unlock(mutex1);
    }

To use the mutex defined in another source file, simply add:

    extern const kmutex_t mutex1;

to the desired C or header file.

[ DL: This is a slightly modified version of similar patch
      by Allan Stephens available at
      https://oic-review.01.org/gerrit/3255 ]

Change-Id: Ib9cd8193eaf849a8aad1d217912759324ee8818e
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-05 20:14:46 -05:00
..
arch Add page-aligned padding to initlevel section for Galileo test load 2016-02-05 20:14:43 -05:00
bluetooth Bluetooth: Redesign Bluetooth init API 2016-02-05 20:14:44 -05:00
drivers Remove references to BSP from include/ directory 2016-02-05 20:14:43 -05:00
microkernel microkernel: introduce support for private mutexes 2016-02-05 20:14:46 -05:00
misc printk.h: don't break if CONFIG_PRINTK undefined 2016-02-05 20:14:45 -05:00
net
toolchain Remove obsolete SYS_PREKERNEL_INIT() macro 2016-02-05 20:14:37 -05:00
atomic.h
device.h
gpio.h
i2c.h
init.h init: Split pure_init into pure_init_{early,late} levels 2016-02-05 20:14:37 -05:00
kernel_version.h
linker-defs.h
linker-tool-gcc.h toolchain: add support for iamcu toolchain 2016-02-05 20:14:38 -05:00
linker-tool.h
microkernel.h
nanokernel.h Doxygen: Nanokernel semaphore APIs comments to header files. 2016-02-05 20:14:42 -05:00
section_tags.h
sections.h
spi.h spi: Fix the generic API header 2016-02-05 20:14:39 -05:00
sw_isr_table.h
sys_clock.h Kconfig: fix SYS_CLOCK_HW_CYCLES_PER_SEC dependencies 2016-02-05 20:14:42 -05:00
toolchain.h