diff options
Diffstat (limited to 'Documentation/mips/GT64120.README')
-rw-r--r-- | Documentation/mips/GT64120.README | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/Documentation/mips/GT64120.README b/Documentation/mips/GT64120.README new file mode 100644 index 000000000000..2d0eec91dc59 --- /dev/null +++ b/Documentation/mips/GT64120.README | |||
@@ -0,0 +1,65 @@ | |||
1 | README for arch/mips/gt64120 directory and subdirectories | ||
2 | |||
3 | Jun Sun, jsun@mvista.com or jsun@junsun.net | ||
4 | 01/27, 2001 | ||
5 | |||
6 | MOTIVATION | ||
7 | ---------- | ||
8 | |||
9 | Many MIPS boards share the same system controller (or CPU companian chip), | ||
10 | such as GT-64120. It is highly desirable to let these boards share | ||
11 | the same controller code instead of duplicating them. | ||
12 | |||
13 | This directory is meant to hold all MIPS boards that use GT-64120 or GT-64120A. | ||
14 | |||
15 | |||
16 | HOW TO ADD A BOARD | ||
17 | ------------------ | ||
18 | |||
19 | . Create a subdirectory include/asm/gt64120/<board>. | ||
20 | |||
21 | . Create a file called gt64120_dep.h under that directory. | ||
22 | |||
23 | . Modify include/asm/gt64120/gt64120.h file to include the new gt64120_dep.h | ||
24 | based on config options. The board-dep section is at the end of | ||
25 | include/asm/gt64120/gt64120.h file. There you can find all required | ||
26 | definitions include/asm/gt64120/<board>/gt64120_dep.h file must supply. | ||
27 | |||
28 | . Create a subdirectory arch/mips/gt64120/<board> directory to hold | ||
29 | board specific routines. | ||
30 | |||
31 | . The GT-64120 common code is supplied under arch/mips/gt64120/common directory. | ||
32 | It includes: | ||
33 | 1) arch/mips/gt64120/pci.c - | ||
34 | common PCI routine, include the top-level pcibios_init() | ||
35 | 2) arch/mips/gt64120/irq.c - | ||
36 | common IRQ routine, include the top-level do_IRQ() | ||
37 | [This part really belongs to arch/mips/kernel. jsun] | ||
38 | 3) arch/mips/gt64120/gt_irq.c - | ||
39 | common IRQ routines for GT-64120 chip. Currently it only handles | ||
40 | the timer interrupt. | ||
41 | |||
42 | . Board-specific routines are supplied under arch/mips/gt64120/<board> dir. | ||
43 | 1) arch/mips/gt64120/<board>/pci.c - it provides bus fixup routine | ||
44 | 2) arch/mips/gt64120/<board>/irq.c - it provides enable/disable irqs | ||
45 | and board irq setup routine (irq_setup) | ||
46 | 3) arch/mips/gt64120/<board>/int-handler.S - | ||
47 | The first-level interrupt dispatching routine. | ||
48 | 4) a bunch of other "normal" stuff (setup, prom, dbg_io, reset, etc) | ||
49 | |||
50 | . Follow other "normal" procedure to modify configuration files, etc. | ||
51 | |||
52 | |||
53 | TO-DO LIST | ||
54 | ---------- | ||
55 | |||
56 | . Expand arch/mips/gt64120/gt_irq.c to handle all GT-64120 interrupts. | ||
57 | We probably need to introduce GT_IRQ_BASE in board-dep header file, | ||
58 | which is used the starting irq_nr for all GT irqs. | ||
59 | |||
60 | A function, gt64120_handle_irq(), will be added so that the first-level | ||
61 | irq dispatcher will call this function if it detects an interrupt | ||
62 | from GT-64120. | ||
63 | |||
64 | . More support for GT-64120 PCI features (2nd PCI bus, perhaps) | ||
65 | |||