This patch unifies the socket_mPGA604_800Mhz and socket_mPGA604_533Mhz to a
[coreboot.git] / src / mainboard / intel / xe7501devkit / Config.lb
1 ##################################################################
2 ## BEGIN BOILERPLATE - DO NOT EDIT
3 ##
4 ## Compute the location and size of where this firmware image
5 ## (coreboot plus payload) will live in the boot rom chip.
6 ##
7 if USE_FALLBACK_IMAGE
8 # The fallback image uses FALLBACK_SIZE bytes at the end of the ROM
9
10         default ROM_SECTION_SIZE   = FALLBACK_SIZE
11         default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE )
12
13 else
14 # The normal image goes at the beginning of the coreboot ROM region
15 # and uses all the remaining space
16
17         default ROM_SECTION_SIZE   = ( ROM_SIZE - FALLBACK_SIZE )
18         default ROM_SECTION_OFFSET = 0
19 end
20
21 ##
22 ## Compute where this copy of coreboot will start in the boot rom
23 ##
24 default _ROMBASE      = ( CONFIG_ROM_PAYLOAD_START + PAYLOAD_SIZE )
25
26 ##
27 ## Compute a range of ROM that can cached to speed up coreboot,
28 ## execution speed.
29 ##
30 ## XIP_ROM_SIZE must be a power of 2.
31 ## XIP_ROM_BASE must be a multiple of XIP_ROM_SIZE
32 default XIP_ROM_SIZE = 65536
33 default XIP_ROM_BASE = ((( _ROMBASE + ROM_IMAGE_SIZE ) / XIP_ROM_SIZE ) * XIP_ROM_SIZE - XIP_ROM_SIZE )
34
35 ## END BOILERPLATE
36 ##################################################################
37
38 arch i386 end 
39
40 ##
41 ## Build the objects we have code for in this directory.
42 ##
43
44 driver mainboard.o
45 if HAVE_MP_TABLE                object mptable.o         end
46 if HAVE_PIRQ_TABLE              object irq_tables.o      end
47 if HAVE_ACPI_TABLES     object acpi_tables.o end
48 object reset.o
49
50 # Include the VGA option ROM, but only if we're compiled to use it
51 if CONFIG_PCI_ROM_RUN
52         if CONFIG_CONSOLE_VGA   
53                 object vgarom.S
54         else
55                 object no_vgarom.S
56         end
57 else
58         object no_vgarom.S
59 end
60
61 ##
62 ## Romcc output
63 ##
64 makerule ./failover.E
65         depends "$(MAINBOARD)/failover.c ../romcc"
66         action "../romcc -E -O --label-prefix=failover -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/failover.c -o $@"
67 end
68
69 makerule ./failover.inc
70         depends "$(MAINBOARD)/failover.c ../romcc"
71         action "../romcc    -O --label-prefix=failover -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/failover.c -o $@"
72 end
73
74 makerule ./auto.E
75         depends "$(MAINBOARD)/auto.c option_table.h ../romcc"
76         action  "../romcc -E -mcpu=p4 -O2 -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/auto.c -o $@"
77 end
78 makerule ./auto.inc
79         depends "$(MAINBOARD)/auto.c option_table.h ../romcc"
80         action  "../romcc    -mcpu=p4 -O2 -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/auto.c -o $@"
81 end
82
83 ##
84 ## Build our 16 bit and 32 bit coreboot entry code
85 ##
86 mainboardinit cpu/x86/16bit/entry16.inc
87 mainboardinit cpu/x86/32bit/entry32.inc
88 ldscript /cpu/x86/16bit/entry16.lds
89 ldscript /cpu/x86/32bit/entry32.lds
90
91 ##
92 ## Build our reset vector (This is where coreboot is entered)
93 ##
94 if HAVE_FALLBACK_BOOT
95     if USE_FALLBACK_IMAGE 
96             mainboardinit cpu/x86/16bit/reset16.inc 
97             ldscript /cpu/x86/16bit/reset16.lds
98     else
99             mainboardinit cpu/x86/32bit/reset32.inc 
100             ldscript /cpu/x86/32bit/reset32.lds 
101     end
102 else
103         mainboardinit cpu/x86/16bit/reset16.inc 
104         ldscript /cpu/x86/16bit/reset16.lds
105 end
106
107 ### Should this be in the northbridge code?
108 mainboardinit arch/i386/lib/cpu_reset.inc
109
110 ##
111 ## Include an id string (For safe flashing)
112 ##
113 mainboardinit arch/i386/lib/id.inc
114 ldscript /arch/i386/lib/id.lds
115
116 ###
117 ### This is the early phase of coreboot startup 
118 ### Things are delicate and we test to see if we should
119 ### failover to another image.
120 ###
121 if USE_FALLBACK_IMAGE
122         ldscript /arch/i386/lib/failover.lds 
123         mainboardinit ./failover.inc
124 end
125
126 ###
127 ### O.k. We aren't just an intermediary anymore!
128 ###
129
130 ##
131 ## Setup RAM
132 ##
133 mainboardinit cpu/x86/fpu/enable_fpu.inc
134 mainboardinit cpu/x86/mmx/enable_mmx.inc
135 mainboardinit cpu/x86/sse/enable_sse.inc
136 mainboardinit ./auto.inc
137 mainboardinit cpu/x86/sse/disable_sse.inc
138 mainboardinit cpu/x86/mmx/disable_mmx.inc
139
140 ##
141 ## Include the secondary Configuration files 
142 ##
143 dir /pc80
144
145 config chip.h
146
147 # based on sample config for tyan/s2735
148 chip northbridge/intel/e7501
149         device pci_domain 0 on
150                 device pci 0.0 on end # Chipset host controller
151                 device pci 0.1 on end # Host RASUM controller
152                 device pci 2.0 on # Hub interface B
153                         chip southbridge/intel/i82870 # P64H2
154                                 device pci 1c.0 on end # IOAPIC - bus B
155                                 device pci 1d.0 on end # Hub to PCI-B bridge
156                                 device pci 1e.0 on end # IOAPIC - bus A
157                                 device pci 1f.0 on end # Hub to PCI-A bridge
158                         end
159                 end
160                 device pci 3.0 off end # Hub interface C (82808AA connector - disable for now)
161                 device pci 4.0 on # Hub interface D
162                         chip southbridge/intel/i82870 # P64H2
163                                 device pci 1c.0 on end # IOAPIC - bus B
164                                 device pci 1d.0 on end # Hub to PCI-B bridge
165                                 device pci 1e.0 on end # IOAPIC - bus A
166                                 device pci 1f.0 on end # Hub to PCI-A bridge
167                         end
168                 end
169                 device pci 6.0 on end # E7501 Power management registers? (undocumented)
170                 chip southbridge/intel/i82801ca
171                         device pci 1d.0 off end # USB (might not work, Southbridge code needs looking at)
172                         device pci 1d.1 off end # USB (not populated)
173                         device pci 1d.2 off end # USB (not populated)
174                         device pci 1e.0 on # Hub to PCI bridge
175                                 chip drivers/pci/onboard # VGA ROM
176                                         device pci 0.0 on end
177                                 register "rom_address" = "_vgarom_start"
178                                 end
179                         end
180                         device pci 1f.0 on # LPC bridge
181                                 chip superio/smsc/lpc47b272
182                                         device pnp 2e.0 off # Floppy
183                                                 io 0x60 = 0x3f0
184                                                 irq 0x70 = 6
185                                                 drq 0x74 = 2
186                                         end
187                                         device pnp 2e.3 off # Parallel Port
188                                                 io 0x60 = 0x378
189                                                 irq 0x70 = 7
190                                         end
191                                         device pnp 2e.4 on # Com1
192                                                 io 0x60 = 0x3f8
193                                                 irq 0x70 = 4
194                                         end
195                                         device pnp 2e.5 off # Com2
196                                                 io 0x60 = 0x2f8
197                                                 irq 0x70 = 3
198                                         end
199                                         device pnp 2e.7 on # Keyboard
200                                                 io 0x60 = 0x60
201                                                 io 0x62 = 0x64
202                                                 irq 0x70 = 1 # Keyboard interrupt
203                                                 irq 0x72 = 12 # Mouse interrupt
204                                         end
205                                         device pnp 2e.a off end # ACPI
206                                 end
207                         end
208                         device pci 1f.1 on end # IDE
209                         device pci 1f.3 on end # SMBus
210                         device pci 1f.5 off end # AC97 Audio
211                         device pci 1f.6 off end # AC97 Modem
212                 end # SB
213         end # PCI_DOMAIN
214         device apic_cluster 0 on
215                 chip cpu/intel/socket_mPGA604
216                         device apic 0 on end
217                 end
218                 chip cpu/intel/socket_mPGA604
219                         device apic 6 on end
220                 end
221         end
222 end