FreeCalypso > hg > freecalypso-sw
annotate gsm-fw/nucleus/pmce.c @ 686:695ac18cbcf9
alr_trc.c compiles
| author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> | 
|---|---|
| date | Mon, 29 Sep 2014 23:38:36 +0000 | 
| parents | afceeeb2cba1 | 
| children | 
| rev | line source | 
|---|---|
| 79 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 1 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 2 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 3 /* Copyright Mentor Graphics Corporation 2002 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 4 /* All Rights Reserved. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 5 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 6 /* THIS WORK CONTAINS TRADE SECRET AND PROPRIETARY INFORMATION WHICH IS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 7 /* THE PROPERTY OF MENTOR GRAPHICS CORPORATION OR ITS LICENSORS AND IS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 8 /* SUBJECT TO LICENSE TERMS. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 9 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 10 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 11 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 12 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 13 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 14 /* FILE NAME VERSION */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 15 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 16 /* pmce.c Nucleus PLUS 1.14 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 17 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 18 /* COMPONENT */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 19 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 20 /* PM - Partition Memory Management */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 21 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 22 /* DESCRIPTION */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 23 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 24 /* This file contains the error checking routines for the functions */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 25 /* in the Partition component. This permits easy removal of error */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 26 /* checking logic when it is not needed. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 27 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 28 /* DATA STRUCTURES */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 29 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 30 /* None */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 31 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 32 /* FUNCTIONS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 33 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 34 /* PMCE_Create_Partition_Pool Create a Partition Pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 35 /* PMCE_Delete_Partition_Pool Delete a Partition Pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 36 /* PMCE_Allocate_Partition Allocate a partition from a */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 37 /* pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 38 /* PMCE_Deallocate_Partition Deallocate a partition from */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 39 /* a pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 40 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 41 /* DEPENDENCIES */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 42 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 43 /* cs_extr.h Common Service functions */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 44 /* tc_extr.h Thread Control functions */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 45 /* pm_extr.h Partition functions */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 46 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 47 /* HISTORY */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 48 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 49 /* DATE REMARKS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 50 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 51 /* 03-01-1993 Created initial version 1.0 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 52 /* 04-19-1993 Verified version 1.0 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 53 /* 03-01-1994 Changed name original error */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 54 /* checking file and changed */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 55 /* function interfaces, resulting */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 56 /* in version 1.1 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 57 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 58 /* 03-18-1994 Verified version 1.1 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 59 /* 04-17-1996 updated to version 1.2 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 60 /* 03-24-1998 Released version 1.3 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 61 /* 04-17-2002 Released version 1.13m */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 62 /* 11-07-2002 Released version 1.14 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 63 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 64 #define NU_SOURCE_FILE | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 65 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 66 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 67 #include "cs_extr.h" /* Common service functions */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 68 #include "tc_extr.h" /* Thread control functions */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 69 #include "pm_extr.h" /* Partition functions */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 70 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 71 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 72 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 73 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 74 /* FUNCTION */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 75 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 76 /* PMCE_Create_Partition_Pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 77 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 78 /* DESCRIPTION */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 79 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 80 /* This function performs error checking on the parameters supplied */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 81 /* to the create partition pool function. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 82 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 83 /* CALLED BY */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 84 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 85 /* Application */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 86 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 87 /* CALLS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 88 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 89 /* PMC_Create_Partition_Pool Actual create partition pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 90 /* function */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 91 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 92 /* INPUTS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 93 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 94 /* pool_ptr Partition pool control block */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 95 /* pointer */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 96 /* name Partition pool name */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 97 /* start_address Starting address of the pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 98 /* pool_size Number of bytes in the pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 99 /* partition_size Number of bytes in each */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 100 /* partition of the pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 101 /* suspend_type Suspension type */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 102 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 103 /* OUTPUTS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 104 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 105 /* NU_INVALID_POOL Pool control block pointer */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 106 /* is NULL */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 107 /* NU_INVALID_MEMORY Pool starting address is NULL*/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 108 /* NU_INVALID_SIZE Partition size is 0 or it is */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 109 /* larger than the pool area */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 110 /* NU_INVALID_SUSPEND Suspension selection is not */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 111 /* valid */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 112 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 113 /* HISTORY */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 114 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 115 /* DATE REMARKS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 116 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 117 /* 03-01-1993 Created initial version 1.0 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 118 /* 04-19-1993 Verified version 1.0 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 119 /* 03-01-1994 Modified function interface, */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 120 /* resulting in version 1.1 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 121 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 122 /* 03-18-1994 Verified version 1.1 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 123 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 124 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 125 STATUS PMCE_Create_Partition_Pool(NU_PARTITION_POOL *pool_ptr, CHAR *name, | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 126 VOID *start_address, UNSIGNED pool_size, | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 127 UNSIGNED partition_size, OPTION suspend_type) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 128 { | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 129 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 130 PM_PCB *pool; /* Pool control block ptr */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 131 STATUS status; /* Completion status */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 132 UNSIGNED size; /* Adjusted size of partition*/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 133 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 134 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 135 /* Move input pool pointer into internal pointer. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 136 pool = (PM_PCB *) pool_ptr; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 137 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 138 /* Adjust the partition size to something that is evenly divisible by | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 139 the number of bytes in an UNSIGNED data type. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 140 size = ((partition_size + sizeof(UNSIGNED) - 1)/sizeof(UNSIGNED)) * | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 141 sizeof(UNSIGNED); | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 142 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 143 /* Check for a NULL partition pool control block pointer or a control | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 144 block that is already created. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 145 if ((pool == NU_NULL) || (pool -> pm_id == PM_PARTITION_ID)) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 146 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 147 /* Invalid partition pool control block pointer. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 148 status = NU_INVALID_POOL; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 149 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 150 else if (start_address == NU_NULL) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 151 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 152 /* Invalid memory pointer. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 153 status = NU_INVALID_MEMORY; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 154 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 155 else if ((size == 0) || ((size + PM_OVERHEAD) > pool_size)) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 156 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 157 /* Pool could not even accommodate one partition. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 158 status = NU_INVALID_SIZE; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 159 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 160 else if ((suspend_type != NU_FIFO) && (suspend_type != NU_PRIORITY)) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 161 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 162 /* Invalid suspension type. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 163 status = NU_INVALID_SUSPEND; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 164 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 165 else | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 166 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 167 /* Call the actual service to create the partition pool. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 168 status = PMC_Create_Partition_Pool(pool_ptr, name, start_address, | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 169 pool_size, partition_size, suspend_type); | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 170 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 171 /* Return completion status. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 172 return(status); | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 173 } | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 174 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 175 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 176 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 177 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 178 /* FUNCTION */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 179 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 180 /* PMCE_Delete_Partition_Pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 181 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 182 /* DESCRIPTION */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 183 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 184 /* This function performs error checking on the parameters supplied */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 185 /* to the delete partition pool function. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 186 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 187 /* CALLED BY */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 188 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 189 /* Application */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 190 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 191 /* CALLS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 192 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 193 /* PMC_Delete_Partition_Pool Actual function to delete a */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 194 /* partition pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 195 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 196 /* INPUTS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 197 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 198 /* pool_ptr Partition pool control block */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 199 /* pointer */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 200 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 201 /* OUTPUTS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 202 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 203 /* NU_INVALID_POOL Indicates the supplied pool */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 204 /* pointer is invalid */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 205 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 206 /* HISTORY */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 207 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 208 /* DATE REMARKS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 209 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 210 /* 03-01-1993 Created initial version 1.0 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 211 /* 04-19-1993 Verified version 1.0 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 212 /* 03-01-1994 Modified function interface, */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 213 /* resulting in version 1.1 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 214 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 215 /* 03-18-1994 Verified version 1.1 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 216 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 217 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 218 STATUS PMCE_Delete_Partition_Pool(NU_PARTITION_POOL *pool_ptr) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 219 { | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 220 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 221 PM_PCB *pool; /* Pool control block ptr */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 222 STATUS status; /* Completion status */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 223 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 224 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 225 /* Move input pool pointer into internal pointer. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 226 pool = (PM_PCB *) pool_ptr; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 227 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 228 /* Determine if the partition pool pointer is valid. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 229 if ((pool) && (pool -> pm_id == PM_PARTITION_ID)) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 230 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 231 /* Partition pool pointer is valid, call function to delete it. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 232 status = PMC_Delete_Partition_Pool(pool_ptr); | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 233 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 234 else | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 235 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 236 /* Partition pool pointer is invalid, indicate in completion status. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 237 status = NU_INVALID_POOL; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 238 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 239 /* Return completion status. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 240 return(status); | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 241 } | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 242 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 243 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 244 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 245 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 246 /* FUNCTION */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 247 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 248 /* PMCE_Allocate_Partition */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 249 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 250 /* DESCRIPTION */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 251 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 252 /* This function performs error checking on the parameters supplied */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 253 /* to the allocate partition function. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 254 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 255 /* CALLED BY */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 256 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 257 /* Application */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 258 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 259 /* CALLS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 260 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 261 /* PMC_Allocate_Partition Actual partition allocate */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 262 /* function */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 263 /* TCCE_Suspend_Error Check for a task suspension */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 264 /* error */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 265 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 266 /* INPUTS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 267 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 268 /* pool_ptr Memory partition pool pointer*/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 269 /* return_pointer Pointer to the destination */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 270 /* memory pointer */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 271 /* suspend Suspension option if full */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 272 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 273 /* OUTPUTS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 274 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 275 /* NU_INVALID_POOL Indicates the pool pointer */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 276 /* is invalid */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 277 /* NU_INVALID_POINTER Indicates the return pointer */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 278 /* is NULL */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 279 /* NU_INVALID_SUSPEND Indicates the suspension is */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 280 /* invalid */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 281 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 282 /* HISTORY */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 283 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 284 /* DATE REMARKS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 285 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 286 /* 03-01-1993 Created initial version 1.0 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 287 /* 04-19-1993 Verified version 1.0 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 288 /* 03-01-1994 Modified function interface, */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 289 /* resulting in version 1.1 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 290 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 291 /* 03-18-1994 Verified version 1.1 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 292 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 293 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 294 STATUS PMCE_Allocate_Partition(NU_PARTITION_POOL *pool_ptr, | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 295 VOID **return_pointer, UNSIGNED suspend) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 296 { | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 297 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 298 PM_PCB *pool; /* Pool control block ptr */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 299 STATUS status; /* Completion status */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 300 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 301 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 302 /* Move input pool pointer into internal pointer. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 303 pool = (PM_PCB *) pool_ptr; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 304 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 305 /* Determine if partition pool pointer is invalid. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 306 if (pool == NU_NULL) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 307 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 308 /* Partition pool pointer is invalid, indicate in completion status. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 309 status = NU_INVALID_POOL; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 310 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 311 else if (pool -> pm_id != PM_PARTITION_ID) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 312 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 313 /* Partition pool pointer is invalid, indicate in completion status. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 314 status = NU_INVALID_POOL; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 315 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 316 else if (return_pointer == NU_NULL) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 317 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 318 /* Return pointer is invalid. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 319 status = NU_INVALID_POINTER; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 320 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 321 else if ((suspend) && (TCCE_Suspend_Error())) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 322 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 323 /* Suspension from a non-task thread. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 324 status = NU_INVALID_SUSPEND; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 325 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 326 else | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 327 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 328 /* Parameters are valid, call actual function. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 329 status = PMC_Allocate_Partition(pool_ptr, return_pointer, suspend); | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 330 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 331 /* Return the completion status. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 332 return(status); | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 333 } | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 334 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 335 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 336 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 337 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 338 /* FUNCTION */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 339 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 340 /* PMCE_Deallocate_Partition */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 341 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 342 /* DESCRIPTION */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 343 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 344 /* This function performs error checking on the parameters supplied */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 345 /* to the deallocate partition function. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 346 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 347 /* CALLED BY */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 348 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 349 /* Application */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 350 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 351 /* CALLS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 352 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 353 /* PMC_Deallocate_Partition Deallocate a partition */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 354 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 355 /* INPUTS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 356 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 357 /* partition Pointer to partition memory */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 358 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 359 /* OUTPUTS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 360 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 361 /* NU_INVALID_POINTER Indicates the supplied */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 362 /* partition pointer is NULL, */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 363 /* or otherwise invalid. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 364 /* NU_SUCCESS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 365 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 366 /* HISTORY */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 367 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 368 /* DATE REMARKS */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 369 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 370 /* 03-01-1993 Created initial version 1.0 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 371 /* 04-19-1993 Verified version 1.0 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 372 /* 03-01-1994 Modified function interface, */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 373 /* resulting in version 1.1 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 374 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 375 /* 03-18-1994 Verified version 1.1 */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 376 /* */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 377 /*************************************************************************/ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 378 STATUS PMCE_Deallocate_Partition(VOID *partition) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 379 { | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 380 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 381 PM_PCB *pool; /* Pool pointer */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 382 PM_HEADER *header_ptr; /* Pointer to partition hdr */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 383 STATUS status; /* Completion status */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 384 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 385 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 386 /* Pickup the associated pool's pointer. It is inside the header of | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 387 each partition. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 388 header_ptr = (PM_HEADER *) (((BYTE_PTR) partition) - PM_OVERHEAD); | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 389 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 390 /* Determine if the pointer(s) are NULL. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 391 if ((header_ptr == NU_NULL) || (partition == NU_NULL)) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 392 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 393 /* Partition pointer is invalid. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 394 status = NU_INVALID_POINTER; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 395 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 396 /* Determine if partition pool pointer is invalid. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 397 else if ((pool = header_ptr -> pm_partition_pool) == NU_NULL) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 398 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 399 /* Partition pointer is invalid, indicate in completion status. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 400 status = NU_INVALID_POINTER; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 401 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 402 else if (pool -> pm_id != PM_PARTITION_ID) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 403 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 404 /* Partition pool pointer is invalid, indicate in completion status. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 405 status = NU_INVALID_POINTER; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 406 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 407 else if (header_ptr -> pm_next_available) | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 408 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 409 /* Partition is still linked on the available list- must not be | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 410 allocated. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 411 status = NU_INVALID_POINTER; | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 412 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 413 else | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 414 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 415 /* Parameters are valid, call actual function. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 416 status = PMC_Deallocate_Partition(partition); | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 417 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 418 /* Return the completion status. */ | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 419 return(status); | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 420 } | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 421 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 422 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 423 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 424 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 425 | 
| 
947b1f473960
beginning of nuc-fw
 Michael Spacefalcon <msokolov@ivan.Harhan.ORG> parents: diff
changeset | 426 | 
