source: trunk/softs/tsar_boot/README.txt @ 311

Last change on this file since 311 was 302, checked in by cfuguet, 12 years ago

Introducing IRQ_PER_PROC constant in the tsar boot loader
(pre-loader).
This constant is used to know how many XICU irq outputs
are connected to each processor.

i.e.

IRQ_PER_PROC = 3
NPROCS=2

xicu.irq_out[0] -> proc0 xicu.irq_out[3] -> proc1
xicu.irq_out[1] -> proc0 xicu.irq_out[4] -> proc1
xicu.irq_out[2] -> proc0 xicu.irq_out[5] -> proc1

This change the way the mailboxes for each processor
are calculated in the reset.S file.

File size: 2.3 KB
Line 
1TSAR BOOT LOADER
2
3Files:
4===============================================================================
5src/        Source files
6            The entry point of this boot loader is the file reset.S
7
8include/    Header files
9
10conf/       Platform specific files and ldscript.
11             For each platform, we must define a new directory.
12
13      --->  defs_platform.h:
14
15             This file is mandatory. This file defines the
16             NB_PROCS per cluster, the NB_CLUSTERS and the base address of
17             the TTY, IOC and XICU devices.
18             It also defines the IRQ_PER_PROC constant. This constant is used
19             to know how many XICU irq outputs are connected to each processor.
20
21      --->  platform_soclib.dts:
22
23             Device tree file. It is mandatory if compiling
24             for a SOCLIB platform. If the application to execute does not use
25             a device tree file, create an empty one.
26
27      --->  platform_fpga.dts:
28             Device tree file. It is mandatory if compiling
29             for a FPGA platform. If the application to execute does not use
30             a device tree file, create an empty one.
31
32      --->  ldscript:
33             LD script defining the segments of this boot loader.
34             We define two segments:
35                seg_stack_base: Base address of the stack used by processor 0
36                during the boot process.
37
38                seg_boot_base: Base address of the code and data defined for
39                this loader
40           
41Makefile    Makefile for compile the boot loader.
42            Arguments to pass:
43
44             ---> PLATFORM_DIR=conf/<platform_dir>
45   
46                   Defines the directory where to find the plateform specific
47                   files
48
49             ---> SOCLIB=1
50
51                   If using SOCLIB, define this flag to use the SOCLIB device
52                   drivers
53
54             ---> SYSCLK_FREQ=<value hz>
55
56                   If not SOCLIB platform, this flag allows us to choose the
57                   CLK frequency used in the hardware platform (i.e. FPGA).
58                   This information is used to configurate the SPI device
59                   which allow us to drive a SD card device.
60
61              i.e. make PLATFORM_DIR=conf/<platform_dir> SYSCLK_FREQ=50000000
62                   make PLATFORM_DIR=conf/<platform_dir> SOCLIB=1
Note: See TracBrowser for help on using the repository browser.