mirror of
https://github.com/fail0verflow/switch-coreboot.git
synced 2025-05-04 01:39:18 -04:00
elitegroup k7sem
This commit is contained in:
parent
fcfd681710
commit
5d8bf443c6
5 changed files with 123 additions and 0 deletions
23
src/mainboard/elitegroup/k7sem/Config
Normal file
23
src/mainboard/elitegroup/k7sem/Config
Normal file
|
@ -0,0 +1,23 @@
|
|||
arch i386
|
||||
mainboardinit cpu/i386/entry16.inc
|
||||
mainboardinit cpu/i386/entry32.inc
|
||||
ldscript cpu/i386/entry16.lds
|
||||
|
||||
mainboardinit superio/sis/950/setup_serial.inc
|
||||
mainboardinit pc80/serial.inc
|
||||
mainboardinit arch/i386/lib/console.inc
|
||||
northsouthbridge sis/730
|
||||
# superio sis/950
|
||||
nsuperio sis/950 com1={1} floppy=1 lpt=1
|
||||
mainboardinit cpu/p6/earlymtrr.inc
|
||||
|
||||
option ENABLE_FIXED_AND_VARIABLE_MTRRS=1
|
||||
option FINAL_MAINBOARD_FIXUP=1
|
||||
option HAVE_PIRQ_TABLE=1
|
||||
option CONFIG_SIS_DISABLE_ETHERNET
|
||||
object mainboard.o
|
||||
object irq_tables.o
|
||||
keyboard pc80
|
||||
cpu p5
|
||||
cpu p6
|
||||
cpu k7
|
7
src/mainboard/elitegroup/k7sem/dll.inc
Normal file
7
src/mainboard/elitegroup/k7sem/dll.inc
Normal file
|
@ -0,0 +1,7 @@
|
|||
/* Table for DLL Clock Control Register (0x8c - 0x8f), these
|
||||
register values are very Mainboard specific */
|
||||
|
||||
# High Byte -> Register Low Byte -> Value
|
||||
.word 0x8c46
|
||||
.word 0x8d70
|
||||
.word 0x8e87
|
36
src/mainboard/elitegroup/k7sem/example.tftpboot.config
Normal file
36
src/mainboard/elitegroup/k7sem/example.tftpboot.config
Normal file
|
@ -0,0 +1,36 @@
|
|||
# This will make a target directory of ./winfast
|
||||
# Note that this is RELATIVE TO WHERE YOU ARE WHEN YOU RUN THE
|
||||
# CONFIG TOOL. Make it absolute if you like
|
||||
target k7sem
|
||||
|
||||
# Elitegroup K7sem
|
||||
mainboard elitegroup/k7sem
|
||||
|
||||
# Enable Serial Console for debugging
|
||||
# It will come up at 115200,8n1
|
||||
option SERIAL_CONSOLE=1
|
||||
|
||||
# Enable MicroCode update and L2 Cache init for PII and PIII
|
||||
#option UPDATE_MICROCODE
|
||||
#option CONFIGURE_L2_CACHE
|
||||
|
||||
# Use the internal VGA frame buffer device
|
||||
option HAVE_FRAMEBUFFER
|
||||
|
||||
# Path to your kernel (vmlinux)
|
||||
# NOTE; you need a path to your test12 kernel here.
|
||||
linux /usr/src/linux-2.2.17-beoboot-pyro1
|
||||
#linux /usr/src/linux-2.4.0-test12
|
||||
|
||||
# Kernel command line parameters
|
||||
commandline root=/dev/nftla1
|
||||
|
||||
# We're using disk on chip. Tell it where to find the docipl code
|
||||
docipl northsouthbridge/sis/730/ipl.S
|
||||
|
||||
#option USE_DOC_MIL
|
||||
|
||||
option STD_FLASH
|
||||
etherboot sis900
|
||||
|
||||
|
27
src/mainboard/elitegroup/k7sem/irq_tables.c
Normal file
27
src/mainboard/elitegroup/k7sem/irq_tables.c
Normal file
|
@ -0,0 +1,27 @@
|
|||
#include <arch/pirq_routing.h>
|
||||
|
||||
#define CHECKSUM 0x14
|
||||
const struct irq_routing_table intel_irq_routing_table = {
|
||||
PIRQ_SIGNATURE, /* u32 signature */
|
||||
PIRQ_VERSION, /* u16 version */
|
||||
32+16*4, /* there can be total 5 devices on the bus */
|
||||
0x00, /* Bus 0 */
|
||||
0x08, /* Device 1, Function 0 */
|
||||
0x0000, /* reserve IRQ 11, 9, 5, for PCI */
|
||||
0x1039, /* Silicon Integrated System */
|
||||
0x0008, /* SiS 85C503/5513 ISA Bridge */
|
||||
0x00, /* u8 miniport_data - "crap" */
|
||||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */
|
||||
CHECKSUM, /* u8 checksum - mod 256 checksum must give zero */
|
||||
{
|
||||
/* bus, devfn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */
|
||||
{0x00, 0x08, {{0x41, 0xdcb8}, {0x42, 0xdcb8}, {0x43, 0xdcb8}, {0x44, 0xdcb8}},
|
||||
0x00, 0x00},
|
||||
{0x00, 0x10, {{0x41, 0xdcb8}, {0x42, 0xdcb8}, {0x43, 0xdcb8}, {0x44, 0xdcb8}},
|
||||
0x00, 0x00},
|
||||
{0x00, 0x48, {{0x41, 0xdcb8}, {0x42, 0xdcb8}, {0x43, 0xdcb8}, {0x44, 0xdcb8}},
|
||||
0x01, 0x00},
|
||||
{0x00, 0x58, {{0x43, 0xdcb8}, {0x44, 0xdcb8}, {0x41, 0xdcb8}, {0x42, 0xdcb8}},
|
||||
0x02, 0x00},
|
||||
}
|
||||
};
|
30
src/mainboard/elitegroup/k7sem/mainboard.c
Normal file
30
src/mainboard/elitegroup/k7sem/mainboard.c
Normal file
|
@ -0,0 +1,30 @@
|
|||
#include <printk.h>
|
||||
|
||||
void
|
||||
mainboard_fixup(void)
|
||||
{
|
||||
}
|
||||
|
||||
void
|
||||
final_mainboard_fixup(void)
|
||||
{
|
||||
void fixk7msr_2dimms(unsigned long dimm1sizeK,
|
||||
unsigned long dimm2sizeK);
|
||||
void final_southbridge_fixup(void);
|
||||
void final_superio_fixup(void);
|
||||
extern unsigned long slotsizeM[];
|
||||
printk_info("elitegroup k7sem (and similar)...");
|
||||
|
||||
// we need to fix up the K7 MSRs.
|
||||
// to do this, we get the DIMM sizes in slot1 and 2, and
|
||||
// call fixk7msr_2dimms
|
||||
// this is all very mainboard-specific ...
|
||||
|
||||
printk_err("Fixing mainboard for dimms %dK + %dK\n",
|
||||
slotsizeM[0], slotsizeM[1]);
|
||||
fixk7msr_2dimms(slotsizeM[0], slotsizeM[1]);
|
||||
final_southbridge_fixup();
|
||||
#ifndef USE_NEW_SUPERIO_INTERFACE
|
||||
final_superio_fixup();
|
||||
#endif
|
||||
}
|
Loading…
Add table
Reference in a new issue