From patchwork Fri Aug 28 16:03:56 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Kconfig for Tyan s2891, s2892, s2895 Date: Fri, 28 Aug 2009 16:03:56 -0000 From: Myles Watson X-Patchwork-Id: 227 Message-Id: <2831fecf0908280903j177da5a5t4d5d543e5224368@mail.gmail.com> To: ron minnich Cc: coreboot On Fri, Aug 28, 2009 at 9:57 AM, ron minnich wrote: > no attachment? Sorry about that. > Were you able to use my changes to the Kconfig variables from the > earlier patch? Did it work? I hope I got everything included. Thanks, Myles Index: svn/src/mainboard/tyan/Kconfig =================================================================== --- svn.orig/src/mainboard/tyan/Kconfig +++ svn/src/mainboard/tyan/Kconfig @@ -23,6 +23,9 @@ choice depends on VENDOR_TYAN source "src/mainboard/tyan/s1846/Kconfig" +source "src/mainboard/tyan/s2891/Kconfig" +source "src/mainboard/tyan/s2892/Kconfig" +source "src/mainboard/tyan/s2895/Kconfig" endchoice Index: svn/src/mainboard/tyan/s2895/Kconfig =================================================================== --- svn.orig/src/mainboard/tyan/s2895/Kconfig +++ svn/src/mainboard/tyan/s2895/Kconfig @@ -1,5 +1,5 @@ -config BOARD_TYAN_S2892 - bool "Tyan Thunder K8SE S2892" +config BOARD_TYAN_S2895 + bool "Tyan Thunder K8WE S2895" select ARCH_X86 select CPU_AMD_K8 select CPU_AMD_SOCKET_940 @@ -7,131 +7,131 @@ config BOARD_TYAN_S2892 select NORTHBRIDGE_AMD_AMDK8_ROOT_COMPLEX select SOUTHBRIDGE_NVIDIA_CK804 select SOUTHBRIDGE_AMD_AMD8131 - select SUPERIO_WINBOND_W83627HF + select SUPERIO_SMSC_LPC47B397 select PIRQ_TABLE config MAINBOARD_DIR string - default tyan/s2892 - depends on BOARD_TYAN_S2892 + default tyan/s2895 + depends on BOARD_TYAN_S2895 config APIC_ID_OFFSET int default 8 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config SB_HT_CHAIN_ON_BUS0 int default 2 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config LB_CKS_RANGE_END int default 122 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config LB_CKS_LOC int default 123 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config MAINBOARD_PART_NUMBER string - default "s2892" - depends on BOARD_TYAN_S2892 + default "s2895" + depends on BOARD_TYAN_S2895 config PCI_64BIT_PREF_MEM int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config USE_FAILOVER_IMAGE int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config HW_MEM_HOLE_SIZEK hex default 0x100000 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config MEM_TRAIN_SEQ int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config HAVE_FAILOVER_BOOT int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config USE_FAILOVER_IMAGE int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config MAX_CPUS int default 4 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config MAX_PHYSICAL_CPUS int default 2 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config MEM_TRAIN_SEQ int default 1 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config AP_CODE_IN_CAR int default 1 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config HW_MEM_HOLE_SIZE_AUTO_INC int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config HT_CHAIN_UNITID_BASE int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config HT_CHAIN_END_UNITID_BASE int default 0x20 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config USE_INIT int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config SERIAL_CPU_INIT bool default y - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config AP_CODE_IN_CAR int default 1 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config WAIT_BEFORE_CPUS_INIT int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config SB_HT_CHAIN_ON_BUS0 int default 2 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 config SB_HT_CHAIN_UNITID_OFFSET_ONLY int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2895 Index: svn/src/southbridge/nvidia/ck804/Kconfig =================================================================== --- svn.orig/src/southbridge/nvidia/ck804/Kconfig +++ svn/src/southbridge/nvidia/ck804/Kconfig @@ -1,3 +1,14 @@ config SOUTHBRIDGE_NVIDIA_CK804 bool default n + +config HAVE_HARD_RESET + bool + default y + depends on SOUTHBRIDGE_NVIDIA_CK804 + +config IOAPIC + bool + default y + depends on SOUTHBRIDGE_NVIDIA_CK804 + Index: svn/src/mainboard/tyan/s2892/Kconfig =================================================================== --- svn.orig/src/mainboard/tyan/s2892/Kconfig +++ svn/src/mainboard/tyan/s2892/Kconfig @@ -1,171 +1,137 @@ -choice - prompt "Mainboard model" - depends on VENDOR_AMD - -config BOARD_AMD_SERENGETI_CHEETAH - bool "Serengeti Cheetah" +config BOARD_TYAN_S2892 + bool "Tyan Thunder K8SE S2892" select ARCH_X86 select CPU_AMD_K8 - select CPU_AMD_SOCKET_F + select CPU_AMD_SOCKET_940 select NORTHBRIDGE_AMD_AMDK8 select NORTHBRIDGE_AMD_AMDK8_ROOT_COMPLEX - select SOUTHBRIDGE_AMD_AMD8111 + select SOUTHBRIDGE_NVIDIA_CK804 select SOUTHBRIDGE_AMD_AMD8131 select SUPERIO_WINBOND_W83627HF - select HAVE_PIRQ_TABLE - select USE_PRINTK_IN_CAR - select USE_DCACHE_RAM - help - AMD Serengeti Cheetah mainboard. -endchoice + select PIRQ_TABLE config MAINBOARD_DIR string - default amd/serengeti_cheetah - depends on BOARD_AMD_SERENGETI_CHEETAH - -config DCACHE_RAM_BASE - hex - default 0xc8000 - depends on BOARD_AMD_SERENGETI_CHEETAH - -config DCACHE_RAM_SIZE - hex - default 0x08000 - depends on BOARD_AMD_SERENGETI_CHEETAH - -config DCACHE_RAM_GLOBAL_VAR_SIZE - hex - default 0x01000 - depends on BOARD_AMD_SERENGETI_CHEETAH + default tyan/s2892 + depends on BOARD_TYAN_S2892 config APIC_ID_OFFSET int default 8 - depends on BOARD_AMD_SERENGETI_CHEETAH - -config HAVE_HARD_RESET - bool - default y - depends on BOARD_AMD_SERENGETI_CHEETAH - -config IOAPIC - bool - default y - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config SB_HT_CHAIN_ON_BUS0 int default 2 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config LB_CKS_RANGE_END int default 122 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config LB_CKS_LOC int - default 123 - depends on BOARD_AMD_SERENGETI_CHEETAH + default 123 + depends on BOARD_TYAN_S2892 config MAINBOARD_PART_NUMBER string - default "Serengeti-Cheetah" - depends on BOARD_AMD_SERENGETI_CHEETAH + default "s2892" + depends on BOARD_TYAN_S2892 config PCI_64BIT_PREF_MEM int - default 0 - depends on BOARD_AMD_SERENGETI_CHEETAH + default 0 + depends on BOARD_TYAN_S2892 config USE_FAILOVER_IMAGE int default 0 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config HW_MEM_HOLE_SIZEK hex default 0x100000 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config MEM_TRAIN_SEQ int - default 1 - depends on BOARD_AMD_SERENGETI_CHEETAH + default 0 + depends on BOARD_TYAN_S2892 config HAVE_FAILOVER_BOOT int default 0 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config USE_FAILOVER_IMAGE int default 0 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config MAX_CPUS int - default 8 - depends on BOARD_AMD_SERENGETI_CHEETAH + default 4 + depends on BOARD_TYAN_S2892 config MAX_PHYSICAL_CPUS int - default 4 - depends on BOARD_AMD_SERENGETI_CHEETAH + default 2 + depends on BOARD_TYAN_S2892 config MEM_TRAIN_SEQ int default 1 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config AP_CODE_IN_CAR int default 1 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config HW_MEM_HOLE_SIZE_AUTO_INC int default 0 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 + +config HT_CHAIN_UNITID_BASE + int + default 0 + depends on BOARD_TYAN_S2892 config HT_CHAIN_END_UNITID_BASE int - default 0x6 - depends on BOARD_AMD_SERENGETI_CHEETAH + default 0x20 + depends on BOARD_TYAN_S2892 config USE_INIT int default 0 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config SERIAL_CPU_INIT bool - default n - depends on BOARD_AMD_SERENGETI_CHEETAH + default y + depends on BOARD_TYAN_S2892 config AP_CODE_IN_CAR int default 1 - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 config WAIT_BEFORE_CPUS_INIT int - default 1 - depends on BOARD_AMD_SERENGETI_CHEETAH + default 0 + depends on BOARD_TYAN_S2892 config SB_HT_CHAIN_ON_BUS0 int default 2 - depends on BOARD_AMD_SERENGETI_CHEETAH - -config CONSOLE_VGA - bool - default y - depends on BOARD_AMD_SERENGETI_CHEETAH + depends on BOARD_TYAN_S2892 -config PCI_ROM_RUN - bool - default y - depends on BOARD_AMD_SERENGETI_CHEETAH +config SB_HT_CHAIN_UNITID_OFFSET_ONLY + int + default 0 + depends on BOARD_TYAN_S2892 Index: svn/src/mainboard/tyan/s2891/Kconfig =================================================================== --- svn.orig/src/mainboard/tyan/s2891/Kconfig +++ svn/src/mainboard/tyan/s2891/Kconfig @@ -1,5 +1,5 @@ -config BOARD_TYAN_S2892 - bool "Tyan Thunder K8SE S2892" +config BOARD_TYAN_S2891 + bool "Tyan Thunder K8SRE S2891" select ARCH_X86 select CPU_AMD_K8 select CPU_AMD_SOCKET_940 @@ -12,126 +12,126 @@ config BOARD_TYAN_S2892 config MAINBOARD_DIR string - default tyan/s2892 - depends on BOARD_TYAN_S2892 + default tyan/s2891 + depends on BOARD_TYAN_S2891 config APIC_ID_OFFSET int default 8 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config SB_HT_CHAIN_ON_BUS0 int default 2 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config LB_CKS_RANGE_END int default 122 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config LB_CKS_LOC int default 123 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config MAINBOARD_PART_NUMBER string - default "s2892" - depends on BOARD_TYAN_S2892 + default "s2891" + depends on BOARD_TYAN_S2891 config PCI_64BIT_PREF_MEM int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config USE_FAILOVER_IMAGE int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config HW_MEM_HOLE_SIZEK hex default 0x100000 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config MEM_TRAIN_SEQ int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config HAVE_FAILOVER_BOOT int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config USE_FAILOVER_IMAGE int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config MAX_CPUS int default 4 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config MAX_PHYSICAL_CPUS int default 2 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config MEM_TRAIN_SEQ int default 1 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config AP_CODE_IN_CAR int default 1 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config HW_MEM_HOLE_SIZE_AUTO_INC int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config HT_CHAIN_UNITID_BASE int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config HT_CHAIN_END_UNITID_BASE int default 0x20 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config USE_INIT int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config SERIAL_CPU_INIT bool default y - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config AP_CODE_IN_CAR int default 1 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config WAIT_BEFORE_CPUS_INIT int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config SB_HT_CHAIN_ON_BUS0 int default 2 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 config SB_HT_CHAIN_UNITID_OFFSET_ONLY int default 0 - depends on BOARD_TYAN_S2892 + depends on BOARD_TYAN_S2891 Index: svn/src/mainboard/tyan/Makefile.s289x.inc =================================================================== --- /dev/null +++ svn/src/mainboard/tyan/Makefile.s289x.inc @@ -0,0 +1,76 @@ +## +## This file is part of the coreboot project. +## +## Copyright (C) 2007-2008 coresystems GmbH +## +## This program is free software; you can redistribute it and/or +## modify it under the terms of the GNU General Public License as +## published by the Free Software Foundation; version 2 of +## the License. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this program; if not, write to the Free Software +## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, +## MA 02110-1301 USA +## + +## +## This mainboard requires DCACHE_AS_RAM enabled. It won't work without. +## + +driver-y += mainboard.o + +#needed by irq_tables and mptable and acpi_tables +obj-y += get_bus_conf.o +obj-$(CONFIG_HAVE_MP_TABLE) += mptable.o +obj-$(CONFIG_HAVE_PIRQ_TABLE) += irq_tables.o +obj-$(CONFIG_HAVE_ACPI_TABLES) += dsdt.o +obj-$(CONFIG_HAVE_ACPI_TABLES) += acpi_tables.o +obj-$(CONFIG_HAVE_ACPI_TABLES) += fadt.o + +#./ssdt.o is in northbridge/amd/amdk8/Config.lb +obj-$(CONFIG_ACPI_SSDTX_NUM) += ssdt2.o +obj-$(CONFIG_ACPI_SSDTX_NUM) += ssdt3.o +obj-$(CONFIG_HAVE_ACPI_TABLES) += ssdt4.o +driver-y += ../../../drivers/i2c/i2cmux/i2cmux.o + +# This is part of the conversion to init-obj and away from included code. + +initobj-y += crt0.o +# FIXME in $(top)/Makefile +crt0-y += ../../../../src/cpu/x86/16bit/entry16.inc +crt0-y += ../../../../src/cpu/x86/32bit/entry32.inc +crt0-y += ../../../../src/cpu/x86/16bit/reset16.inc +crt0-y += ../../../../src/arch/i386/lib/id.inc +crt0-y += ../../../../src/cpu/amd/car/cache_as_ram.inc +crt0-y += auto.inc + +ldscript-y += ../../../../src/arch/i386/init/ldscript_fallback_cbfs.lb +ldscript-y += ../../../../src/cpu/x86/16bit/entry16.lds +ldscript-y += ../../../../src/cpu/x86/16bit/reset16.lds +ldscript-y += ../../../../src/arch/i386/lib/id.lds +ldscript-y += ../../../../src/arch/i386/lib/failover.lds + +ifdef POST_EVALUATION + +MAINBOARD_OPTIONS= -DCONFIG_AP_IN_SIPI_WAIT=0 + +$(obj)/dsdt.c: $(src)/mainboard/$(MAINBOARDDIR)/dsdt.asl + iasl -p dsdt -tc $(src)/mainboard/$(MAINBOARDDIR)/dsdt.asl + mv dsdt.hex $@ + +$(obj)/mainboard/$(MAINBOARDDIR)/dsdt.o: $(obj)/dsdt.c + $(CC) $(DISTRO_CFLAGS) $(CFLAGS) $(CPPFLAGS) $(DEBUG_CFLAGS) -I$(src) -I. -c $< -o $@ + +$(obj)/mainboard/$(MAINBOARDDIR)/auto.inc: $(src)/mainboard/$(MAINBOARDDIR)/cache_as_ram_auto.c $(obj)/option_table.h + $(CC) $(DISTRO_CFLAGS) $(CFLAGS) $(CPPFLAGS) $(DEBUG_CFLAGS) -I$(src) -I. -c -S $(src)/mainboard/$(MAINBOARDDIR)/cache_as_ram_auto.c -o $@ + perl -e 's/\.rodata/.rom.data/g' -pi $@ + perl -e 's/\.text/.section .rom.text/g' -pi $@ + +endif + Index: svn/src/mainboard/tyan/s2891/Makefile.inc =================================================================== --- /dev/null +++ svn/src/mainboard/tyan/s2891/Makefile.inc @@ -0,0 +1 @@ +include $(src)/mainboard/tyan/Makefile.s289x.inc Index: svn/src/mainboard/tyan/s2892/Makefile.inc =================================================================== --- /dev/null +++ svn/src/mainboard/tyan/s2892/Makefile.inc @@ -0,0 +1 @@ +include $(src)/mainboard/tyan/Makefile.s289x.inc Index: svn/src/mainboard/tyan/s2895/Makefile.inc =================================================================== --- /dev/null +++ svn/src/mainboard/tyan/s2895/Makefile.inc @@ -0,0 +1 @@ +include $(src)/mainboard/tyan/Makefile.s289x.inc