1/* ********************************************************************* 2 * Broadcom Common Firmware Environment (CFE) 3 * 4 * Main CFE include file File: cfe.h 5 * 6 * This file is the first file included by most CFE modules. It 7 * brings in definitions for the most commonly used internal 8 * routines and data and also makes sure the right configuration 9 * files get included in the correct order. If you need to 10 * bring in additional definitions, put them _after_ this file. 11 * 12 * Author: Mitch Lichtenberg 13 * 14 ********************************************************************* 15 * 16 * Copyright 2000,2001,2002,2003 17 * Broadcom Corporation. All rights reserved. 18 * 19 * This software is furnished under license and may be used and 20 * copied only in accordance with the following terms and 21 * conditions. Subject to these conditions, you may download, 22 * copy, install, use, modify and distribute modified or unmodified 23 * copies of this software in source and/or binary form. No title 24 * or ownership is transferred hereby. 25 * 26 * 1) Any source code used, modified or distributed must reproduce 27 * and retain this copyright notice and list of conditions 28 * as they appear in the source file. 29 * 30 * 2) No right is granted to use any trade name, trademark, or 31 * logo of Broadcom Corporation. The "Broadcom Corporation" 32 * name may not be used to endorse or promote products derived 33 * from this software without the prior written permission of 34 * Broadcom Corporation. 35 * 36 * 3) THIS SOFTWARE IS PROVIDED "AS-IS" AND ANY EXPRESS OR 37 * IMPLIED WARRANTIES, INCLUDING BUT NOT LIMITED TO, ANY IMPLIED 38 * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR 39 * PURPOSE, OR NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT 40 * SHALL BROADCOM BE LIABLE FOR ANY DAMAGES WHATSOEVER, AND IN 41 * PARTICULAR, BROADCOM SHALL NOT BE LIABLE FOR DIRECT, INDIRECT, 42 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 43 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE 44 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 45 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 46 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR 47 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE), EVEN IF ADVISED OF 48 * THE POSSIBILITY OF SUCH DAMAGE. 49 ********************************************************************* */ 50 51#ifndef _CFE_H 52#define _CFE_H 53 54/* ********************************************************************* 55 * Version number 56 ********************************************************************* */ 57 58#ifdef CFE_VER_PFX 59#define CFE_VER_PREFIX CFE_VER_PFX 60#else 61#define CFE_VER_PREFIX "" 62#endif 63#define CFE_VER_MAJOR CFE_VER_MAJ 64#define CFE_VER_MINOR CFE_VER_MIN 65#define CFE_VER_BUILD CFE_VER_ECO 66 67/* ********************************************************************* 68 * Global include files (stuff we always use) 69 ********************************************************************* */ 70 71#include "cpu_config.h" /* CPU configuration, needed for stuff below */ 72#include "lib_types.h" /* basic types */ 73#include "lib_queue.h" /* queues, lists */ 74#include "lib_string.h" /* string mangling */ 75#include "lib_malloc.h" /* memory allocator */ 76#include "lib_printf.h" /* printf and sprintf, etc. */ 77#include "lib_hssubr.h" /* hyperspace routines for 64-bit archs */ 78 79/* ********************************************************************* 80 * Common CFE functions used by most things 81 ********************************************************************* */ 82 83#include "cfe_iocb.h" /* External APIs */ 84#include "cfe_device.h" /* Device structures */ 85#include "cfe_ioctl.h" /* IOCTL commands to devices */ 86#include "cfe_error.h" /* master error code list */ 87#include "cfe_console.h" /* console input/output */ 88#include "cfe_timer.h" /* timer/polling routines */ 89#include "cfe_devfuncs.h" /* internally callable CFE API */ 90#include "cfe_cache.h" /* Cache-related stuff */ 91 92/* ********************************************************************* 93 * Board and CPU specific include files 94 ********************************************************************* */ 95 96#include "bsp_config.h" /* board configuration */ 97#include "endian.h" /* which way endian */ 98#include "addrspace.h" /* Address space conversions */ 99#include "cfe_main.h" /* top-level board stuff */ 100 101#endif 102