Apply linuxbios-rename-other-payload-options.patch
[coreboot.git] / src / mainboard / supermicro / x6dhr_ig2 / Config.lb
1 ##
2 ## Only use the option table in a normal image
3 ##
4 default USE_OPTION_TABLE = !USE_FALLBACK_IMAGE
5
6 ##
7 ## Compute the location and size of where this firmware image
8 ## (linuxBIOS plus bootloader) will live in the boot rom chip.
9 ##
10 if USE_FALLBACK_IMAGE
11         default ROM_SECTION_SIZE   = FALLBACK_SIZE
12         default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE )
13 else
14         default ROM_SECTION_SIZE   = ( ROM_SIZE - FALLBACK_SIZE )
15         default ROM_SECTION_OFFSET = 0
16 end
17
18 ##
19 ## Compute the start location and size size of
20 ## The linuxBIOS bootloader.
21 ##
22 default PAYLOAD_SIZE            = ( ROM_SECTION_SIZE - ROM_IMAGE_SIZE )
23 default CONFIG_ROM_PAYLOAD_START = (0xffffffff - ROM_SIZE + ROM_SECTION_OFFSET + 1)
24
25 ##
26 ## Compute where this copy of linuxBIOS will start in the boot rom
27 ##
28 default _ROMBASE      = ( CONFIG_ROM_PAYLOAD_START + PAYLOAD_SIZE )
29
30 ##
31 ## Compute a range of ROM that can cached to speed up linuxBIOS,
32 ## execution speed.
33 ##
34 ## XIP_ROM_SIZE must be a power of 2.
35 ## XIP_ROM_BASE must be a multiple of XIP_ROM_SIZE
36 ##
37 default XIP_ROM_SIZE=131072
38 default XIP_ROM_BASE = ( _ROMBASE + ROM_IMAGE_SIZE - XIP_ROM_SIZE )
39
40 ##
41 ## Set all of the defaults for an x86 architecture
42 ##
43
44 arch i386 end
45
46 ##
47 ## Build the objects we have code for in this directory.
48 ##
49
50 driver mainboard.o
51 if HAVE_MP_TABLE object mptable.o end
52 if HAVE_PIRQ_TABLE object irq_tables.o end
53 object reset.o
54
55 ##
56 ## Romcc output
57 ##
58 makerule ./failover.E
59         depends "$(MAINBOARD)/failover.c ./romcc" 
60         action "./romcc -fno-simplify-phi -E -O --label-prefix=failover -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/failover.c -o $@"
61 end
62
63 makerule ./failover.inc
64         depends "$(MAINBOARD)/failover.c ./romcc"
65         action "./romcc -fno-simplify-phi -O --label-prefix=failover -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/failover.c -o $@"
66 end
67
68 makerule ./auto.E 
69         depends "$(MAINBOARD)/auto.c option_table.h ./romcc" 
70         action  "./romcc -fno-simplify-phi -E -mcpu=p4 -O2 -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/auto.c -o $@"
71 end
72 makerule ./auto.inc 
73         depends "$(MAINBOARD)/auto.c option_table.h ./romcc"
74         action  "./romcc -fno-simplify-phi -mcpu=p4 -O2 -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/auto.c -o $@"
75 end
76
77 ##
78 ## Build our 16 bit and 32 bit linuxBIOS entry code
79 ##
80 mainboardinit cpu/x86/16bit/entry16.inc
81 mainboardinit cpu/x86/32bit/entry32.inc
82 ldscript /cpu/x86/16bit/entry16.lds
83 ldscript /cpu/x86/32bit/entry32.lds
84
85 ##
86 ## Build our reset vector (This is where linuxBIOS is entered)
87 ##
88 if USE_FALLBACK_IMAGE 
89         mainboardinit cpu/x86/16bit/reset16.inc
90         ldscript /cpu/x86/16bit/reset16.lds
91 else
92         mainboardinit cpu/x86/32bit/reset32.inc
93         ldscript /cpu/x86/32bit/reset32.lds
94 end
95
96 ### Should this be in the northbridge code?
97 mainboardinit arch/i386/lib/cpu_reset.inc
98
99 ##
100 ## Include an id string (For safe flashing)
101 ##
102 mainboardinit arch/i386/lib/id.inc
103 ldscript /arch/i386/lib/id.lds
104
105 ###
106 ### This is the early phase of linuxBIOS startup 
107 ### Things are delicate and we test to see if we should
108 ### failover to another image.
109 ###
110 if USE_FALLBACK_IMAGE
111         ldscript /arch/i386/lib/failover.lds 
112         mainboardinit ./failover.inc
113 end
114
115 ###
116 ### O.k. We aren't just an intermediary anymore!
117 ###
118
119 ##
120 ## Setup RAM
121 ##
122 mainboardinit cpu/x86/fpu/enable_fpu.inc
123 mainboardinit cpu/x86/mmx/enable_mmx.inc
124 mainboardinit cpu/x86/sse/enable_sse.inc
125 mainboardinit ./auto.inc
126 mainboardinit cpu/x86/sse/disable_sse.inc
127 mainboardinit cpu/x86/mmx/disable_mmx.inc
128
129 ##
130 ## Include the secondary Configuration files 
131 ##
132 dir /pc80
133 config chip.h
134
135 chip northbridge/intel/e7520 # mch
136         device pci_domain 0 on 
137                 chip southbridge/intel/i82801er # i82801er
138                         # USB ports
139                         device pci 1d.0 on end
140                         device pci 1d.1 on end
141                         device pci 1d.2 on end 
142                         device pci 1d.3 on end
143                         device pci 1d.7 on end
144                 
145                         # -> Bridge
146                         device pci 1e.0 on end
147                 
148                         # -> ISA
149                         device pci 1f.0 on 
150                                 chip superio/winbond/w83627hf
151                                         device pnp 2e.0 off end
152                                         device pnp 2e.2 on 
153                                                  io 0x60 = 0x3f8
154                                                 irq 0x70 = 4
155                                         end
156                                         device pnp 2e.3 on
157                                                  io 0x60 = 0x2f8
158                                                 irq 0x70 = 3
159                                         end
160                                         device pnp 2e.4 off end
161                                         device pnp 2e.5 off end
162                                         device pnp 2e.6 off end
163                                         device pnp 2e.7 off end
164                                         device pnp 2e.9 off end
165                                         device pnp 2e.a on  end
166                                         device pnp 2e.b off end
167                                 end
168                         end
169                         # -> IDE
170                         device pci 1f.1 on end
171                         # -> SATA 
172                         device pci 1f.2 on end
173                         device pci 1f.3 on end
174
175                         register "pirq_a_d" = "0x0b070a05"
176                         register "pirq_e_h" = "0x0a808080"
177                 end
178                 device pci 00.0 on end 
179                 device pci 00.1 on end
180                 device pci 01.0 on end 
181                 device pci 02.0 on 
182                         chip southbridge/intel/pxhd # pxhd1
183                                 # Bus bridges and ioapics usually bus 1
184                                 device pci 0.0 on 
185                                 # On board gig e1000
186                                         chip drivers/generic/generic 
187                                                 device pci 03.0 on end
188                                                 device pci 03.1 on end
189                                         end
190                                 end
191                                 device pci 0.1 on end
192                                 device pci 0.2 on end
193                                 device pci 0.3 on end
194                         end
195                 end
196                 device pci 04.0 on end
197                 device pci 06.0 on end
198         end
199         device apic_cluster 0 on
200                 chip cpu/intel/socket_mPGA604_800Mhz # cpu 0
201                         device apic 0 on end
202                 end
203                 chip cpu/intel/socket_mPGA604_800Mhz # cpu 1
204                         device apic 6 on end
205                 end
206         end
207         register "intrline" = "0x00070105"
208 end
209