RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
bsp.h
Go to the documentation of this file.
1
9/*
10 * derived from helas403/include/bsp.h:
11 * Id: bsp.h,v 1.4 2001/06/18 17:01:48 joel Exp
12 * Author: Thomas Doerfler <td@imd.m.isar.de>
13 * IMD Ingenieurbuero fuer Microcomputertechnik
14 *
15 * COPYRIGHT (c) 1998 by IMD
16 *
17 * Changes from IMD are covered by the original distributions terms.
18 * This file has been derived from the papyrus BSP.
19 *
20 * Author: Andrew Bray <andy@i-cubed.co.uk>
21 *
22 * COPYRIGHT (c) 1995 by i-cubed ltd.
23 *
24 * To anyone who acknowledges that this file is provided "AS IS"
25 * without any express or implied warranty:
26 * permission to use, copy, modify, and distribute this file
27 * for any purpose is hereby granted without fee, provided that
28 * the above copyright notice and this notice appears in all
29 * copies, and that the name of i-cubed limited not be used in
30 * advertising or publicity pertaining to distribution of the
31 * software without specific, written prior permission.
32 * i-cubed limited makes no representations about the suitability
33 * of this software for any purpose.
34 *
35 * Derived from c/src/lib/libbsp/no_cpu/no_bsp/include/bsp.h
36 *
37 * COPYRIGHT (c) 1989-1999.
38 * On-Line Applications Research Corporation (OAR).
39 *
40 * The license and distribution terms for this file may be
41 * found in the file LICENSE in this distribution or at
42 * http://www.rtems.org/license/LICENSE.
43 *
44 */
45
46#ifndef LIBBSP_POWERPC_VIRTEX5_BSP_H
47#define LIBBSP_POWERPC_VIRTEX5_BSP_H
48
59#include <bspopts.h>
60
61/*
62 * confdefs.h overrides for this BSP:
63 * - Interrupt stack space is not minimum if defined.
64 */
65#define BSP_INTERRUPT_STACK_SIZE (16 * 1024)
66
67#ifdef ASM
68/* Definition of where to store registers in alignment handler */
69#define ALIGN_REGS 0x0140
70
71#else
72#include <rtems.h>
74
75#ifdef __cplusplus
76extern "C" {
77#endif
78
79/*
80 * Bus Frequency
81 */
82extern unsigned int BSP_bus_frequency;
83/*
84 * Processor Clock Frequency
85 */
86extern unsigned int BSP_processor_frequency;
87/*
88 * Time base divisior (how many tick for 1 second).
89 */
90extern unsigned int BSP_time_base_divisor;
91
92/*
93 * Macro used by shared MPC6xx timer driver
94 */
95#define BSP_Convert_decrementer( _value ) \
96 ((unsigned long long) ((((unsigned long long)BSP_time_base_divisor) * 1000000ULL) /((unsigned long long) BSP_bus_frequency)) * ((unsigned long long) (_value)))
97
98/*
99 * Interfaces to required Clock Driver support methods
100 */
101int BSP_disconnect_clock_handler(void);
103
104/*
105 * Prototypes for BSP methods shared across file boundaries
106 */
107void zero_bss(void);
108
109#endif /* ASM */
110
111void BSP_ask_for_reset(void);
112
113#ifdef __cplusplus
114}
115#endif
116
119#endif
DEFAULT_INITIAL_EXTENSION Support.
int BSP_connect_clock_handler(void)
Clock Tick Device Driver.
Definition: p_clock.c:37