my version

Dependents:   aps_so_c2

Fork of mbed-rtos by mbed official

Committer:
feupos
Date:
Sat Nov 18 18:27:08 2017 +0000
Revision:
127:bf4dda6a6a1b
Parent:
92:bc9729798a19
ok

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 48:e9a2c7cb57a4 1 /*----------------------------------------------------------------------------
mbed_official 48:e9a2c7cb57a4 2 * RL-ARM - RTX
mbed_official 48:e9a2c7cb57a4 3 *----------------------------------------------------------------------------
mbed_official 48:e9a2c7cb57a4 4 * Name: RT_LIST.H
mbed_official 48:e9a2c7cb57a4 5 * Purpose: Functions for the management of different lists
mbed_official 92:bc9729798a19 6 * Rev.: V4.70
mbed_official 48:e9a2c7cb57a4 7 *----------------------------------------------------------------------------
mbed_official 48:e9a2c7cb57a4 8 *
mbed_official 92:bc9729798a19 9 * Copyright (c) 1999-2009 KEIL, 2009-2013 ARM Germany GmbH
mbed_official 48:e9a2c7cb57a4 10 * All rights reserved.
mbed_official 48:e9a2c7cb57a4 11 * Redistribution and use in source and binary forms, with or without
mbed_official 48:e9a2c7cb57a4 12 * modification, are permitted provided that the following conditions are met:
mbed_official 48:e9a2c7cb57a4 13 * - Redistributions of source code must retain the above copyright
mbed_official 48:e9a2c7cb57a4 14 * notice, this list of conditions and the following disclaimer.
mbed_official 48:e9a2c7cb57a4 15 * - Redistributions in binary form must reproduce the above copyright
mbed_official 48:e9a2c7cb57a4 16 * notice, this list of conditions and the following disclaimer in the
mbed_official 48:e9a2c7cb57a4 17 * documentation and/or other materials provided with the distribution.
mbed_official 68:d3d0e710b443 18 * - Neither the name of ARM nor the names of its contributors may be used
mbed_official 68:d3d0e710b443 19 * to endorse or promote products derived from this software without
mbed_official 48:e9a2c7cb57a4 20 * specific prior written permission.
mbed_official 48:e9a2c7cb57a4 21 *
mbed_official 68:d3d0e710b443 22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 68:d3d0e710b443 23 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 48:e9a2c7cb57a4 24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
mbed_official 48:e9a2c7cb57a4 25 * ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
mbed_official 48:e9a2c7cb57a4 26 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
mbed_official 68:d3d0e710b443 27 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
mbed_official 68:d3d0e710b443 28 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
mbed_official 68:d3d0e710b443 29 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
mbed_official 68:d3d0e710b443 30 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
mbed_official 48:e9a2c7cb57a4 31 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
mbed_official 48:e9a2c7cb57a4 32 * POSSIBILITY OF SUCH DAMAGE.
mbed_official 48:e9a2c7cb57a4 33 *---------------------------------------------------------------------------*/
mbed_official 48:e9a2c7cb57a4 34
mbed_official 48:e9a2c7cb57a4 35 /* Definitions */
mbed_official 48:e9a2c7cb57a4 36
mbed_official 48:e9a2c7cb57a4 37 /* Values for 'cb_type' */
mbed_official 48:e9a2c7cb57a4 38 #define TCB 0
mbed_official 48:e9a2c7cb57a4 39 #define MCB 1
mbed_official 48:e9a2c7cb57a4 40 #define SCB 2
mbed_official 48:e9a2c7cb57a4 41 #define MUCB 3
mbed_official 48:e9a2c7cb57a4 42 #define HCB 4
mbed_official 48:e9a2c7cb57a4 43
mbed_official 48:e9a2c7cb57a4 44 /* Variables */
mbed_official 48:e9a2c7cb57a4 45 extern struct OS_XCB os_rdy;
mbed_official 48:e9a2c7cb57a4 46 extern struct OS_XCB os_dly;
mbed_official 48:e9a2c7cb57a4 47
mbed_official 48:e9a2c7cb57a4 48 /* Functions */
mbed_official 48:e9a2c7cb57a4 49 extern void rt_put_prio (P_XCB p_CB, P_TCB p_task);
mbed_official 48:e9a2c7cb57a4 50 extern P_TCB rt_get_first (P_XCB p_CB);
mbed_official 48:e9a2c7cb57a4 51 extern void rt_put_rdy_first (P_TCB p_task);
mbed_official 48:e9a2c7cb57a4 52 extern P_TCB rt_get_same_rdy_prio (void);
mbed_official 48:e9a2c7cb57a4 53 extern void rt_resort_prio (P_TCB p_task);
mbed_official 48:e9a2c7cb57a4 54 extern void rt_put_dly (P_TCB p_task, U16 delay);
mbed_official 48:e9a2c7cb57a4 55 extern void rt_dec_dly (void);
mbed_official 48:e9a2c7cb57a4 56 extern void rt_rmv_list (P_TCB p_task);
mbed_official 48:e9a2c7cb57a4 57 extern void rt_rmv_dly (P_TCB p_task);
mbed_official 48:e9a2c7cb57a4 58 extern void rt_psq_enq (OS_ID entry, U32 arg);
mbed_official 48:e9a2c7cb57a4 59
mbed_official 48:e9a2c7cb57a4 60 /* This is a fast macro generating in-line code */
mbed_official 48:e9a2c7cb57a4 61 #define rt_rdy_prio(void) (os_rdy.p_lnk->prio)
mbed_official 48:e9a2c7cb57a4 62
mbed_official 48:e9a2c7cb57a4 63
mbed_official 48:e9a2c7cb57a4 64 /*----------------------------------------------------------------------------
mbed_official 48:e9a2c7cb57a4 65 * end of file
mbed_official 48:e9a2c7cb57a4 66 *---------------------------------------------------------------------------*/
mbed_official 48:e9a2c7cb57a4 67