- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

# poscfg.h

Go to the documentation of this file.

    00001 /*
    00002  *  Copyright (c) 2004-2006, Dennis Kuschel.
    00003  *  All rights reserved.
    00004  *
    00005  *  Redistribution and use in source and binary forms, with or without
    00006  *  modification, are permitted provided that the following conditions
    00007  *  are met:
    00008  *
    00009  *   1. Redistributions of source code must retain the above copyright
    00010  *      notice, this list of conditions and the following disclaimer.
    00011  *   2. Redistributions in binary form must reproduce the above copyright
    00012  *      notice, this list of conditions and the following disclaimer in the
    00013  *      documentation and/or other materials provided with the distribution.
    00014  *   3. The name of the author may not be used to endorse or promote
    00015  *      products derived from this software without specific prior written
    00016  *      permission.
    00017  *
    00018  *  THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
    00019  *  OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
    00020  *  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    00021  *  ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
    00022  *  INDIRECT,  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
    00023  *  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
    00024  *  SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    00025  *  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
    00026  *  STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    00027  *  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
    00028  *  OF THE POSSIBILITY OF SUCH DAMAGE.
    00029  *
    00030  */
    00031
    00032
    00045 #ifndef _POSCFG_H
    00046 #define _POSCFG_H
    00047
    00048
    00049 /*---------------------------------------------------------------------------
    00050  *  OS CORE SETTINGS
    00051  *-------------------------------------------------------------------------*/
    00052
    00063 #define POSCFG_MAX_PRIO_LEVEL    8
    00064
    00074 #define POSCFG_TASKS_PER_PRIO    8
    00075
    00089 #define POSCFG_MAX_TASKS        16
    00090
    00102 #define POSCFG_MAX_EVENTS       16
    00103
    00117 #define POSCFG_MAX_MESSAGES      8
    00118
    00129 #define POSCFG_MAX_TIMER         4
    00130
    00156 #define POSCFG_ROUNDROBIN        1
    00157
    00171 #define POSCFG_SOFT_MTASK        1
    00172
    00180 #define POSCFG_CTXSW_COMBINE    10
    00181
    00190 #define POSCFG_REALTIME_PRIO     0
    00191
    00198 #define POSCFG_TASKCB_USERSPACE  0
    00199
    00208 #define POSCFG_MSG_MEMORY        1
    00209
    00216 #define POSCFG_MSG_BUFSIZE      80
    00217
    00232 #define POSCFG_SOFTINTERRUPTS    8
    00233
    00245 #define POSCFG_SOFTINTQUEUELEN  20
    00246
    00251 #define HZ                      18  /* timer ticks per second */
    00252
    00257 /*---------------------------------------------------------------------------
    00258  *  PERFORMANCE / CODE SIZE / DEBUG SETTINGS
    00259  *-------------------------------------------------------------------------*/
    00260
    00271 #define POSCFG_FASTCODE          1
    00272
    00278 #define POSCFG_SMALLCODE         1
    00279
    00298 #ifdef _DBG
    00299 #define POSCFG_ARGCHECK          2
    00300 #else
    00301 #define POSCFG_ARGCHECK          1
    00302 #endif
    00303
    00308 /*---------------------------------------------------------------------------
    00309  *  DEFINE FEATURES TO INCLUDE
    00310  *-------------------------------------------------------------------------*/
    00311
    00321 #define POSCFG_FEATURE_YIELD         1
    00322
    00327 #define POSCFG_FEATURE_SLEEP         1
    00328
    00333 #define POSCFG_FEATURE_EXIT          1
    00334
    00339 #define POSCFG_FEATURE_GETPRIORITY   1
    00340
    00345 #define POSCFG_FEATURE_SETPRIORITY   1
    00346
    00351 #define POSCFG_FEATURE_SEMAPHORES    1
    00352
    00358 #define POSCFG_FEATURE_SEMADESTROY   1
    00359
    00365 #define POSCFG_FEATURE_SEMAWAIT      1
    00366
    00371 #define POSCFG_FEATURE_MUTEXES       1
    00372
    00378 #define POSCFG_FEATURE_MUTEXDESTROY  1
    00379
    00385 #define POSCFG_FEATURE_MUTEXTRYLOCK  1
    00386
    00391 #define POSCFG_FEATURE_GETTASK       1
    00392
    00397 #define POSCFG_FEATURE_TASKUNUSED    1
    00398
    00403 #define POSCFG_FEATURE_MSGBOXES      1
    00404
    00410 #define POSCFG_FEATURE_MSGWAIT       1
    00411
    00416 #define POSCFG_FEATURE_INHIBITSCHED  1
    00417
    00422 #define POSCFG_FEATURE_JIFFIES       1
    00423
    00428 #define POSCFG_FEATURE_TIMER         1
    00429
    00435 #define POSCFG_FEATURE_TIMERDESTROY  1
    00436
    00442 #define POSCFG_FEATURE_TIMERFIRED    1
    00443
    00448 #define POSCFG_FEATURE_FLAGS         1
    00449
    00455 #define POSCFG_FEATURE_FLAGDESTROY   1
    00456
    00462 #define POSCFG_FEATURE_FLAGWAIT      1
    00463
    00468 #define POSCFG_FEATURE_SOFTINTS      1
    00469
    00475 #define POSCFG_FEATURE_SOFTINTDEL    1
    00476
    00481 #define POSCFG_FEATURE_IDLETASKHOOK  1
    00482
    00487 #define POSCFG_FEATURE_ATOMICVAR     1
    00488
    00492 #define POSCFG_FEATURE_ERRNO         1
    00493
    00498 #define POSCFG_FEATURE_LISTS         1
    00499
    00505 #define POSCFG_FEATURE_LISTJOIN      1
    00506
    00512 #define POSCFG_FEATURE_LISTLEN       1
    00513
    00520 #define POSCFG_FEATURE_DEBUGHELP     0
    00521
    00525 #endif /* _POSCFG_H */