aboutsummaryrefslogtreecommitdiff
path: root/src/mainboard/tyan/s4882
diff options
context:
space:
mode:
authorStefan Reinauer <stepan@openbios.org>2004-04-24 23:01:33 +0000
committerStefan Reinauer <stepan@openbios.org>2004-04-24 23:01:33 +0000
commit2ab88d1179d46e4e5242286b59ee8519fa79bb05 (patch)
tree1a23808e0716943ec7a159254b19dc03a7713ac4 /src/mainboard/tyan/s4882
parentf05dcb8d7afb3716959b94b8dac20ee551762624 (diff)
Major merge of YhLu's code from 2004/04/20: add s2875, various other updates,
cleanups. Drop "driver" code from mainboard directories and use them from the driver directory instead git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1534 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/mainboard/tyan/s4882')
-rw-r--r--src/mainboard/tyan/s4882/Config.lb5
-rw-r--r--src/mainboard/tyan/s4882/auto.c17
2 files changed, 9 insertions, 13 deletions
diff --git a/src/mainboard/tyan/s4882/Config.lb b/src/mainboard/tyan/s4882/Config.lb
index ea826238b5..9972696a4e 100644
--- a/src/mainboard/tyan/s4882/Config.lb
+++ b/src/mainboard/tyan/s4882/Config.lb
@@ -34,9 +34,9 @@ default LB_CKS_RANGE_END=122
default LB_CKS_LOC=123
driver mainboard.o
-driver lsi_scsi.o
+dir ../common/lsi_scsi
#driver adaptec_scsi.o
-driver si_sata.o
+#driver si_sata.o
#driver intel_nic.o
#object reset.o
if HAVE_MP_TABLE object mptable.o end
@@ -137,7 +137,6 @@ end
makerule ./auto.inc
depends "./romcc ./auto.E"
action "./romcc -O2 -mcpu=k8 -o auto.inc --label-prefix=auto ./auto.E"
-# action "./romcc -mcpu=k8 -O ./auto.E > auto.inc"
end
mainboardinit cpu/k8/enable_mmx_sse.inc
mainboardinit ./auto.inc
diff --git a/src/mainboard/tyan/s4882/auto.c b/src/mainboard/tyan/s4882/auto.c
index bbf1df9927..e07ae7826d 100644
--- a/src/mainboard/tyan/s4882/auto.c
+++ b/src/mainboard/tyan/s4882/auto.c
@@ -40,24 +40,24 @@ static void soft_reset(void)
}
-#define REV_B_RESET 0
static void memreset_setup(void)
{
-#if REV_B_RESET==1
+ if (is_cpu_pre_c0()) {
outb((0 << 7)|(0 << 6)|(0<<5)|(0<<4)|(1<<2)|(0<<0), SMBUS_IO_BASE + 0xc0 + 16); //REVC_MEMRST_EN=0
-#else
+ }
+ else {
outb((0 << 7)|(0 << 6)|(0<<5)|(0<<4)|(1<<2)|(1<<0), SMBUS_IO_BASE + 0xc0 + 16); //REVC_MEMRST_EN=1
-#endif
+ }
outb((0 << 7)|(0 << 6)|(0<<5)|(0<<4)|(1<<2)|(0<<0), SMBUS_IO_BASE + 0xc0 + 17);
}
static void memreset(int controllers, const struct mem_controller *ctrl)
{
+ if (is_cpu_pre_c0()) {
udelay(800);
-#if REV_B_RESET==1
outb((0<<7)|(0<<6)|(0<<5)|(0<<4)|(1<<2)|(1<<0), SMBUS_IO_BASE + 0xc0 + 17); //REVB_MEMRST_L=1
-#endif
udelay(90);
+ }
}
static unsigned int generate_row(uint8_t node, uint8_t row, uint8_t maxnodes)
@@ -215,11 +215,8 @@ static void main(void)
setup_s4882_resource_map();
needs_reset = setup_coherent_ht_domain();
needs_reset |= ht_setup_chain(PCI_DEV(0, 0x18, 0), 0xa0);
-#if 0
- dump_pci_device(PCI_DEV(0, 4, 0));
-#endif
if (needs_reset) {
- print_info("ht reset -");
+ print_info("ht reset -\r\n");
soft_reset();
}