2 ## Only use the option table in a normal image
4 default USE_OPTION_TABLE = !USE_FALLBACK_IMAGE
7 ## Compute the location and size of where this firmware image
8 ## (linuxBIOS plus bootloader) will live in the boot rom chip.
11 default ROM_SECTION_SIZE = FALLBACK_SIZE
12 default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE )
14 default ROM_SECTION_SIZE = ( ROM_SIZE - FALLBACK_SIZE )
15 default ROM_SECTION_OFFSET = 0
19 ## Compute the start location and size size of
20 ## The linuxBIOS bootloader.
22 default PAYLOAD_SIZE = ( ROM_SECTION_SIZE - ROM_IMAGE_SIZE )
23 default CONFIG_ROM_PAYLOAD_START = (0xffffffff - ROM_SIZE + ROM_SECTION_OFFSET + 1)
26 ## Compute where this copy of linuxBIOS will start in the boot rom
28 default _ROMBASE = ( CONFIG_ROM_PAYLOAD_START + PAYLOAD_SIZE )
31 ## Compute a range of ROM that can cached to speed up linuxBIOS,
34 ## XIP_ROM_SIZE must be a power of 2.
35 ## XIP_ROM_BASE must be a multiple of XIP_ROM_SIZE
37 default XIP_ROM_SIZE=131072
38 default XIP_ROM_BASE = ( _ROMBASE + ROM_IMAGE_SIZE - XIP_ROM_SIZE )
41 ## Set all of the defaults for an x86 architecture
47 ## Build the objects we have code for in this directory.
51 if HAVE_MP_TABLE object mptable.o end
52 if HAVE_PIRQ_TABLE object irq_tables.o end
59 depends "$(MAINBOARD)/failover.c ./romcc"
60 action "./romcc -E -O --label-prefix=failover -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/failover.c -o $@"
63 makerule ./failover.inc
64 depends "$(MAINBOARD)/failover.c ./romcc"
65 action "./romcc -O --label-prefix=failover -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/failover.c -o $@"
69 depends "$(MAINBOARD)/auto.c option_table.h ./romcc"
70 action "./romcc -E -mcpu=p4 -O2 -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/auto.c -o $@"
73 depends "$(MAINBOARD)/auto.c option_table.h ./romcc"
74 action "./romcc -mcpu=p4 -fno-simplify-phi -O2 -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/auto.c -o $@"
78 ## Build our 16 bit and 32 bit linuxBIOS entry code
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
86 ## Build our reset vector (This is where linuxBIOS is entered)
89 mainboardinit cpu/x86/16bit/reset16.inc
90 ldscript /cpu/x86/16bit/reset16.lds
92 mainboardinit cpu/x86/32bit/reset32.inc
93 ldscript /cpu/x86/32bit/reset32.lds
96 ### Should this be in the northbridge code?
97 mainboardinit arch/i386/lib/cpu_reset.inc
100 ## Include an id string (For safe flashing)
102 mainboardinit arch/i386/lib/id.inc
103 ldscript /arch/i386/lib/id.lds
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.
110 if USE_FALLBACK_IMAGE
111 ldscript /arch/i386/lib/failover.lds
112 mainboardinit ./failover.inc
116 ### O.k. We aren't just an intermediary anymore!
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
130 ## Include the secondary Configuration files
135 chip northbridge/intel/e7520
136 device pci_domain 0 on
137 device pci 00.0 on end
138 device pci 00.1 on end
139 device pci 01.0 on end
141 chip southbridge/intel/pxhd # pxhd1
142 device pci 00.0 on end
143 device pci 00.1 on end
145 chip drivers/generic/generic
146 device pci 04.0 on end
147 device pci 04.1 on end
150 device pci 00.3 on end
153 device pci 06.0 on end
154 chip southbridge/intel/i82801er # i82801er
155 device pci 1d.0 on end
156 device pci 1d.1 on end
157 device pci 1d.2 on end
158 device pci 1d.3 off end
159 device pci 1d.7 on end
161 chip drivers/ati/ragexl
162 device pci 0c.0 on end
166 chip superio/nsc/pc87427
167 device pnp 2e.0 off end
180 device pnp 2e.4 off end
181 device pnp 2e.5 off end
187 device pnp 2e.7 off end
188 device pnp 2e.9 off end
189 device pnp 2e.a off end
190 device pnp 2e.f on end
191 device pnp 2e.10 off end
192 device pnp 2e.14 off end
195 device pci 1f.1 on end
196 device pci 1f.2 off end
197 device pci 1f.3 on end
198 device pci 1f.5 off end
199 device pci 1f.6 off end
200 register "gpio[40]" = "ICH5R_GPIO_USE_AS_GPIO"
201 register "gpio[48]" = "ICH5R_GPIO_USE_AS_GPIO | ICH5R_GPIO_SEL_OUTPUT | ICH5R_GPIO_LVL_LOW"
202 register "gpio[41]" = "ICH5R_GPIO_USE_AS_GPIO | ICH5R_GPIO_SEL_INPUT"
205 device apic_cluster 0 on
206 chip cpu/intel/socket_mPGA604_800Mhz # cpu 0
209 chip cpu/intel/socket_mPGA604_800Mhz # cpu 1