1296177Sjhibbits/******************************************************************************
2296177Sjhibbits
3296177Sjhibbits � 1995-2003, 2004, 2005-2011 Freescale Semiconductor, Inc.
4296177Sjhibbits All rights reserved.
5296177Sjhibbits
6296177Sjhibbits This is proprietary source code of Freescale Semiconductor Inc.,
7296177Sjhibbits and its use is subject to the NetComm Device Drivers EULA.
8296177Sjhibbits The copyright notice above does not evidence any actual or intended
9296177Sjhibbits publication of such source code.
10296177Sjhibbits
11296177Sjhibbits ALTERNATIVELY, redistribution and use in source and binary forms, with
12296177Sjhibbits or without modification, are permitted provided that the following
13296177Sjhibbits conditions are met:
14296177Sjhibbits     * Redistributions of source code must retain the above copyright
15296177Sjhibbits       notice, this list of conditions and the following disclaimer.
16296177Sjhibbits     * Redistributions in binary form must reproduce the above copyright
17296177Sjhibbits       notice, this list of conditions and the following disclaimer in the
18296177Sjhibbits       documentation and/or other materials provided with the distribution.
19296177Sjhibbits     * Neither the name of Freescale Semiconductor nor the
20296177Sjhibbits       names of its contributors may be used to endorse or promote products
21296177Sjhibbits       derived from this software without specific prior written permission.
22296177Sjhibbits
23296177Sjhibbits THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
24296177Sjhibbits EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
25296177Sjhibbits WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26296177Sjhibbits DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
27296177Sjhibbits DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
28296177Sjhibbits (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29296177Sjhibbits LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
30296177Sjhibbits ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31296177Sjhibbits (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32296177Sjhibbits SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33296177Sjhibbits *
34296177Sjhibbits
35296177Sjhibbits **************************************************************************/
36296177Sjhibbits#ifndef __MEM_H
37296177Sjhibbits#define __MEM_H
38296177Sjhibbits
39296177Sjhibbits#include "error_ext.h"
40296177Sjhibbits#include "std_ext.h"
41296177Sjhibbits#include "list_ext.h"
42296177Sjhibbits
43296177Sjhibbits
44296177Sjhibbits#define __ERR_MODULE__  MODULE_MEM
45296177Sjhibbits
46296177Sjhibbits
47296177Sjhibbits
48296177Sjhibbits
49296177Sjhibbits/**************************************************************************//**
50296177Sjhibbits @Description   Memory allocation owner.
51296177Sjhibbits*//***************************************************************************/
52296177Sjhibbitstypedef enum e_MemAllocOwner
53296177Sjhibbits{
54296177Sjhibbits    e_MEM_ALLOC_OWNER_LOCAL,
55296177Sjhibbits    e_MEM_ALLOC_OWNER_LOCAL_SMART,
56296177Sjhibbits    e_MEM_ALLOC_OWNER_EXTERNAL
57296177Sjhibbits} e_MemAllocOwner;
58296177Sjhibbits
59296177Sjhibbits
60296177Sjhibbits#ifdef DEBUG_MEM_LEAKS
61296177Sjhibbits
62296177Sjhibbits/**************************************************************************//**
63296177Sjhibbits @Description   MEM block information for leaks detection.
64296177Sjhibbits*//***************************************************************************/
65296177Sjhibbitstypedef struct t_MemDbg
66296177Sjhibbits{
67296177Sjhibbits    uintptr_t   ownerAddress;
68296177Sjhibbits
69296177Sjhibbits} t_MemDbg;
70296177Sjhibbits
71296177Sjhibbits#endif /* DEBUG_MEM_LEAKS */
72296177Sjhibbits
73296177Sjhibbits
74296177Sjhibbits#endif /* __MEM_H */
75