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 -fno-simplify-phi -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 -fno-simplify-phi -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 -fno-simplify-phi -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 -fno-simplify-phi -mcpu=p4 -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 # mch
136 device pci_domain 0 on
137 chip southbridge/intel/i82801er # i82801er
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
146 device pci 1e.0 on end
150 chip superio/nsc/pc8374
151 device pnp 2e.0 off end
152 device pnp 2e.1 off end
153 device pnp 2e.2 off end
158 device pnp 2e.4 off end
159 device pnp 2e.5 off end
160 device pnp 2e.6 off end
161 device pnp 2e.7 off end
162 device pnp 2e.8 off end
166 device pci 1f.1 on end
168 device pci 1f.2 on end
169 device pci 1f.3 on end
171 register "pirq_a_d" = "0x8a07030b"
172 register "pirq_e_h" = "0x85808080"
174 device pci 00.0 on end
175 device pci 00.1 on end
176 device pci 01.0 on end
178 chip southbridge/intel/pxhd # pxhd1
179 # Bus bridges and ioapics usually bus 1
182 chip drivers/generic/generic
183 device pci 03.0 on end
184 device pci 03.1 on end
187 device pci 0.1 on end
188 device pci 0.2 on end
189 device pci 0.3 on end
192 device pci 04.0 on end
193 device pci 06.0 on end
195 device apic_cluster 0 on
196 chip cpu/intel/socket_mPGA604_800Mhz # cpu 0
199 chip cpu/intel/socket_mPGA604_800Mhz # cpu 1
203 register "intrline" = "0x00070100"