]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - ipc/ipcdev.git/blob - qnx/src/ipc3x_dev/ti/syslink/inc/knl/Dm8168M3DssHal.h
Moved files from the ipc3x_dev branch in syslink_qnx repository into direct
[ipc/ipcdev.git] / qnx / src / ipc3x_dev / ti / syslink / inc / knl / Dm8168M3DssHal.h
1 /**
2  *  @file   Dm8168M3DssHal.h
3  *
4  *  @brief      Top-level header file for DM8168VPSSM3 Hardware Abstraction Layer.
5  *
6  *              This module is responsible for handling device-specific
7  *              operations.
8  *              The implementation is specific to DM8168VPSSM3.
9  *
10  *
11  */
12 /*
13  *  ============================================================================
14  *
15  *  Copyright (c) 2008-2012, Texas Instruments Incorporated
16  *
17  *  Redistribution and use in source and binary forms, with or without
18  *  modification, are permitted provided that the following conditions
19  *  are met:
20  *
21  *  *  Redistributions of source code must retain the above copyright
22  *     notice, this list of conditions and the following disclaimer.
23  *
24  *  *  Redistributions in binary form must reproduce the above copyright
25  *     notice, this list of conditions and the following disclaimer in the
26  *     documentation and/or other materials provided with the distribution.
27  *
28  *  *  Neither the name of Texas Instruments Incorporated nor the names of
29  *     its contributors may be used to endorse or promote products derived
30  *     from this software without specific prior written permission.
31  *
32  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
33  *  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
34  *  THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
35  *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
36  *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
37  *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
38  *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
39  *  OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
40  *  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
41  *  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
42  *  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
43  *  Contact information for paper mail:
44  *  Texas Instruments
45  *  Post Office Box 655303
46  *  Dallas, Texas 75265
47  *  Contact information:
48  *  http://www-k.ext.ti.com/sc/technical-support/product-information-centers.htm?
49  *  DCMP=TIHomeTracking&HQS=Other+OT+home_d_contact
50  *  ============================================================================
51  *
52  */
55 #ifndef DM8168VPSSM3HAL_H_0xbbed
56 #define DM8168VPSSM3HAL_H_0xbbed
59 /* Module level headers */
60 #include <_ProcDefs.h>
61 #include <Dm8168M3DssHalMmu.h>
64 #if defined (__cplusplus)
65 extern "C" {
66 #endif
69 /* =============================================================================
70  *  Macros and types
71  *  See _ProcDefs.h
72  * =============================================================================
73  */
74 /*!
75  *  @brief  Register access method.
76  */
77 #define REG(x)              *((volatile UInt32 *) (x))
79 /*!
80  *  @brief  Hardware Abstraction object.
81  */
82 typedef struct DM8168VPSSM3_HalObject_tag {
83     UInt32                generalCtrlBase;
84     /*!< Virtual base address of the General Control module. */
85     UInt32                prcmBase;
86     /*!< Virtual base address of the General Control module. */
87     UInt32                mmuBase;
88     /*!< Base address of the MMU module. */
89     UInt32                procId;
90     /*!< Processor ID. */
91     DM8168VPSSM3_HalMmuObject mmuObj;
92     /*!< MMU abstraction. */
93 } DM8168VPSSM3_HalObject;
96 /* =============================================================================
97  *  APIs
98  * =============================================================================
99  */
100 /* Function to initialize the HAL object */
101 Int DM8168VPSSM3_halInit (Ptr * halObj, Ptr params);
103 /* Function to finalize the HAL object */
104 Int DM8168VPSSM3_halExit (Ptr halObj);
107 #if defined (__cplusplus)
109 #endif /* defined (__cplusplus) */
111 #endif /* Dm8168M3DssHal_H_0xbbec */