summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Reinauer <stefan.reinauer@coreboot.org>2015-04-27 14:04:38 -0700
committerStefan Reinauer <stefan.reinauer@coreboot.org>2015-04-29 18:12:14 +0200
commite1133b7d7d353480e135bf0f94e4d0f94a617360 (patch)
tree12d30d107a965f2530f6829a1c1c254267f71fc0
parentaae53ab76aa818bcf3a7df1e44a80289a2ac6018 (diff)
downloadcoreboot-e1133b7d7d353480e135bf0f94e4d0f94a617360.tar.xz
kbuild: automatically include northbridges
This change switches all northbridge vendors and southbridges to be autoincluded by Makefile.inc, rather than having to be mentioned explicitly in northbridge/Makefile.inc or in northbridge/<vendor>/Makefile.inc. This means, vendor and northbridge directories are now "drop in", e.g. be placed in the coreboot directory hierarchy without having to modify any higher level coreboot files. The long term plan is to enable out of tree components to be built with a given coreboot version (given that the API did not change). Change-Id: I8468154dbfaaaffcba9fda27ba2d7b9049ad5c19 Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org> Reviewed-on: http://review.coreboot.org/9800 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <pgeorgi@google.com>
-rw-r--r--Makefile.inc4
-rw-r--r--src/northbridge/Makefile.inc5
-rw-r--r--src/northbridge/amd/Makefile.inc8
-rw-r--r--src/northbridge/amd/agesa/Makefile.inc5
-rw-r--r--src/northbridge/amd/amdfam10/Makefile.inc4
-rw-r--r--src/northbridge/amd/amdk8/Makefile.inc4
-rw-r--r--src/northbridge/amd/cimx/Makefile.inc4
-rw-r--r--src/northbridge/amd/gx2/Makefile.inc4
-rw-r--r--src/northbridge/amd/lx/Makefile.inc4
-rw-r--r--src/northbridge/amd/pi/Makefile.inc4
-rw-r--r--src/northbridge/dmp/Makefile.inc20
-rw-r--r--src/northbridge/dmp/vortex86ex/Makefile.inc4
-rw-r--r--src/northbridge/intel/Makefile.inc21
-rw-r--r--src/northbridge/intel/e7501/Makefile.inc4
-rw-r--r--src/northbridge/intel/e7505/Makefile.inc4
-rw-r--r--src/northbridge/intel/fsp_rangeley/Makefile.inc3
-rw-r--r--src/northbridge/intel/fsp_sandybridge/Makefile.inc3
-rw-r--r--src/northbridge/intel/gm45/Makefile.inc4
-rw-r--r--src/northbridge/intel/haswell/Makefile.inc3
-rw-r--r--src/northbridge/intel/i3100/Makefile.inc4
-rw-r--r--src/northbridge/intel/i440bx/Makefile.inc4
-rw-r--r--src/northbridge/intel/i440lx/Makefile.inc4
-rw-r--r--src/northbridge/intel/i5000/Makefile.inc4
-rw-r--r--src/northbridge/intel/i82810/Makefile.inc4
-rw-r--r--src/northbridge/intel/i82830/Makefile.inc4
-rw-r--r--src/northbridge/intel/i855/Makefile.inc4
-rw-r--r--src/northbridge/intel/i945/Makefile.inc4
-rw-r--r--src/northbridge/intel/nehalem/Makefile.inc3
-rw-r--r--src/northbridge/intel/sandybridge/Makefile.inc3
-rw-r--r--src/northbridge/intel/sch/Makefile.inc4
-rw-r--r--src/northbridge/rdc/Makefile.inc1
-rw-r--r--src/northbridge/rdc/r8610/Makefile.inc4
-rw-r--r--src/northbridge/via/Makefile.inc4
-rw-r--r--src/northbridge/via/cn700/Makefile.inc4
-rw-r--r--src/northbridge/via/cx700/Makefile.inc4
-rw-r--r--src/northbridge/via/vx800/Makefile.inc4
-rw-r--r--src/northbridge/via/vx900/Makefile.inc4
37 files changed, 118 insertions, 61 deletions
diff --git a/Makefile.inc b/Makefile.inc
index 0a05b2f855..f1c9f15778 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -54,8 +54,8 @@ PHONY+= clean-abuild coreboot lint lint-stable build-dirs
# root source directories of coreboot
subdirs-y := src/lib src/console src/device
subdirs-y += src/ec/acpi $(wildcard src/ec/*/*) $(wildcard src/southbridge/*/*)
-subdirs-y += $(wildcard src/soc/*/*)
-subdirs-y += src/northbridge src/superio src/drivers src/cpu src/vendorcode
+subdirs-y += $(wildcard src/soc/*/*) $(wildcard src/northbridge/*/*)
+subdirs-y += src/superio src/drivers src/cpu src/vendorcode
subdirs-y += util/cbfstool util/sconfig util/nvramtool util/broadcom
subdirs-y += $(wildcard src/arch/*)
subdirs-y += src/mainboard/$(MAINBOARDDIR)
diff --git a/src/northbridge/Makefile.inc b/src/northbridge/Makefile.inc
deleted file mode 100644
index 1a5b1c8694..0000000000
--- a/src/northbridge/Makefile.inc
+++ /dev/null
@@ -1,5 +0,0 @@
-subdirs-y += amd
-subdirs-y += dmp
-subdirs-y += intel
-subdirs-y += rdc
-subdirs-y += via
diff --git a/src/northbridge/amd/Makefile.inc b/src/northbridge/amd/Makefile.inc
deleted file mode 100644
index 80e9961f03..0000000000
--- a/src/northbridge/amd/Makefile.inc
+++ /dev/null
@@ -1,8 +0,0 @@
-subdirs-$(CONFIG_NORTHBRIDGE_AMD_AMDFAM10) += amdfam10
-subdirs-$(CONFIG_NORTHBRIDGE_AMD_AMDK8) += amdk8
-subdirs-$(CONFIG_NORTHBRIDGE_AMD_GX2) += gx2
-subdirs-$(CONFIG_NORTHBRIDGE_AMD_LX) += lx
-subdirs-$(CONFIG_NORTHBRIDGE_AMD_AGESA) += agesa
-subdirs-$(CONFIG_NORTHBRIDGE_AMD_PI) += pi
-
-subdirs-$(CONFIG_AMD_NB_CIMX) += cimx
diff --git a/src/northbridge/amd/agesa/Makefile.inc b/src/northbridge/amd/agesa/Makefile.inc
index 8cf9ae3a3b..09d2d50347 100644
--- a/src/northbridge/amd/agesa/Makefile.inc
+++ b/src/northbridge/amd/agesa/Makefile.inc
@@ -16,6 +16,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+
+ifeq ($(CONFIG_NORTHBRIDGE_AMD_AGESA),y)
+
subdirs-$(CONFIG_NORTHBRIDGE_AMD_AGESA_FAMILY10) += family10
subdirs-$(CONFIG_NORTHBRIDGE_AMD_AGESA_FAMILY12) += family12
subdirs-$(CONFIG_NORTHBRIDGE_AMD_AGESA_FAMILY14) += family14
@@ -26,3 +29,5 @@ subdirs-$(CONFIG_NORTHBRIDGE_AMD_AGESA_FAMILY16_KB) += family16kb
romstage-y += def_callouts.c agesawrapper.c eventlog.c
ramstage-y += def_callouts.c agesawrapper.c eventlog.c
+
+endif
diff --git a/src/northbridge/amd/amdfam10/Makefile.inc b/src/northbridge/amd/amdfam10/Makefile.inc
index 65bdc0363c..8a105fd984 100644
--- a/src/northbridge/amd/amdfam10/Makefile.inc
+++ b/src/northbridge/amd/amdfam10/Makefile.inc
@@ -1,3 +1,5 @@
+ifeq ($(CONFIG_NORTHBRIDGE_AMD_AMDFAM10),y)
+
ramstage-y += northbridge.c
ramstage-y += misc_control.c
romstage-y += amdfam10_util.c
@@ -12,3 +14,5 @@ ramstage-y += get_pci1234.c
# Enable this if you want to check the values of the PCI routing registers.
# Call show_all_routes() anywhere amdfam10.h is included.
#ramstage-y += util.c
+
+endif
diff --git a/src/northbridge/amd/amdk8/Makefile.inc b/src/northbridge/amd/amdk8/Makefile.inc
index eeef9e8054..29274f48ec 100644
--- a/src/northbridge/amd/amdk8/Makefile.inc
+++ b/src/northbridge/amd/amdk8/Makefile.inc
@@ -1,3 +1,5 @@
+ifeq ($(CONFIG_NORTHBRIDGE_AMD_AMDK8),y)
+
ramstage-y += northbridge.c
ramstage-y += misc_control.c
ramstage-y += get_sblk_pci1234.c
@@ -27,3 +29,5 @@ ramstage-$(CONFIG_HAVE_ACPI_TABLES) += acpi.c
#
#end
#
+
+endif
diff --git a/src/northbridge/amd/cimx/Makefile.inc b/src/northbridge/amd/cimx/Makefile.inc
index 80844c87fe..a3b16572e0 100644
--- a/src/northbridge/amd/cimx/Makefile.inc
+++ b/src/northbridge/amd/cimx/Makefile.inc
@@ -17,4 +17,8 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_AMD_NB_CIMX),y)
+
subdirs-$(CONFIG_NORTHBRIDGE_AMD_CIMX_RD890) += rd890
+
+endif
diff --git a/src/northbridge/amd/gx2/Makefile.inc b/src/northbridge/amd/gx2/Makefile.inc
index ad904c4387..7936acb137 100644
--- a/src/northbridge/amd/gx2/Makefile.inc
+++ b/src/northbridge/amd/gx2/Makefile.inc
@@ -1,3 +1,7 @@
+ifeq ($(CONFIG_NORTHBRIDGE_AMD_GX2),y)
+
ramstage-y += northbridge.c
ramstage-y += northbridgeinit.c
ramstage-y += grphinit.c
+
+endif
diff --git a/src/northbridge/amd/lx/Makefile.inc b/src/northbridge/amd/lx/Makefile.inc
index 5ff227d9ee..19d9e44db6 100644
--- a/src/northbridge/amd/lx/Makefile.inc
+++ b/src/northbridge/amd/lx/Makefile.inc
@@ -1,5 +1,9 @@
+ifeq ($(CONFIG_NORTHBRIDGE_AMD_LX),y)
+
ramstage-y += northbridge.c
ramstage-y += northbridgeinit.c
ramstage-y += grphinit.c
romstage-y += raminit.c
+
+endif
diff --git a/src/northbridge/amd/pi/Makefile.inc b/src/northbridge/amd/pi/Makefile.inc
index 3ded87f58d..9cd7410be3 100644
--- a/src/northbridge/amd/pi/Makefile.inc
+++ b/src/northbridge/amd/pi/Makefile.inc
@@ -17,6 +17,8 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_NORTHBRIDGE_AMD_PI),y)
+
subdirs-$(CONFIG_NORTHBRIDGE_AMD_PI_00630F01) += 00630F01
subdirs-$(CONFIG_NORTHBRIDGE_AMD_PI_00730F01) += 00730F01
@@ -24,3 +26,5 @@ romstage-y += agesawrapper.c
romstage-y += def_callouts.c
ramstage-y += agesawrapper.c
ramstage-y += def_callouts.c
+
+endif
diff --git a/src/northbridge/dmp/Makefile.inc b/src/northbridge/dmp/Makefile.inc
deleted file mode 100644
index 3cfcc48442..0000000000
--- a/src/northbridge/dmp/Makefile.inc
+++ /dev/null
@@ -1,20 +0,0 @@
-##
-## This file is part of the coreboot project.
-##
-## Copyright (C) 2013 DMP Electronics Inc.
-##
-## 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
-##
-
-subdirs-$(CONFIG_NORTHBRIDGE_DMP_VORTEX86EX) += vortex86ex
diff --git a/src/northbridge/dmp/vortex86ex/Makefile.inc b/src/northbridge/dmp/vortex86ex/Makefile.inc
index 82b07fd5d5..9c83eff84f 100644
--- a/src/northbridge/dmp/vortex86ex/Makefile.inc
+++ b/src/northbridge/dmp/vortex86ex/Makefile.inc
@@ -17,5 +17,9 @@
## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
##
+ifeq ($(CONFIG_NORTHBRIDGE_DMP_VORTEX86EX),y)
+
ramstage-y += northbridge.c
ramstage-y += xgi_oprom.c
+
+endif
diff --git a/src/northbridge/intel/Makefile.inc b/src/northbridge/intel/Makefile.inc
deleted file mode 100644
index 90fa696e7c..0000000000
--- a/src/northbridge/intel/Makefile.inc
+++ /dev/null
@@ -1,21 +0,0 @@
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_E7501) += e7501
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_E7505) += e7505
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_I3100) += i3100
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_I440BX) += i440bx
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_I440LX) += i440lx
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_I82810) += i82810
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_I82830) += i82830
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_I855) += i855
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_I945) += i945
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_GM45) += gm45
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_SCH) += sch
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_I5000) += i5000
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_NEHALEM) += nehalem
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_SANDYBRIDGE) += sandybridge
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_SANDYBRIDGE_NATIVE) += sandybridge
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_IVYBRIDGE) += sandybridge
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_IVYBRIDGE_NATIVE) += sandybridge
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_HASWELL) += haswell
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_FSP_SANDYBRIDGE) += fsp_sandybridge
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_FSP_IVYBRIDGE) += fsp_sandybridge
-subdirs-$(CONFIG_NORTHBRIDGE_INTEL_FSP_RANGELEY) += fsp_rangeley
diff --git a/src/northbridge/intel/e7501/Makefile.inc b/src/northbridge/intel/e7501/Makefile.inc
index 23eada5ad3..756dc89712 100644
--- a/src/northbridge/intel/e7501/Makefile.inc
+++ b/src/northbridge/intel/e7501/Makefile.inc
@@ -1 +1,5 @@
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_E7501),y)
+
ramstage-y += northbridge.c
+
+endif
diff --git a/src/northbridge/intel/e7505/Makefile.inc b/src/northbridge/intel/e7505/Makefile.inc
index 8c50e404b2..89a5b8cb70 100644
--- a/src/northbridge/intel/e7505/Makefile.inc
+++ b/src/northbridge/intel/e7505/Makefile.inc
@@ -1,3 +1,7 @@
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_E7505),y)
+
ramstage-y += northbridge.c
romstage-y += raminit.c
romstage-y += debug.c
+
+endif
diff --git a/src/northbridge/intel/fsp_rangeley/Makefile.inc b/src/northbridge/intel/fsp_rangeley/Makefile.inc
index 6cb6cb2349..e9f7a8556b 100644
--- a/src/northbridge/intel/fsp_rangeley/Makefile.inc
+++ b/src/northbridge/intel/fsp_rangeley/Makefile.inc
@@ -18,6 +18,8 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_FSP_RANGELEY),y)
+
subdirs-y += fsp
ramstage-y += northbridge.c
ramstage-y += raminit.c
@@ -36,3 +38,4 @@ CPPFLAGS_common += -I$(src)/mainboard/$(MAINBOARDDIR)
CPPFLAGS_common += -I$(src)/northbridge/intel/fsp_rangeley/
CPPFLAGS_common += -I$(src)/northbridge/intel/fsp_rangeley/fsp
+endif
diff --git a/src/northbridge/intel/fsp_sandybridge/Makefile.inc b/src/northbridge/intel/fsp_sandybridge/Makefile.inc
index ca6f345daf..c4e699a5f2 100644
--- a/src/northbridge/intel/fsp_sandybridge/Makefile.inc
+++ b/src/northbridge/intel/fsp_sandybridge/Makefile.inc
@@ -18,6 +18,8 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_FSP_SANDYBRIDGE)$(CONFIG_NORTHBRIDGE_INTEL_FSP_IVYBRIDGE),y)
+
subdirs-y += fsp
ramstage-y += northbridge.c
ramstage-y += ram_calc.c
@@ -36,3 +38,4 @@ smm-$(CONFIG_HAVE_SMI_HANDLER) += finalize.c
CPPFLAGS_common += -I$(src)/northbridge/intel/fsp_sandybridge/fsp
+endif
diff --git a/src/northbridge/intel/gm45/Makefile.inc b/src/northbridge/intel/gm45/Makefile.inc
index 13525257da..5fb9a442e4 100644
--- a/src/northbridge/intel/gm45/Makefile.inc
+++ b/src/northbridge/intel/gm45/Makefile.inc
@@ -17,6 +17,8 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_GM45),y)
+
romstage-y += early_init.c
romstage-y += early_reset.c
romstage-y += delay.c
@@ -38,3 +40,5 @@ ramstage-y += northbridge.c
ramstage-y += gma.c
smm-$(CONFIG_HAVE_SMI_HANDLER) += delay.c
+
+endif
diff --git a/src/northbridge/intel/haswell/Makefile.inc b/src/northbridge/intel/haswell/Makefile.inc
index ab7e6ef640..0173dbfa58 100644
--- a/src/northbridge/intel/haswell/Makefile.inc
+++ b/src/northbridge/intel/haswell/Makefile.inc
@@ -17,6 +17,8 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_HASWELL),y)
+
ramstage-y += ram_calc.c
ramstage-y += northbridge.c
ramstage-y += gma.c
@@ -52,3 +54,4 @@ mrc.cache-position := 0xfffe0000
mrc.cache-type := mrc_cache
endif
+endif
diff --git a/src/northbridge/intel/i3100/Makefile.inc b/src/northbridge/intel/i3100/Makefile.inc
index 3ad40f5d86..16291bf5d8 100644
--- a/src/northbridge/intel/i3100/Makefile.inc
+++ b/src/northbridge/intel/i3100/Makefile.inc
@@ -1,3 +1,7 @@
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_I3100),y)
+
ramstage-y += northbridge.c
ramstage-y += pciexp_porta.c
ramstage-y += pciexp_porta_ep80579.c
+
+endif
diff --git a/src/northbridge/intel/i440bx/Makefile.inc b/src/northbridge/intel/i440bx/Makefile.inc
index 137d24fd01..2b32f2ba9a 100644
--- a/src/northbridge/intel/i440bx/Makefile.inc
+++ b/src/northbridge/intel/i440bx/Makefile.inc
@@ -18,7 +18,11 @@
## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
##
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_I440BX),y)
+
ramstage-y += northbridge.c
romstage-y += raminit.c
romstage-y += debug.c
+
+endif
diff --git a/src/northbridge/intel/i440lx/Makefile.inc b/src/northbridge/intel/i440lx/Makefile.inc
index a67331f75b..dc1a1df591 100644
--- a/src/northbridge/intel/i440lx/Makefile.inc
+++ b/src/northbridge/intel/i440lx/Makefile.inc
@@ -18,4 +18,8 @@
## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
##
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_I440LX),y)
+
ramstage-y += northbridge.c
+
+endif
diff --git a/src/northbridge/intel/i5000/Makefile.inc b/src/northbridge/intel/i5000/Makefile.inc
index 767cd7e047..3c98e668fb 100644
--- a/src/northbridge/intel/i5000/Makefile.inc
+++ b/src/northbridge/intel/i5000/Makefile.inc
@@ -17,6 +17,10 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_I5000),y)
+
ramstage-y += northbridge.c
romstage-y += raminit.c
cpu_incs += src/northbridge/intel/i5000/halt_second_bsp.S
+
+endif
diff --git a/src/northbridge/intel/i82810/Makefile.inc b/src/northbridge/intel/i82810/Makefile.inc
index 137d24fd01..1fb5e2d241 100644
--- a/src/northbridge/intel/i82810/Makefile.inc
+++ b/src/northbridge/intel/i82810/Makefile.inc
@@ -18,7 +18,11 @@
## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
##
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_I82810),y)
+
ramstage-y += northbridge.c
romstage-y += raminit.c
romstage-y += debug.c
+
+endif
diff --git a/src/northbridge/intel/i82830/Makefile.inc b/src/northbridge/intel/i82830/Makefile.inc
index 239457048c..ebbae8111d 100644
--- a/src/northbridge/intel/i82830/Makefile.inc
+++ b/src/northbridge/intel/i82830/Makefile.inc
@@ -1,4 +1,8 @@
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_I82830),y)
+
ramstage-y += northbridge.c
ramstage-y += vga.c
smm-$(CONFIG_HAVE_SMI_HANDLER) += smihandler.c
+
+endif
diff --git a/src/northbridge/intel/i855/Makefile.inc b/src/northbridge/intel/i855/Makefile.inc
index 23eada5ad3..4dfc358fa0 100644
--- a/src/northbridge/intel/i855/Makefile.inc
+++ b/src/northbridge/intel/i855/Makefile.inc
@@ -1 +1,5 @@
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_I855),y)
+
ramstage-y += northbridge.c
+
+endif
diff --git a/src/northbridge/intel/i945/Makefile.inc b/src/northbridge/intel/i945/Makefile.inc
index d3a795cfd6..19bba6d51e 100644
--- a/src/northbridge/intel/i945/Makefile.inc
+++ b/src/northbridge/intel/i945/Makefile.inc
@@ -17,6 +17,8 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_I945),y)
+
ramstage-y += ram_calc.c
ramstage-y += northbridge.c
ramstage-y += gma.c
@@ -29,3 +31,5 @@ romstage-y += errata.c
romstage-y += debug.c
smm-y += udelay.c
+
+endif
diff --git a/src/northbridge/intel/nehalem/Makefile.inc b/src/northbridge/intel/nehalem/Makefile.inc
index ff656280ec..0b58f8dc04 100644
--- a/src/northbridge/intel/nehalem/Makefile.inc
+++ b/src/northbridge/intel/nehalem/Makefile.inc
@@ -17,6 +17,8 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_NEHALEM),y)
+
ramstage-y += ram_calc.c
ramstage-y += northbridge.c
ramstage-y += gma.c
@@ -42,3 +44,4 @@ mrc.cache-file := $(obj)/mrc.cache
mrc.cache-position := 0xfffe0000
mrc.cache-type := mrc_cache
+endif
diff --git a/src/northbridge/intel/sandybridge/Makefile.inc b/src/northbridge/intel/sandybridge/Makefile.inc
index 3930a6e22b..9f554f71bb 100644
--- a/src/northbridge/intel/sandybridge/Makefile.inc
+++ b/src/northbridge/intel/sandybridge/Makefile.inc
@@ -17,6 +17,8 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_SANDYBRIDGE_NATIVE)$(CONFIG_NORTHBRIDGE_INTEL_SANDYBRIDGE)$(CONFIG_NORTHBRIDGE_INTEL_IVYBRIDGE_NATIVE)$(CONFIG_NORTHBRIDGE_INTEL_IVYBRIDGE),y)
+
ramstage-y += ram_calc.c
ramstage-y += northbridge.c
ramstage-y += gma.c
@@ -65,3 +67,4 @@ mrc.cache-position := $(mrc-cache-position-y)
mrc.cache-type := mrc_cache
endif
+endif
diff --git a/src/northbridge/intel/sch/Makefile.inc b/src/northbridge/intel/sch/Makefile.inc
index 16152b7c9a..7757179187 100644
--- a/src/northbridge/intel/sch/Makefile.inc
+++ b/src/northbridge/intel/sch/Makefile.inc
@@ -17,7 +17,11 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+ifeq ($(CONFIG_NORTHBRIDGE_INTEL_SCH),y)
+
ramstage-y += northbridge.c
ramstage-y += gma.c
ramstage-y += port_access.c
ramstage-y += acpi.c
+
+endif
diff --git a/src/northbridge/rdc/Makefile.inc b/src/northbridge/rdc/Makefile.inc
deleted file mode 100644
index 9b7a0d061e..0000000000
--- a/src/northbridge/rdc/Makefile.inc
+++ /dev/null
@@ -1 +0,0 @@
-subdirs-$(CONFIG_NORTHBRIDGE_RDC_R8610) += r8610
diff --git a/src/northbridge/rdc/r8610/Makefile.inc b/src/northbridge/rdc/r8610/Makefile.inc
index 35e423ac73..0f2f8660fb 100644
--- a/src/northbridge/rdc/r8610/Makefile.inc
+++ b/src/northbridge/rdc/r8610/Makefile.inc
@@ -18,4 +18,8 @@
## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
##
+ifeq ($(CONFIG_NORTHBRIDGE_RDC_R8610),y)
+
ramstage-y += northbridge.c
+
+endif
diff --git a/src/northbridge/via/Makefile.inc b/src/northbridge/via/Makefile.inc
deleted file mode 100644
index b3d595e9b9..0000000000
--- a/src/northbridge/via/Makefile.inc
+++ /dev/null
@@ -1,4 +0,0 @@
-subdirs-$(CONFIG_NORTHBRIDGE_VIA_CN700) += cn700
-subdirs-$(CONFIG_NORTHBRIDGE_VIA_CX700) += cx700
-subdirs-$(CONFIG_NORTHBRIDGE_VIA_VX800) += vx800
-subdirs-$(CONFIG_NORTHBRIDGE_VIA_VX900) += vx900
diff --git a/src/northbridge/via/cn700/Makefile.inc b/src/northbridge/via/cn700/Makefile.inc
index ebe915f549..9feddd506a 100644
--- a/src/northbridge/via/cn700/Makefile.inc
+++ b/src/northbridge/via/cn700/Makefile.inc
@@ -18,6 +18,10 @@
## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
##
+ifeq ($(CONFIG_NORTHBRIDGE_VIA_CN700),y)
+
ramstage-y += northbridge.c
ramstage-y += agp.c
ramstage-y += vga.c
+
+endif
diff --git a/src/northbridge/via/cx700/Makefile.inc b/src/northbridge/via/cx700/Makefile.inc
index 03b52c6ff9..57bf2b5230 100644
--- a/src/northbridge/via/cx700/Makefile.inc
+++ b/src/northbridge/via/cx700/Makefile.inc
@@ -17,6 +17,8 @@
## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
##
+ifeq ($(CONFIG_NORTHBRIDGE_VIA_CX700),y)
+
ramstage-y += reset.c
ramstage-y += northbridge.c
@@ -24,3 +26,5 @@ ramstage-y += agp.c
ramstage-y += lpc.c
ramstage-y += sata.c
ramstage-y += vga.c
+
+endif
diff --git a/src/northbridge/via/vx800/Makefile.inc b/src/northbridge/via/vx800/Makefile.inc
index 2305db9b45..951fc7121d 100644
--- a/src/northbridge/via/vx800/Makefile.inc
+++ b/src/northbridge/via/vx800/Makefile.inc
@@ -18,6 +18,8 @@
## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
##
+ifeq ($(CONFIG_NORTHBRIDGE_VIA_VX800),y)
+
ramstage-y += northbridge.c
ramstage-y += vga.c
ramstage-y += lpc.c
@@ -25,3 +27,5 @@ ramstage-y += ide.c
chipset_bootblock_inc += $(src)/northbridge/via/vx800/romstrap.inc
bootblock-y += romstrap.ld
+
+endif
diff --git a/src/northbridge/via/vx900/Makefile.inc b/src/northbridge/via/vx900/Makefile.inc
index b51030944a..6178c114ab 100644
--- a/src/northbridge/via/vx900/Makefile.inc
+++ b/src/northbridge/via/vx900/Makefile.inc
@@ -17,6 +17,8 @@
## along with this program. If not, see <http://www.gnu.org/licenses/>.
##
+ifeq ($(CONFIG_NORTHBRIDGE_VIA_VX900),y)
+
romstage-y += pci_util.c
romstage-y += early_smbus.c
romstage-y += early_vx900.c
@@ -46,3 +48,5 @@ ramstage-y += ./../../../drivers/pc80/vga/vga_io.c
chipset_bootblock_inc += $(src)/northbridge/via/vx900/romstrap.inc
bootblock-y += romstrap.ld
+
+endif