2 ## Compute the location and size of where this firmware image
3 ## (coreboot plus bootloader) will live in the boot rom chip.
6 default ROM_SECTION_SIZE = FALLBACK_SIZE
7 default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE )
9 default ROM_SECTION_SIZE = ( ROM_SIZE - FALLBACK_SIZE )
10 default ROM_SECTION_OFFSET = 0
14 ## Compute the start location and size size of
15 ## The coreboot bootloader.
17 default CONFIG_ROM_PAYLOAD_START = (0xffffffff - ROM_SIZE + ROM_SECTION_OFFSET + 1)
18 default PAYLOAD_SIZE = ( ROM_SECTION_SIZE - ROM_IMAGE_SIZE )
21 ## Compute where this copy of coreboot will start in the boot rom
23 default _ROMBASE = ( CONFIG_ROM_PAYLOAD_START + PAYLOAD_SIZE )
26 ## Compute a range of ROM that can cached to speed up coreboot,
29 ## XIP_ROM_SIZE must be a power of 2.
30 ## 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 )
36 ## Set all of the defaults for an x86 architecture
42 ## Build the objects we have code for in this directory.
54 # makerule ./failover.E
55 # depends "$(MAINBOARD)/failover.c ./romcc"
56 # action "./romcc -E -O --label-prefix=failover -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/failover.c -o $@"
59 # makerule ./failover.inc
60 # depends "$(MAINBOARD)/failover.c ./romcc"
61 # action "./romcc -O --label-prefix=failover -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/failover.c -o $@"
65 depends "$(MAINBOARD)/auto.c ./romcc"
66 action "./romcc -E -mcpu=i386 -O -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/auto.c -o $@"
69 depends "$(MAINBOARD)/auto.c ./romcc"
70 action "./romcc -mcpu=i386 -O -I$(TOP)/src -I. $(CPPFLAGS) $(MAINBOARD)/auto.c -o $@"
74 ## Build our 16 bit and 32 bit coreboot entry code
76 mainboardinit cpu/x86/16bit/entry16.inc
77 mainboardinit cpu/x86/32bit/entry32.inc
78 ldscript /cpu/x86/16bit/entry16.lds
79 ldscript /cpu/x86/32bit/entry32.lds
82 ## Build our reset vector (This is where coreboot is entered)
85 mainboardinit cpu/x86/16bit/reset16.inc
86 ldscript /cpu/x86/16bit/reset16.lds
88 mainboardinit cpu/x86/32bit/reset32.inc
89 ldscript /cpu/x86/32bit/reset32.lds
92 ### Should this be in the northbridge code?
93 mainboardinit arch/i386/lib/cpu_reset.inc
96 ## Include an id string (For safe flashing)
98 mainboardinit arch/i386/lib/id.inc
99 ldscript /arch/i386/lib/id.lds
102 ### This is the early phase of coreboot startup
103 ### Things are delicate and we test to see if we should
104 ### failover to another image.
106 # if USE_FALLBACK_IMAGE
107 # ldscript /arch/i386/lib/failover.lds
108 # mainboardinit ./failover.inc
112 ### O.k. We aren't just an intermediary anymore!
118 mainboardinit cpu/x86/fpu/enable_fpu.inc
119 mainboardinit cpu/amd/model_gx1/cpu_setup.inc
120 mainboardinit cpu/amd/model_gx1/gx_setup.inc
121 mainboardinit ./auto.inc
124 ## Include the secondary Configuration files
129 chip northbridge/amd/gx1 # Northbridge
130 device pci_domain 0 on
131 device pci 0.0 on end # Host bridge
132 chip southbridge/amd/cs5530 # Southbridge
133 device pci 0f.0 off end # Ethernet (Realtek RTL8139B)
134 device pci 12.0 on # ISA bridge
135 chip superio/nsc/pc87351 # Super I/O
136 device pnp 2e.4 on # PS/2 keyboard (+ mouse?)
142 device pnp 2e.a on # PS/2 mouse
145 device pnp 2e.e on # COM1
149 device pnp 2e.f off # Floppy
154 device pnp 2e.10 on # Parallel port
158 device pnp 2e.12 on # COM2
164 device pci 12.1 off end # SMI
165 device pci 12.2 on end # IDE
166 device pci 12.3 on end # Audio
167 device pci 12.4 on end # VGA (onboard)
168 # device pci 12.4 on # VGA (onboard)
169 # chip drivers/pci/onboard
170 # device pci 12.4 on end
171 # register "rom_address" = "0xfffc0000" # 256 KB image
172 # # register "rom_address" = "0xfff80000" # 512 KB image
173 # # register "rom_address" = "0xfff00000" # 1 MB image
176 device pci 13.0 on end # USB
177 register "ide0_enable" = "1"
178 register "ide1_enable" = "1"
181 chip cpu/amd/model_gx1 # CPU