Hi,

attached patch makes all boards build with kconfig (incl. fam10). None
boot-tested.

Details:
- move declaration of romstrap files that must be added to the bootblock
into the related southbridge's Makefiles.
- amd/model_fxx, amd/model_10xxx provide their own init_timer and udelay
functions. disable udelay_io default, declare init_timer presence
- amd/sc520 provides its own udelay function (no init_timer). Declare as
such
- supermicro/h8dmr_fam10:
-- enable tinybootblock
-- align configuration a bit with newconfig's
-- move acpi object files to $(obj)
-- fix copy&paste bug in devicetree.cb
- emulation/qemu-x86 provides its own timer. Declare as such
- tyan/s2912_fam10:
-- enable tinybootblock
-- align configuration a bit with newconfig's

The remaining issues are:
- Make configurations match newconfig's
- Find bugs

Signed-off-by: Patrick Georgi <[email protected]>
Index: src/southbridge/via/k8t890/Makefile.inc
===================================================================
--- src/southbridge/via/k8t890/Makefile.inc     (revision 4999)
+++ src/southbridge/via/k8t890/Makefile.inc     (working copy)
@@ -7,3 +7,6 @@
 driver-y += k8t890_traf_ctrl.o
 driver-y += k8t890_error.o
 driver-y += k8m890_chrome.o
+
+chipset_bootblock_inc += $(src)/southbridge/via/k8t890/romstrap.inc
+chipset_bootblock_lds += $(src)/southbridge/via/k8t890/romstrap.lds
Index: src/southbridge/nvidia/mcp55/Makefile.inc
===================================================================
--- src/southbridge/nvidia/mcp55/Makefile.inc   (revision 4999)
+++ src/southbridge/nvidia/mcp55/Makefile.inc   (working copy)
@@ -14,3 +14,6 @@
 driver-$(CONFIG_GENERATE_ACPI_TABLES) += mcp55_fadt.o
 
 obj-y += mcp55_reset.o
+
+chipset_bootblock_inc += $(src)/southbridge/nvidia/mcp55/romstrap.inc
+chipset_bootblock_lds += $(src)/southbridge/nvidia/mcp55/romstrap.lds
Index: src/cpu/amd/model_fxx/Kconfig
===================================================================
--- src/cpu/amd/model_fxx/Kconfig       (revision 4999)
+++ src/cpu/amd/model_fxx/Kconfig       (working copy)
@@ -4,6 +4,7 @@
        select USE_PRINTK_IN_CAR
        select USE_DCACHE_RAM
        select SSE
+       select HAVE_INIT_TIMER
 
 config CPU_ADDR_BITS
        int
@@ -25,3 +26,8 @@
        default 0x01000
        depends on CPU_AMD_MODEL_FXX
 
+
+config UDELAY_IO
+       bool
+       default n
+       depends on CPU_AMD_MODEL_FXX
Index: src/cpu/amd/sc520/Kconfig
===================================================================
--- src/cpu/amd/sc520/Kconfig   (revision 4999)
+++ src/cpu/amd/sc520/Kconfig   (working copy)
@@ -1,3 +1,8 @@
 config CPU_AMD_SC520
        bool
 
+config UDELAY_IO
+       bool
+       default n
+       depends on CPU_AMD_SC520
+
Index: src/cpu/amd/model_10xxx/Kconfig
===================================================================
--- src/cpu/amd/model_10xxx/Kconfig     (revision 4999)
+++ src/cpu/amd/model_10xxx/Kconfig     (working copy)
@@ -4,6 +4,7 @@
        select USE_PRINTK_IN_CAR
        select USE_DCACHE_RAM
        select SSE
+       select HAVE_INIT_TIMER
 
 config CPU_ADDR_BITS
        int
@@ -25,3 +26,7 @@
        default 0x04000
        depends on CPU_AMD_MODEL_10XXX
 
+config UDELAY_IO
+       bool
+       default n
+       depends on CPU_AMD_MODEL_10XXX
Index: src/mainboard/supermicro/h8dmr_fam10/Kconfig
===================================================================
--- src/mainboard/supermicro/h8dmr_fam10/Kconfig        (revision 4999)
+++ src/mainboard/supermicro/h8dmr_fam10/Kconfig        (working copy)
@@ -15,6 +15,8 @@
        select LIFT_BSP_APIC_ID
        select AMDMCT
        select BOARD_ROMSIZE_KB_1024
+       select TINY_BOOTBLOCK
+       select ENABLE_APIC_EXT_ID
 
 config MAINBOARD_DIR
        string
@@ -23,27 +25,42 @@
 
 config DCACHE_RAM_BASE
        hex
-       default 0xc8000
+       default 0xc4000
        depends on BOARD_SUPERMICRO_H8DMR_FAM10
 
 config DCACHE_RAM_SIZE
        hex
-       default 0x08000
+       default 0x0c000
        depends on BOARD_SUPERMICRO_H8DMR_FAM10
 
 config DCACHE_RAM_GLOBAL_VAR_SIZE
        hex
-       default 0x01000
+       default 0x04000
        depends on BOARD_SUPERMICRO_H8DMR_FAM10
 
+config RAMBASE
+       hex
+       default 0x200000
+       depends on BOARD_SUPERMICRO_H8DMR_FAM10
+
+config RAMTOP
+       hex
+       default 0x1000000
+       depends on BOARD_SUPERMICRO_H8DMR_FAM10
+
+config HEAP_SIZE
+       hex
+       default 0xc0000
+       depends on BOARD_SUPERMICRO_H8DMR_FAM10
+
 config APIC_ID_OFFSET
        hex
-       default 0x10
+       default 0x0
        depends on BOARD_SUPERMICRO_H8DMR_FAM10
 
 config MEM_TRAIN_SEQ
        int
-       default 1
+       default 2
        depends on BOARD_SUPERMICRO_H8DMR_FAM10
 
 config SB_HT_CHAIN_ON_BUS0
@@ -78,7 +95,7 @@
 
 config MAX_CPUS
        int
-       default 4
+       default 8
        depends on BOARD_SUPERMICRO_H8DMR_FAM10
 
 config MAX_PHYSICAL_CPUS
@@ -88,12 +105,12 @@
 
 config HT_CHAIN_END_UNITID_BASE
        hex
-       default 0x0
+       default 0x20
        depends on BOARD_SUPERMICRO_H8DMR_FAM10
 
 config HT_CHAIN_UNITID_BASE
        hex
-       default 0x0
+       default 0x1
        depends on BOARD_SUPERMICRO_H8DMR_FAM10
 
 config USE_INIT
@@ -115,3 +132,8 @@
        string
        default "mc_patch_0100009f.h"
        depends on BOARD_SUPERMICRO_H8DMR_FAM10
+
+config SERIAL_CPU_INIT
+       bool
+       default n
+       depends on BOARD_SUPERMICRO_H8DMR_FAM10
Index: src/mainboard/supermicro/h8dmr_fam10/Makefile.inc
===================================================================
--- src/mainboard/supermicro/h8dmr_fam10/Makefile.inc   (revision 4999)
+++ src/mainboard/supermicro/h8dmr_fam10/Makefile.inc   (working copy)
@@ -30,19 +30,12 @@
 
 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/southbridge/nvidia/mcp55/romstrap.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/southbridge/nvidia/mcp55/romstrap.lds
+ldscript-y += ../../../../src/cpu/x86/32bit/entry32.lds
 ldscript-y += ../../../../src/arch/i386/lib/failover.lds
 
 ifdef POST_EVALUATION
@@ -55,19 +48,19 @@
        $(CC) $(DISTRO_CFLAGS) $(CFLAGS) $(CPPFLAGS) $(DEBUG_CFLAGS) -I$(src) 
-I. -c $< -o $@
 
 $(obj)/ssdt2.c: $(src)/mainboard/$(MAINBOARDDIR)/dx/pci2.asl
-       iasl -p $(CURDIR)/pci2 -tc $(CONFIG_MAINBOARD)/dx/pci2.asl
-       perl -pi -e 's/AmlCode/AmlCode_ssdt2/g' pci2.hex
-       mv pci2.hex ssdt2.c
+       iasl -p $(obj)/pci2 -tc $(CONFIG_MAINBOARD)/dx/pci2.asl
+       perl -pi -e 's/AmlCode/AmlCode_ssdt2/g' $(obj)/pci2.hex
+       mv $(obj)/pci2.hex $(obj)/ssdt2.c
 
 $(obj)/ssdt3.c: $(src)/mainboard/$(MAINBOARDDIR)/dx/pci3.asl"
-       iasl -p $(CURDIR)/pci3 -tc $(CONFIG_MAINBOARD)/
-       perl -pi -e 's/AmlCode/AmlCode_ssdt3/g' pci3.hex
-       mv pci3.hex ssdt3.c
+       iasl -p $(obj)/pci3 -tc $(CONFIG_MAINBOARD)/
+       perl -pi -e 's/AmlCode/AmlCode_ssdt3/g' $(obj)/pci3.hex
+       mv $(obj)/pci3.hex $(obj)/ssdt3.c
 
 $(obj)/ssdt4.c: $(src)/mainboard/$(MAINBOARDDIR)/dx/pci4.asl"
-       iasl -p $(CURDIR)/pci4 -tc $(CONFIG_MAINBOARD)/dx/pci4.asl
-       perl -pi -e 's/AmlCode/AmlCode_ssdt4/g' pci4.hex
-       mv pci4.hex ssdt4.c
+       iasl -p $(obj)/pci4 -tc $(CONFIG_MAINBOARD)/dx/pci4.asl
+       perl -pi -e 's/AmlCode/AmlCode_ssdt4/g' $(obj)/pci4.hex
+       mv $(obj)/pci4.hex $(obj)/ssdt4.c
 
 $(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 $@
Index: src/mainboard/supermicro/h8dmr_fam10/devicetree.cb
===================================================================
--- src/mainboard/supermicro/h8dmr_fam10/devicetree.cb  (revision 4999)
+++ src/mainboard/supermicro/h8dmr_fam10/devicetree.cb  (working copy)
@@ -1,5 +1,3 @@
-dir /southbridge/nvidia/mcp55
-
 chip northbridge/amd/amdfam10/root_complex
         device apic_cluster 0 on
                 chip cpu/amd/socket_F_1207
Index: src/mainboard/emulation/qemu-x86/Kconfig
===================================================================
--- src/mainboard/emulation/qemu-x86/Kconfig    (revision 4999)
+++ src/mainboard/emulation/qemu-x86/Kconfig    (working copy)
@@ -27,3 +27,8 @@
        bool
        default n
        depends on BOARD_EMULATION_QEMU_X86
+
+config UDELAY_IO
+       bool
+       default n
+       depends on BOARD_EMULATION_QEMU_X86
Index: src/mainboard/tyan/s2912_fam10/Kconfig
===================================================================
--- src/mainboard/tyan/s2912_fam10/Kconfig      (revision 4999)
+++ src/mainboard/tyan/s2912_fam10/Kconfig      (working copy)
@@ -13,10 +13,10 @@
        select HAVE_HARD_RESET
        select IOAPIC
        select LIFT_BSP_APIC_ID
-       select SB_HT_CHAIN_UNITID_OFFSET_ONLY
        select BOARD_ROMSIZE_KB_1024
        select ENABLE_APIC_EXT_ID
        select AMDMCT
+       select TINY_BOOTBLOCK
 
 config MAINBOARD_DIR
        string
@@ -25,22 +25,22 @@
 
 config DCACHE_RAM_BASE
        hex
-       default 0xc8000
+       default 0xc4000
        depends on BOARD_TYAN_S2912_FAM10
        
 config DCACHE_RAM_SIZE
        hex
-       default 0x08000
+       default 0x0c000
        depends on BOARD_TYAN_S2912_FAM10
 
 config DCACHE_RAM_GLOBAL_VAR_SIZE
        hex
-       default 0x01000
+       default 0x04000
        depends on BOARD_TYAN_S2912_FAM10
 
 config APIC_ID_OFFSET
        hex     
-       default 16
+       default 0
        depends on BOARD_TYAN_S2912_FAM10
 
 config MEM_TRAIN_SEQ
@@ -95,12 +95,12 @@
 
 config MAX_CPUS
        int
-       default 2
+       default 8
        depends on BOARD_TYAN_S2912_FAM10
 
 config MAX_PHYSICAL_CPUS
        int
-       default 1
+       default 2
        depends on BOARD_TYAN_S2912_FAM10
 
 config HW_MEM_HOLE_SIZE_AUTO_INC
@@ -110,12 +110,12 @@
 
 config HT_CHAIN_UNITID_BASE
        hex
-       default 0x0
+       default 0x1
        depends on BOARD_TYAN_S2912_FAM10
 
 config HT_CHAIN_END_UNITID_BASE
        hex     
-       default 0x0
+       default 0x20
        depends on BOARD_TYAN_S2912_FAM10
 
 config USE_INIT
@@ -148,3 +148,27 @@
        default "mc_patch_01000095.h"
        depends on BOARD_TYAN_S2912_FAM10
 
+config SERIAL_CPU_INIT
+       bool
+       default n
+       depends on BOARD_TYAN_S2912_FAM10
+
+config ACPI_SSDTX_NUM
+       hex
+       default 0x1f
+       depends on BOARD_TYAN_S2912_FAM10
+
+config RAMBASE
+       hex
+       default 0x200000
+       depends on BOARD_TYAN_S2912_FAM10
+
+config RAMTOP
+       hex
+       default 0x1000000
+       depends on BOARD_TYAN_S2912_FAM10
+
+config HEAP_SIZE
+       hex
+       default 0xc0000
+       depends on BOARD_TYAN_S2912_FAM10
Index: src/mainboard/tyan/s2912_fam10/Makefile.inc
===================================================================
--- src/mainboard/tyan/s2912_fam10/Makefile.inc (revision 4999)
+++ src/mainboard/tyan/s2912_fam10/Makefile.inc (working copy)
@@ -30,19 +30,12 @@
 
 # This is part of the conversion to init-obj and away from included code. 
 initobj-y += crt0.o
-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/southbridge/nvidia/mcp55/romstrap.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/southbridge/nvidia/mcp55/romstrap.lds
+ldscript-y += ../../../../src/cpu/x86/32bit/entry32.lds
 ldscript-y += ../../../../src/arch/i386/lib/failover.lds
 ldscript-$(CONFIG_AP_CODE_IN_CAR) += 
../../../../src/arch/i386/init/ldscript_apc.lb
 
Index: src/arch/i386/Makefile.tinybootblock.inc
===================================================================
--- src/arch/i386/Makefile.tinybootblock.inc    (revision 4999)
+++ src/arch/i386/Makefile.tinybootblock.inc    (working copy)
@@ -24,20 +24,15 @@
 bootblock_lds += $(src)/cpu/x86/16bit/entry16.lds
 bootblock_lds += $(src)/cpu/x86/16bit/reset16.lds
 bootblock_lds += $(src)/arch/i386/lib/id.lds
-ifeq ($(CONFIG_SOUTHBRIDGE_VIA_K8T890),y)
-bootblock_lds += $(src)/southbridge/via/k8t890/romstrap.lds
-endif
+bootblock_lds += $(chipset_bootblock_lds)
 
 bootblock_inc := $(src)/arch/i386/init/bootblock_prologue.c
 bootblock_inc += $(src)/cpu/x86/16bit/entry16.inc
 bootblock_inc += $(src)/cpu/x86/16bit/reset16.inc
 bootblock_inc += $(src)/cpu/x86/32bit/entry32.inc
 bootblock_inc += $(src)/arch/i386/lib/id.inc
+bootblock_inc += $(chipset_bootblock_inc)
 
-ifeq ($(CONFIG_SOUTHBRIDGE_VIA_K8T890),y)
-bootblock_inc += $(src)/southbridge/via/k8t890/romstrap.inc
-endif
-
 ifeq ($(CONFIG_SSE),y)
 bootblock_inc += $(src)/cpu/x86/sse_enable.inc
 endif
-- 
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot

Reply via email to