Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of mbed-rtos by
rt_List.h
00001 /*---------------------------------------------------------------------------- 00002 * RL-ARM - RTX 00003 *---------------------------------------------------------------------------- 00004 * Name: RT_LIST.H 00005 * Purpose: Functions for the management of different lists 00006 * Rev.: V4.60 00007 *---------------------------------------------------------------------------- 00008 * 00009 * Copyright (c) 1999-2009 KEIL, 2009-2012 ARM Germany GmbH 00010 * All rights reserved. 00011 * Redistribution and use in source and binary forms, with or without 00012 * modification, are permitted provided that the following conditions are met: 00013 * - Redistributions of source code must retain the above copyright 00014 * notice, this list of conditions and the following disclaimer. 00015 * - Redistributions in binary form must reproduce the above copyright 00016 * notice, this list of conditions and the following disclaimer in the 00017 * documentation and/or other materials provided with the distribution. 00018 * - Neither the name of ARM nor the names of its contributors may be used 00019 * to endorse or promote products derived from this software without 00020 * specific prior written permission. 00021 * 00022 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 00023 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00024 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 00025 * ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE 00026 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 00027 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 00028 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 00029 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 00030 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 00031 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 00032 * POSSIBILITY OF SUCH DAMAGE. 00033 *---------------------------------------------------------------------------*/ 00034 00035 /* Definitions */ 00036 00037 /* Values for 'cb_type' */ 00038 #define TCB 0 00039 #define MCB 1 00040 #define SCB 2 00041 #define MUCB 3 00042 #define HCB 4 00043 00044 /* Variables */ 00045 extern struct OS_XCB os_rdy; 00046 extern struct OS_XCB os_dly; 00047 00048 /* Functions */ 00049 extern void rt_put_prio (P_XCB p_CB, P_TCB p_task); 00050 extern P_TCB rt_get_first (P_XCB p_CB); 00051 extern void rt_put_rdy_first (P_TCB p_task); 00052 extern P_TCB rt_get_same_rdy_prio (void); 00053 extern void rt_resort_prio (P_TCB p_task); 00054 extern void rt_put_dly (P_TCB p_task, U16 delay); 00055 extern void rt_dec_dly (void); 00056 extern void rt_rmv_list (P_TCB p_task); 00057 extern void rt_rmv_dly (P_TCB p_task); 00058 extern void rt_psq_enq (OS_ID entry, U32 arg); 00059 00060 /* This is a fast macro generating in-line code */ 00061 #define rt_rdy_prio(void) (os_rdy.p_lnk->prio) 00062 00063 00064 /*---------------------------------------------------------------------------- 00065 * end of file 00066 *---------------------------------------------------------------------------*/ 00067
Generated on Wed Jul 13 2022 18:32:39 by
