Back to home page

LXR

 
 

    


File indexing completed on 2025-05-11 08:23:59

0001 /**
0002  * @file
0003  *
0004  * @ingroupRTEMSBSPsPowerPCVirtex5
0005  *
0006  * @brief Global BSP definitions.
0007  */
0008 
0009 /*
0010  * derived from helas403/include/bsp.h:
0011  *  Id: bsp.h,v 1.4 2001/06/18 17:01:48 joel Exp
0012  *  Author: Thomas Doerfler <td@imd.m.isar.de>
0013  *              IMD Ingenieurbuero fuer Microcomputertechnik
0014  *
0015  *  Copyright (c) 1998 IMD Ingenieurbuero fuer Microcomputertechnik
0016  *
0017  *  Changes from IMD are covered by the original distributions terms.
0018  *  This file has been derived from the papyrus BSP.
0019  *
0020  *  Author: Andrew Bray <andy@i-cubed.co.uk>
0021  *
0022  *  COPYRIGHT (c) 1995 by i-cubed ltd.
0023  *
0024  *  To anyone who acknowledges that this file is provided "AS IS"
0025  *  without any express or implied warranty:
0026  *      permission to use, copy, modify, and distribute this file
0027  *      for any purpose is hereby granted without fee, provided that
0028  *      the above copyright notice and this notice appears in all
0029  *      copies, and that the name of i-cubed limited not be used in
0030  *      advertising or publicity pertaining to distribution of the
0031  *      software without specific, written prior permission.
0032  *      i-cubed limited makes no representations about the suitability
0033  *      of this software for any purpose.
0034  *
0035  *  Derived from c/src/lib/libbsp/no_cpu/no_bsp/include/bsp.h
0036  *
0037  *  COPYRIGHT (c) 1989-1999.
0038  *  On-Line Applications Research Corporation (OAR).
0039  *
0040  *  The license and distribution terms for this file may be
0041  *  found in the file LICENSE in this distribution or at
0042  *  http://www.rtems.org/license/LICENSE.
0043  *
0044  */
0045 
0046 #ifndef LIBBSP_POWERPC_VIRTEX5_BSP_H
0047 #define LIBBSP_POWERPC_VIRTEX5_BSP_H
0048 
0049 /**
0050  * @defgroup RTEMSBSPsPowerPCVirtex5 Xilinx Virtex-5
0051  *
0052  * @ingroup RTEMSBSPsPowerPC
0053  *
0054  * @brief Xilinx Virtex-5 Board Support Package.
0055  *
0056  * @{
0057  */
0058 
0059 #include <bspopts.h>
0060 
0061 /*
0062  *  confdefs.h overrides for this BSP:
0063  *   - Interrupt stack space is not minimum if defined.
0064  */
0065 #define BSP_INTERRUPT_STACK_SIZE  (16 * 1024)
0066 
0067 #ifdef ASM
0068 /* Definition of where to store registers in alignment handler */
0069 #define ALIGN_REGS 0x0140
0070 
0071 #else
0072 #include <rtems.h>
0073 #include <bsp/default-initial-extension.h>
0074 
0075 #ifdef __cplusplus
0076 extern "C" {
0077 #endif
0078 
0079 /*
0080  * Bus Frequency
0081  */
0082 extern unsigned int BSP_bus_frequency;
0083 /*
0084  * Processor Clock Frequency
0085  */
0086 extern unsigned int BSP_processor_frequency;
0087 /*
0088  * Time base divisior (how many tick for 1 second).
0089  */
0090 extern unsigned int BSP_time_base_divisor;
0091 
0092 /*
0093  * Macro used by shared MPC6xx timer driver
0094  */
0095 #define BSP_Convert_decrementer( _value ) \
0096   ((unsigned long long) ((((unsigned long long)BSP_time_base_divisor) * 1000000ULL) /((unsigned long long) BSP_bus_frequency)) * ((unsigned long long) (_value)))
0097 
0098 /*
0099  *  Interfaces to required Clock Driver support methods
0100  */
0101 int BSP_disconnect_clock_handler(void);
0102 int BSP_connect_clock_handler(void);
0103 
0104 /*
0105  * Prototypes for BSP methods shared across file boundaries
0106  */
0107 void zero_bss(void);
0108 
0109 #endif /* ASM */
0110 
0111 #ifdef __cplusplus
0112 }
0113 #endif
0114 
0115 /** @} */
0116 
0117 #endif