mods for the ultra40 bringup. This now builds.

amd gx2 north -- don't set anything in the north, it conflicts with vsa
settings. So we have our own pci_set_resources that is essentially a
no-op -- just calls the kids. 

olpc rev_a config -- DISABLE the compressed rom stream. This SHOULD NOT
have been set -- it is untested and caused real trouble. 


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2369 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Ronald G. Minnich 2006-08-09 02:21:49 +00:00
parent e53d03c211
commit 08af3f535d
8 changed files with 61 additions and 13 deletions

View File

@ -176,10 +176,11 @@ default CONFIG_IOAPIC=1
##
## Clean up the motherboard id strings
##
default MAINBOARD_PART_NUMBER="s2895"
default MAINBOARD_VENDOR="Tyan"
default MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID=0x10f1
default MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID=0x2895
default MAINBOARD_PART_NUMBER="ultra40"
default MAINBOARD_VENDOR="sunw"
default MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID=0x108e
default MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID=0x40
###
### LinuxBIOS layout values

View File

@ -174,7 +174,7 @@ static void main(unsigned long bist)
sio_gpio_setup();
setup_s2895_resource_map();
setup_ultra40_resource_map();
needs_reset = setup_coherent_ht_domain();

View File

@ -236,7 +236,7 @@ void real_main(unsigned long bist, unsigned long cpu_init_detectedx)
/* Halt if there was a built in self test failure */
report_bist_failure(bist);
setup_s2895_resource_map();
setup_ultra40_resource_map();
needs_reset = setup_coherent_ht_domain();

View File

@ -1,6 +1,6 @@
extern struct chip_operations mainboard_tyan_s2895_ops;
extern struct chip_operations mainboard_sunw_ultra40_ops;
struct mainboard_tyan_s2895_config {
struct mainboard_sunw_ultra40_config {
// int fixup_scsi;
// int fixup_vga;
};

View File

@ -35,8 +35,8 @@ extern unsigned sbdnb;
void *smp_write_config_table(void *v)
{
static const char sig[4] = "PCMP";
static const char oem[8] = "TYAN ";
static const char productid[12] = "S2895 ";
static const char oem[8] = "SUNW ";
static const char productid[12] = "ultra40 ";
struct mp_config_table *mc;
unsigned char bus_num;

View File

@ -283,9 +283,56 @@ static void northbridge_init(device_t dev)
irq_init_steering(dev, nb->irqmap);
}
/* due to vsa interactions, we need not not touch the nb settings ... */
/* this is a test -- we are not sure it will work -- but it ought to */
static void set_resources(struct device *dev)
{
struct resource *resource, *last;
unsigned link;
uint8_t line;
#if 0
last = &dev->resource[dev->resources];
for(resource = &dev->resource[0]; resource < last; resource++) {
pci_set_resource(dev, resource);
}
#endif
for(link = 0; link < dev->links; link++) {
struct bus *bus;
bus = &dev->link[link];
if (bus->children) {
assign_resources(bus);
}
}
#if 0
/* set a default latency timer */
pci_write_config8(dev, PCI_LATENCY_TIMER, 0x40);
/* set a default secondary latency timer */
if ((dev->hdr_type & 0x7f) == PCI_HEADER_TYPE_BRIDGE) {
pci_write_config8(dev, PCI_SEC_LATENCY_TIMER, 0x40);
}
/* zero the irq settings */
line = pci_read_config8(dev, PCI_INTERRUPT_PIN);
if (line) {
pci_write_config8(dev, PCI_INTERRUPT_LINE, 0);
}
/* set the cache line size, so far 64 bytes is good for everyone */
pci_write_config8(dev, PCI_CACHE_LINE_SIZE, 64 >> 2);
#endif
}
static struct device_operations northbridge_operations = {
.read_resources = pci_dev_read_resources,
#if 0
.set_resources = pci_dev_set_resources,
#endif
.set_resources = set_resources,
.enable_resources = pci_dev_enable_resources,
.init = northbridge_init,
.enable = 0,

View File

@ -5,7 +5,7 @@ mainboard olpc/rev_a
# Don't let LinuxBIOS compress the payload
# option CONFIG_COMPRESSED_ROM_STREAM=0
option CONFIG_PRECOMPRESSED_ROM_STREAM=1
#option CONFIG_PRECOMPRESSED_ROM_STREAM=1
# leave 64k for vsa
option ROM_SIZE=1024*1024-64*1024

View File

@ -29,7 +29,7 @@ romimage "normal"
# payload ../../../payloads/filo.zelf
# payload ../../../payloads/tg3.zelf
# payload ../../../payloads/tg3--filo_hda2_vga.zelf
payload ../../../../payloads/forcedeth--filo_hda2_vga.zelf
payload /etc/hosts
# payload ../../../payloads/forcedeth_vga.zelf
# payload ../../../payloads/forcedeth--filo_hda2_vga_5_4.zelf
# payload ../../../../../../elf/ram0_2.5_2.6.11.tiny.elf
@ -58,7 +58,7 @@ romimage "fallback"
# payload ../../../payloads/filo.zelf
# payload ../../../payloads/tg3.zelf
# payload ../../../payloads/tg3--filo_hda2_vga.zelf
payload ../../../../payloads/forcedeth--filo_hda2_vga.zelf
payload /etc/hosts
# payload ../../../payloads/forcedeth_vga.zelf
# payload ../../../payloads/tg3--filo_hda2_vga_5_4.zelf
# payload ../../../payloads/tg3_vga.zelf