source: trunk/softs/tsar_boot/include/defs.h @ 941

Last change on this file since 941 was 804, checked in by cfuguet, 10 years ago

tsar_boot: using RESET_ADDRESS as preloader base address

  • The preloader base address is defined by RESET_ADDRESS instead of SEG_ROM_BASE.
  • Some platforms, like tsar_generic_leti, use the preloader but they do not have a ROM. Therefore the preloader is loaded during initialization in RAM.
File size: 1.6 KB
RevLine 
[758]1#include <hard_config.h>
[292]2
[758]3#define RESET_VERSION         0x00010003
4#define RESET_STACK_SIZE      0x2000
5#define RESET_LOADER_LBA      2
6#define RESET_PHDR_ARRAY_SIZE 16
[292]7
[758]8#ifndef RESET_DEBUG
9#   define RESET_DEBUG        0
10#endif
[292]11
[758]12#ifndef RESET_HARD_CC
13#   define RESET_HARD_CC      0
14#endif
[701]15
[758]16/**
17 * Default clock frequency (by default is 25 MHz for FPGA dev card DE2-115)
18 */
19#ifndef RESET_SYSTEM_CLK
20#   define RESET_SYSTEM_CLK   25000 /* KHz   */
[705]21#endif
22
[758]23/*
24 * TSAR platform independent hardware parameters
25 */
[701]26
[758]27#define BLOCK_SIZE            512   /* bytes */
28#define CACHE_LINE_SIZE       64    /* bytes */
29
30/*
31 * Verify that all used constants have been defined in the hard_config.h file
32 */
33
[801]34#ifndef P_WIDTH
35#   error "P_WIDTH constant must be defined in the hard_config.h file"
[758]36#endif
37
38#ifndef IRQ_PER_PROCESSOR
39#   error "IRQ_PER_PROCESSOR constant must be defined in hard_config.h file"
40#endif
41
42#ifndef SEG_XCU_BASE
43#   error "SEG_XCU_BASE constant must be defined in the hard_config.h file"
44#endif
45
[804]46#ifndef RESET_ADDRESS
47#   error "RESET_ADDRESS constant must be defined in the hard_config.h file"
[758]48#endif
49
50/*
51 * IO cluster constants
52 */
53
54#ifndef USE_IOB
55#   error "USE_IOB constant must be defined in the hard_config.h file"
56#endif
57
58#if !defined(X_IO) || !defined(Y_IO)
59#   error "X_IO and Y_IO constants must be defined in the hard_config.h file"
60#endif
61
62#if !defined(X_WIDTH) || !defined(Y_WIDTH)
63#   error "X_WIDTH and Y_WIDTH constants must be defined in the hard_config.h "
64          "file"
65#endif
66
67#define CLUSTER_IO  ((X_IO << Y_WIDTH) | Y_IO)
68
69/*
70 * vim: tabstop=4 : softtabstop=4 : shiftwidth=4 : expandtab
71 */
Note: See TracBrowser for help on using the repository browser.