This patch drops the coreboot CMOS checksum ranges from Kconfig because
the information is already specified in cmos.layout. coreboot is changed
to use that version instead.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Ronald G. Minnich <rminnich@gmai.com>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5313 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
diff --git a/src/Kconfig b/src/Kconfig
index e4b4e03..05173ac 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -214,18 +214,6 @@
 	hex
 	default 0x20000
 
-config LB_CKS_RANGE_START
-	int
-	default 49
-
-config LB_CKS_RANGE_END
-	int
-	default 125
-
-config LB_CKS_LOC
-	int
-	default 126
-
 config LOGICAL_CPUS
 	bool
 	default y
diff --git a/src/arch/i386/Makefile.inc b/src/arch/i386/Makefile.inc
index 1d64346..8d3e509 100644
--- a/src/arch/i386/Makefile.inc
+++ b/src/arch/i386/Makefile.inc
@@ -59,9 +59,9 @@
 	@printf "    OPTION     $(subst $(obj)/,,$(@))\n"
 	$(obj)/build_opt_tbl --config $(top)/src/mainboard/$(MAINBOARDDIR)/cmos.layout --header $(obj)/option_table.h --option $(obj)/option_table.c
 
-$(obj)/build_opt_tbl: $(top)/util/options/build_opt_tbl.c $(top)/src/include/pc80/mc146818rtc.h $(top)/src/include/boot/coreboot_tables.h $(obj)/config.h
+$(obj)/build_opt_tbl: $(top)/util/options/build_opt_tbl.c $(top)/src/include/pc80/mc146818rtc.h $(top)/src/include/boot/coreboot_tables.h
 	@printf "    HOSTCC     $(subst $(obj)/,,$(@))\n"
-	$(HOSTCC) $(HOSTCFLAGS) -include $(obj)/config.h $< -o $@
+	$(HOSTCC) $(HOSTCFLAGS) $< -o $@
 
 #######################################################################
 # Build the coreboot_ram (stage 2)
diff --git a/src/arch/i386/boot/coreboot_table.c b/src/arch/i386/boot/coreboot_table.c
index 8baaab4..d904c91 100644
--- a/src/arch/i386/boot/coreboot_table.c
+++ b/src/arch/i386/boot/coreboot_table.c
@@ -2,7 +2,7 @@
  * This file is part of the coreboot project.
  * 
  * Copyright (C) 2003-2004 Eric Biederman
- * Copyright (C) 2005-2009 coresystems GmbH
+ * Copyright (C) 2005-2010 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
@@ -29,6 +29,9 @@
 #include <version.h>
 #include <device/device.h>
 #include <stdlib.h>
+#if (CONFIG_HAVE_OPTION_TABLE == 1)
+#include <pc80/mc146818rtc.h>
+#endif
 
 static struct lb_header *lb_table_init(unsigned long addr)
 {
@@ -196,9 +199,9 @@
 
 	cmos_checksum->size = (sizeof(*cmos_checksum));
 
-	cmos_checksum->range_start = CONFIG_LB_CKS_RANGE_START * 8;
-	cmos_checksum->range_end = ( CONFIG_LB_CKS_RANGE_END * 8 ) + 7;
-	cmos_checksum->location = CONFIG_LB_CKS_LOC * 8;
+	cmos_checksum->range_start = LB_CKS_RANGE_START * 8;
+	cmos_checksum->range_end = ( LB_CKS_RANGE_END * 8 ) + 7;
+	cmos_checksum->location = LB_CKS_LOC * 8;
 	cmos_checksum->type = CHECKSUM_PCBIOS;
 	
 	return cmos_checksum;
diff --git a/src/include/pc80/mc146818rtc.h b/src/include/pc80/mc146818rtc.h
index 1561e4e..9fb04c2 100644
--- a/src/include/pc80/mc146818rtc.h
+++ b/src/include/pc80/mc146818rtc.h
@@ -81,15 +81,9 @@
 #define PC_CKS_RANGE_END	45
 #define PC_CKS_LOC		46
 
-/* Linux bios checksum is built only over bytes 49..125 */
-#ifndef CONFIG_LB_CKS_RANGE_START
-#define CONFIG_LB_CKS_RANGE_START	49
-#endif
-#ifndef CONFIG_LB_CKS_RANGE_END
-#define CONFIG_LB_CKS_RANGE_END	125
-#endif
-#ifndef CONFIG_LB_CKS_LOC
-#define CONFIG_LB_CKS_LOC		126
+/* coreboot cmos checksum is usually only built over bytes 49..125 */
+#ifdef AUTOCONF_INCLUDED
+#include <option_table.h>
 #endif
 
 #if !defined(ASSEMBLY)
@@ -97,7 +91,8 @@
 #if CONFIG_USE_OPTION_TABLE == 1
 int get_option(void *dest, const char *name);
 #else
-static inline int get_option(void *dest, const char *name) { return -2; }
+static inline int get_option(void *dest __attribute__((unused)),
+	const char *name __attribute__((unused))) { return -2; }
 #endif
 #endif
 
diff --git a/src/lib/Makefile.inc b/src/lib/Makefile.inc
index 93d3c30..5b40912 100644
--- a/src/lib/Makefile.inc
+++ b/src/lib/Makefile.inc
@@ -30,4 +30,4 @@
 
 smmobj-y += memcpy.o
 
-$(obj)/lib/version.o :: $(obj)/build.h
+$(obj)/lib/version.o : $(obj)/build.h
diff --git a/src/mainboard/amd/dbm690t/Kconfig b/src/mainboard/amd/dbm690t/Kconfig
index ce9d08c..4cfc8ca 100644
--- a/src/mainboard/amd/dbm690t/Kconfig
+++ b/src/mainboard/amd/dbm690t/Kconfig
@@ -49,16 +49,6 @@
 	default 0x0
 	depends on BOARD_AMD_DBM690T
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_AMD_DBM690T
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_AMD_DBM690T
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "DBM690T"
diff --git a/src/mainboard/amd/mahogany/Kconfig b/src/mainboard/amd/mahogany/Kconfig
index 7b3a6c3..3be2624 100644
--- a/src/mainboard/amd/mahogany/Kconfig
+++ b/src/mainboard/amd/mahogany/Kconfig
@@ -51,16 +51,6 @@
 	default 0x0
 	depends on BOARD_AMD_MAHOGANY
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_AMD_MAHOGANY
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_AMD_MAHOGANY
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "MAHOGANY"
diff --git a/src/mainboard/amd/mahogany_fam10/Kconfig b/src/mainboard/amd/mahogany_fam10/Kconfig
index 2c37933..7e8d52d 100644
--- a/src/mainboard/amd/mahogany_fam10/Kconfig
+++ b/src/mainboard/amd/mahogany_fam10/Kconfig
@@ -35,16 +35,6 @@
 	default 0x0
 	depends on BOARD_AMD_MAHOGANY_FAM10
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_AMD_MAHOGANY_FAM10
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_AMD_MAHOGANY_FAM10
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "Mahogany (Fam10)"
diff --git a/src/mainboard/amd/pistachio/Kconfig b/src/mainboard/amd/pistachio/Kconfig
index d41b7a8..807b30a 100644
--- a/src/mainboard/amd/pistachio/Kconfig
+++ b/src/mainboard/amd/pistachio/Kconfig
@@ -43,16 +43,6 @@
 	default 0x0
 	depends on BOARD_AMD_PISTACHIO
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_AMD_PISTACHIO
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_AMD_PISTACHIO
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "Pistachio"
diff --git a/src/mainboard/amd/serengeti_cheetah/Kconfig b/src/mainboard/amd/serengeti_cheetah/Kconfig
index 2814654..b57bed0 100644
--- a/src/mainboard/amd/serengeti_cheetah/Kconfig
+++ b/src/mainboard/amd/serengeti_cheetah/Kconfig
@@ -46,16 +46,6 @@
 	default 0x8
 	depends on BOARD_AMD_SERENGETI_CHEETAH
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_AMD_SERENGETI_CHEETAH
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_AMD_SERENGETI_CHEETAH
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "Serengeti Cheetah"
diff --git a/src/mainboard/amd/serengeti_cheetah_fam10/Kconfig b/src/mainboard/amd/serengeti_cheetah_fam10/Kconfig
index f74e40c..1c42e7a 100644
--- a/src/mainboard/amd/serengeti_cheetah_fam10/Kconfig
+++ b/src/mainboard/amd/serengeti_cheetah_fam10/Kconfig
@@ -33,16 +33,6 @@
 	default 0x0
 	depends on BOARD_AMD_SERENGETI_CHEETAH_FAM10
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_AMD_SERENGETI_CHEETAH_FAM10
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_AMD_SERENGETI_CHEETAH_FAM10
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "Serengeti Cheetah (Fam10)"
diff --git a/src/mainboard/arima/hdama/Kconfig b/src/mainboard/arima/hdama/Kconfig
index 9f155cc..f4fb574 100644
--- a/src/mainboard/arima/hdama/Kconfig
+++ b/src/mainboard/arima/hdama/Kconfig
@@ -35,16 +35,6 @@
 	default 0x0
 	depends on BOARD_ARIMA_HDAMA
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_ARIMA_HDAMA
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_ARIMA_HDAMA
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "HDAMA"
diff --git a/src/mainboard/asus/a8n_e/Kconfig b/src/mainboard/asus/a8n_e/Kconfig
index 5431287d..364699a 100644
--- a/src/mainboard/asus/a8n_e/Kconfig
+++ b/src/mainboard/asus/a8n_e/Kconfig
@@ -49,16 +49,6 @@
 	default n
 	depends on BOARD_ASUS_A8N_E
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_ASUS_A8N_E
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_ASUS_A8N_E
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "A8N-E"
diff --git a/src/mainboard/asus/a8v-e_se/Kconfig b/src/mainboard/asus/a8v-e_se/Kconfig
index a8319b3..3dba3bf 100644
--- a/src/mainboard/asus/a8v-e_se/Kconfig
+++ b/src/mainboard/asus/a8v-e_se/Kconfig
@@ -49,16 +49,6 @@
 	default n
 	depends on BOARD_ASUS_A8V_E_SE
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_ASUS_A8V_E_SE
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_ASUS_A8V_E_SE
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "A8V-E SE"
diff --git a/src/mainboard/asus/m2v-mx_se/Kconfig b/src/mainboard/asus/m2v-mx_se/Kconfig
index 254a3c3..2aa7b56 100644
--- a/src/mainboard/asus/m2v-mx_se/Kconfig
+++ b/src/mainboard/asus/m2v-mx_se/Kconfig
@@ -82,16 +82,6 @@
 	default 0x40000
 	depends on BOARD_ASUS_M2V_MX_SE
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_ASUS_M2V_MX_SE
-
-config LB_CKS_LOC
-	int
-	default	123
-	depends	on BOARD_ASUS_M2V_MX_SE
-
 config HT_CHAIN_UNITID_BASE
 	hex
 	default 0x0
diff --git a/src/mainboard/broadcom/blast/Kconfig b/src/mainboard/broadcom/blast/Kconfig
index f305e18..e97e018 100644
--- a/src/mainboard/broadcom/blast/Kconfig
+++ b/src/mainboard/broadcom/blast/Kconfig
@@ -46,16 +46,6 @@
 	default 1
 	depends on BOARD_BROADCOM_BLAST
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_BROADCOM_BLAST
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_BROADCOM_BLAST
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "Blast"
diff --git a/src/mainboard/dell/s1850/Kconfig b/src/mainboard/dell/s1850/Kconfig
index 112abb5..d4e546e 100644
--- a/src/mainboard/dell/s1850/Kconfig
+++ b/src/mainboard/dell/s1850/Kconfig
@@ -20,16 +20,6 @@
 	default dell/s1850
 	depends on BOARD_DELL_S1850
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_DELL_S1850
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_DELL_S1850
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "PowerEdge 1850"
diff --git a/src/mainboard/gigabyte/ga_2761gxdk/Kconfig b/src/mainboard/gigabyte/ga_2761gxdk/Kconfig
index 9873d6d..ac2f2ed 100644
--- a/src/mainboard/gigabyte/ga_2761gxdk/Kconfig
+++ b/src/mainboard/gigabyte/ga_2761gxdk/Kconfig
@@ -50,21 +50,6 @@
 	default 2
 	depends on BOARD_GIGABYTE_GA_2761GXDK
 
-config LB_CKS_RANGE_START
-	int
-	default 49
-	depends on BOARD_GIGABYTE_GA_2761GXDK
-
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_GIGABYTE_GA_2761GXDK
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_GIGABYTE_GA_2761GXDK
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "GA-2761GXDK"
diff --git a/src/mainboard/gigabyte/m57sli/Kconfig b/src/mainboard/gigabyte/m57sli/Kconfig
index 5a4f0a7..2125717 100644
--- a/src/mainboard/gigabyte/m57sli/Kconfig
+++ b/src/mainboard/gigabyte/m57sli/Kconfig
@@ -53,21 +53,6 @@
 	default 2
 	depends on BOARD_GIGABYTE_M57SLI
 
-config LB_CKS_RANGE_START
-	int
-	default 49
-	depends on BOARD_GIGABYTE_M57SLI
-
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_GIGABYTE_M57SLI
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_GIGABYTE_M57SLI
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "GA-M57SLI-S4"
diff --git a/src/mainboard/hp/dl145_g3/Kconfig b/src/mainboard/hp/dl145_g3/Kconfig
index bea50d7..3d6e0a9 100644
--- a/src/mainboard/hp/dl145_g3/Kconfig
+++ b/src/mainboard/hp/dl145_g3/Kconfig
@@ -52,16 +52,6 @@
 	default n
 	depends on BOARD_HP_DL145_G3
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_HP_DL145_G3
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_HP_DL145_G3
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "ProLiant DL145 G3"
diff --git a/src/mainboard/ibm/e325/Kconfig b/src/mainboard/ibm/e325/Kconfig
index bef8344..5698023 100644
--- a/src/mainboard/ibm/e325/Kconfig
+++ b/src/mainboard/ibm/e325/Kconfig
@@ -41,16 +41,6 @@
 	default 0x0
 	depends on BOARD_IBM_E325
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_IBM_E325
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_IBM_E325
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "eServer 325"
diff --git a/src/mainboard/ibm/e326/Kconfig b/src/mainboard/ibm/e326/Kconfig
index 94fa0ac..1ea7820 100644
--- a/src/mainboard/ibm/e326/Kconfig
+++ b/src/mainboard/ibm/e326/Kconfig
@@ -41,16 +41,6 @@
 	default 0x0
 	depends on BOARD_IBM_E326
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_IBM_E326
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_IBM_E326
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "eServer 326"
diff --git a/src/mainboard/intel/d945gclf/Kconfig b/src/mainboard/intel/d945gclf/Kconfig
index 58609ff..e701fb7 100644
--- a/src/mainboard/intel/d945gclf/Kconfig
+++ b/src/mainboard/intel/d945gclf/Kconfig
@@ -61,16 +61,6 @@
 	default 0x8000
 	depends on BOARD_INTEL_D945GCLF
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_INTEL_D945GCLF
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_INTEL_D945GCLF
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "D945GCLF"
diff --git a/src/mainboard/intel/eagleheights/Kconfig b/src/mainboard/intel/eagleheights/Kconfig
index d57834a..991fddf 100644
--- a/src/mainboard/intel/eagleheights/Kconfig
+++ b/src/mainboard/intel/eagleheights/Kconfig
@@ -38,16 +38,6 @@
 	default 0x8000
 	depends on BOARD_INTEL_EAGLEHEIGHTS
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_INTEL_EAGLEHEIGHTS
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_INTEL_EAGLEHEIGHTS
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "EagleHeights"
diff --git a/src/mainboard/intel/jarrell/Kconfig b/src/mainboard/intel/jarrell/Kconfig
index 042e1de..e5d5314 100644
--- a/src/mainboard/intel/jarrell/Kconfig
+++ b/src/mainboard/intel/jarrell/Kconfig
@@ -21,16 +21,6 @@
 	default intel/jarrell
 	depends on BOARD_INTEL_JARRELL
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_INTEL_JARRELL
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_INTEL_JARRELL
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "Jarrell"
diff --git a/src/mainboard/intel/mtarvon/Kconfig b/src/mainboard/intel/mtarvon/Kconfig
index 785c6b4..cea70b1 100644
--- a/src/mainboard/intel/mtarvon/Kconfig
+++ b/src/mainboard/intel/mtarvon/Kconfig
@@ -17,16 +17,6 @@
 	default intel/mtarvon
 	depends on BOARD_INTEL_MTARVON
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_INTEL_MTARVON
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_INTEL_MTARVON
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "3100 devkit (Mt. Arvon)"
diff --git a/src/mainboard/intel/truxton/Kconfig b/src/mainboard/intel/truxton/Kconfig
index 22c8983..5a382d3 100644
--- a/src/mainboard/intel/truxton/Kconfig
+++ b/src/mainboard/intel/truxton/Kconfig
@@ -18,16 +18,6 @@
 	default intel/truxton
 	depends on BOARD_INTEL_TRUXTON
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_INTEL_TRUXTON
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_INTEL_TRUXTON
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "Truxton"
diff --git a/src/mainboard/intel/xe7501devkit/Kconfig b/src/mainboard/intel/xe7501devkit/Kconfig
index 5024013..a83c1bc 100644
--- a/src/mainboard/intel/xe7501devkit/Kconfig
+++ b/src/mainboard/intel/xe7501devkit/Kconfig
@@ -21,21 +21,6 @@
 	default intel/xe7501devkit
 	depends on BOARD_INTEL_XE7501DEVKIT
 
-config LB_CKS_RANGE_START
-	int
-	default 128
-	depends on BOARD_INTEL_XE7501DEVKIT
-
-config LB_CKS_RANGE_END
-	int
-	default 130
-	depends on BOARD_INTEL_XE7501DEVKIT
-
-config LB_CKS_LOC
-	int
-	default 131
-	depends on BOARD_INTEL_XE7501DEVKIT
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "XE7501devkit"
diff --git a/src/mainboard/iwill/dk8_htx/Kconfig b/src/mainboard/iwill/dk8_htx/Kconfig
index 098e29b..dfdac01 100644
--- a/src/mainboard/iwill/dk8_htx/Kconfig
+++ b/src/mainboard/iwill/dk8_htx/Kconfig
@@ -45,16 +45,6 @@
 	default 0x10
 	depends on BOARD_IWILL_DK8_HTX
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_IWILL_DK8_HTX
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_IWILL_DK8_HTX
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "DK8-HTX"
diff --git a/src/mainboard/iwill/dk8s2/Kconfig b/src/mainboard/iwill/dk8s2/Kconfig
index 2a2b8c8..f0948b8 100644
--- a/src/mainboard/iwill/dk8s2/Kconfig
+++ b/src/mainboard/iwill/dk8s2/Kconfig
@@ -42,16 +42,6 @@
 	default 0x0
 	depends on BOARD_IWILL_DK8S2
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_IWILL_DK8S2
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_IWILL_DK8S2
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "DK8S2"
diff --git a/src/mainboard/iwill/dk8x/Kconfig b/src/mainboard/iwill/dk8x/Kconfig
index ccacfd2..4a4f402 100644
--- a/src/mainboard/iwill/dk8x/Kconfig
+++ b/src/mainboard/iwill/dk8x/Kconfig
@@ -41,16 +41,6 @@
 	default 0x0
 	depends on BOARD_IWILL_DK8X
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_IWILL_DK8X
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_IWILL_DK8X
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "DK8X"
diff --git a/src/mainboard/kontron/986lcd-m/Kconfig b/src/mainboard/kontron/986lcd-m/Kconfig
index 765d7b8..3feaec0 100644
--- a/src/mainboard/kontron/986lcd-m/Kconfig
+++ b/src/mainboard/kontron/986lcd-m/Kconfig
@@ -38,16 +38,6 @@
 	default 0x8000
 	depends on BOARD_KONTRON_986LCD_M
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_KONTRON_986LCD_M
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_KONTRON_986LCD_M
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "986LCD-M"
diff --git a/src/mainboard/kontron/kt690/Kconfig b/src/mainboard/kontron/kt690/Kconfig
index 0a695df..06bd6ff 100644
--- a/src/mainboard/kontron/kt690/Kconfig
+++ b/src/mainboard/kontron/kt690/Kconfig
@@ -35,26 +35,11 @@
 	default 0x6900
 	depends on BOARD_KONTRON_KT690
 
-config LB_CKS_RANGE_START
-	int
-	default 49
-	depends on BOARD_KONTRON_KT690
-
 config APIC_ID_OFFSET
 	hex
 	default 0x0
 	depends on BOARD_KONTRON_KT690
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_KONTRON_KT690
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_KONTRON_KT690
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "KT690/mITX"
diff --git a/src/mainboard/msi/ms7135/Kconfig b/src/mainboard/msi/ms7135/Kconfig
index fa33e53..1264ac9 100644
--- a/src/mainboard/msi/ms7135/Kconfig
+++ b/src/mainboard/msi/ms7135/Kconfig
@@ -34,16 +34,6 @@
 	default 2
 	depends on BOARD_MSI_MS7135
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_MSI_MS7135
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_MSI_MS7135
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "MS-7135"
diff --git a/src/mainboard/msi/ms7260/Kconfig b/src/mainboard/msi/ms7260/Kconfig
index 52a3651..7d5dc18 100644
--- a/src/mainboard/msi/ms7260/Kconfig
+++ b/src/mainboard/msi/ms7260/Kconfig
@@ -51,21 +51,6 @@
 	default 2
 	depends on BOARD_MSI_MS7260
 
-config LB_CKS_RANGE_START
-	int
-	default 49
-	depends on BOARD_MSI_MS7260
-
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_MSI_MS7260
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_MSI_MS7260
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "MS-7260"
diff --git a/src/mainboard/msi/ms9185/Kconfig b/src/mainboard/msi/ms9185/Kconfig
index 0274241..3bdd690 100644
--- a/src/mainboard/msi/ms9185/Kconfig
+++ b/src/mainboard/msi/ms9185/Kconfig
@@ -47,16 +47,6 @@
 	default 2
 	depends on BOARD_MSI_MS9185
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_MSI_MS9185
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_MSI_MS9185
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "MS-9185"
diff --git a/src/mainboard/msi/ms9282/Kconfig b/src/mainboard/msi/ms9282/Kconfig
index 1cc800b..691388f 100644
--- a/src/mainboard/msi/ms9282/Kconfig
+++ b/src/mainboard/msi/ms9282/Kconfig
@@ -45,21 +45,6 @@
 	default 1
 	depends on BOARD_MSI_MS9282
 
-config LB_CKS_RANGE_START
-	int
-	default 49
-	depends on BOARD_MSI_MS9282
-
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_MSI_MS9282
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_MSI_MS9282
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "MS-9282"
diff --git a/src/mainboard/msi/ms9652_fam10/Kconfig b/src/mainboard/msi/ms9652_fam10/Kconfig
index 87ca7cd..7b71295 100644
--- a/src/mainboard/msi/ms9652_fam10/Kconfig
+++ b/src/mainboard/msi/ms9652_fam10/Kconfig
@@ -92,21 +92,6 @@
 	default n
 	depends on BOARD_MSI_MS9652_FAM10
 
-config LB_CKS_RANGE_START
-	int
-	default 49
-	depends on BOARD_MSI_MS9652_FAM10
-
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_MSI_MS9652_FAM10
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_MSI_MS9652_FAM10
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "MS-9652"
diff --git a/src/mainboard/newisys/khepri/Kconfig b/src/mainboard/newisys/khepri/Kconfig
index b7d8370..5ba421e 100644
--- a/src/mainboard/newisys/khepri/Kconfig
+++ b/src/mainboard/newisys/khepri/Kconfig
@@ -45,16 +45,6 @@
 	default 0
 	depends on BOARD_NEWISYS_KHEPRI
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_NEWISYS_KHEPRI
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_NEWISYS_KHEPRI
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "Khepri"
diff --git a/src/mainboard/nvidia/l1_2pvv/Kconfig b/src/mainboard/nvidia/l1_2pvv/Kconfig
index 0db62a4..51502de 100644
--- a/src/mainboard/nvidia/l1_2pvv/Kconfig
+++ b/src/mainboard/nvidia/l1_2pvv/Kconfig
@@ -51,21 +51,6 @@
 	default 2
 	depends on BOARD_NVIDIA_L1_2PVV
 
-config LB_CKS_RANGE_START
-	int
-	default 49
-	depends on BOARD_NVIDIA_L1_2PVV
-
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_NVIDIA_L1_2PVV
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_NVIDIA_L1_2PVV
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "l1_2pvv"
diff --git a/src/mainboard/roda/rk886ex/Kconfig b/src/mainboard/roda/rk886ex/Kconfig
index 02aa0c5..60233a0 100644
--- a/src/mainboard/roda/rk886ex/Kconfig
+++ b/src/mainboard/roda/rk886ex/Kconfig
@@ -35,16 +35,6 @@
 	default 0x8000
 	depends on BOARD_RODA_RK886EX
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_RODA_RK886EX
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_RODA_RK886EX
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "RK886EX"
diff --git a/src/mainboard/sunw/ultra40/Kconfig b/src/mainboard/sunw/ultra40/Kconfig
index 49b292a..2cf8014 100644
--- a/src/mainboard/sunw/ultra40/Kconfig
+++ b/src/mainboard/sunw/ultra40/Kconfig
@@ -49,16 +49,6 @@
 	default n
 	depends on BOARD_SUNW_ULTRA40
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_SUNW_ULTRA40
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_SUNW_ULTRA40
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "Ultra 40"
diff --git a/src/mainboard/supermicro/h8dme/Kconfig b/src/mainboard/supermicro/h8dme/Kconfig
index c35c506..0956348 100644
--- a/src/mainboard/supermicro/h8dme/Kconfig
+++ b/src/mainboard/supermicro/h8dme/Kconfig
@@ -56,16 +56,6 @@
 	default n
 	depends on BOARD_SUPERMICRO_H8DME
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_SUPERMICRO_H8DME
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_SUPERMICRO_H8DME
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "H8DME-2"
diff --git a/src/mainboard/supermicro/h8dmr/Kconfig b/src/mainboard/supermicro/h8dmr/Kconfig
index 9fad7a3..09486c0 100644
--- a/src/mainboard/supermicro/h8dmr/Kconfig
+++ b/src/mainboard/supermicro/h8dmr/Kconfig
@@ -55,16 +55,6 @@
 	default n
 	depends on BOARD_SUPERMICRO_H8DMR
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_SUPERMICRO_H8DMR
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_SUPERMICRO_H8DMR
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "H8DMR-i2"
diff --git a/src/mainboard/supermicro/h8dmr_fam10/Kconfig b/src/mainboard/supermicro/h8dmr_fam10/Kconfig
index a325b70..b018629 100644
--- a/src/mainboard/supermicro/h8dmr_fam10/Kconfig
+++ b/src/mainboard/supermicro/h8dmr_fam10/Kconfig
@@ -73,16 +73,6 @@
 	default n
 	depends on BOARD_SUPERMICRO_H8DMR_FAM10
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_SUPERMICRO_H8DMR_FAM10
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_SUPERMICRO_H8DMR_FAM10
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "H8DMR-i2 (Fam10)"
diff --git a/src/mainboard/supermicro/h8qme_fam10/Kconfig b/src/mainboard/supermicro/h8qme_fam10/Kconfig
index 12622f4..98975cf 100644
--- a/src/mainboard/supermicro/h8qme_fam10/Kconfig
+++ b/src/mainboard/supermicro/h8qme_fam10/Kconfig
@@ -74,16 +74,6 @@
 	default n
 	depends on BOARD_SUPERMICRO_H8QME_FAM10
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_SUPERMICRO_H8QME_FAM10
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_SUPERMICRO_H8QME_FAM10
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "H8QME-2+ (Fam10)"
diff --git a/src/mainboard/supermicro/x6dai_g/Kconfig b/src/mainboard/supermicro/x6dai_g/Kconfig
index 908e897..fc224c5 100644
--- a/src/mainboard/supermicro/x6dai_g/Kconfig
+++ b/src/mainboard/supermicro/x6dai_g/Kconfig
@@ -17,16 +17,6 @@
 	default supermicro/x6dai_g
 	depends on BOARD_SUPERMICRO_X6DAI_G
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_SUPERMICRO_X6DAI_G
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_SUPERMICRO_X6DAI_G
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "X6DAi-G"
diff --git a/src/mainboard/supermicro/x6dhe_g/Kconfig b/src/mainboard/supermicro/x6dhe_g/Kconfig
index 4abac9a..0f75398 100644
--- a/src/mainboard/supermicro/x6dhe_g/Kconfig
+++ b/src/mainboard/supermicro/x6dhe_g/Kconfig
@@ -19,16 +19,6 @@
 	default supermicro/x6dhe_g
 	depends on BOARD_SUPERMICRO_X6DHE_G
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_SUPERMICRO_X6DHE_G
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_SUPERMICRO_X6DHE_G
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "X6DHE-G"
diff --git a/src/mainboard/supermicro/x6dhe_g2/Kconfig b/src/mainboard/supermicro/x6dhe_g2/Kconfig
index d0b5de7..18190c0 100644
--- a/src/mainboard/supermicro/x6dhe_g2/Kconfig
+++ b/src/mainboard/supermicro/x6dhe_g2/Kconfig
@@ -20,16 +20,6 @@
 	default supermicro/x6dhe_g2
 	depends on BOARD_SUPERMICRO_X6DHE_G2
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_SUPERMICRO_X6DHE_G2
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_SUPERMICRO_X6DHE_G2
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "X6DHE-G2"
diff --git a/src/mainboard/supermicro/x6dhr_ig/Kconfig b/src/mainboard/supermicro/x6dhr_ig/Kconfig
index ad8a6db..11a0add 100644
--- a/src/mainboard/supermicro/x6dhr_ig/Kconfig
+++ b/src/mainboard/supermicro/x6dhr_ig/Kconfig
@@ -19,16 +19,6 @@
 	default supermicro/x6dhr_ig
 	depends on BOARD_SUPERMICRO_X6DHR_IG
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_SUPERMICRO_X6DHR_IG
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_SUPERMICRO_X6DHR_IG
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "X6DHR-iG"
diff --git a/src/mainboard/supermicro/x6dhr_ig2/Kconfig b/src/mainboard/supermicro/x6dhr_ig2/Kconfig
index f1e3870..e2cf357 100644
--- a/src/mainboard/supermicro/x6dhr_ig2/Kconfig
+++ b/src/mainboard/supermicro/x6dhr_ig2/Kconfig
@@ -19,16 +19,6 @@
 	default supermicro/x6dhr_ig2
 	depends on BOARD_SUPERMICRO_X6DHR_IG2
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_SUPERMICRO_X6DHR_IG2
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_SUPERMICRO_X6DHR_IG2
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "X6DHR-iG2"
diff --git a/src/mainboard/technexion/tim5690/Kconfig b/src/mainboard/technexion/tim5690/Kconfig
index b8d73f1..8090d02 100644
--- a/src/mainboard/technexion/tim5690/Kconfig
+++ b/src/mainboard/technexion/tim5690/Kconfig
@@ -45,16 +45,6 @@
 	default 0x0
 	depends on BOARD_TECHNEXION_TIM5690
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TECHNEXION_TIM5690
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_TECHNEXION_TIM5690
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "TIM-5690"
diff --git a/src/mainboard/technexion/tim8690/Kconfig b/src/mainboard/technexion/tim8690/Kconfig
index f0292fc..0b391ca 100644
--- a/src/mainboard/technexion/tim8690/Kconfig
+++ b/src/mainboard/technexion/tim8690/Kconfig
@@ -44,16 +44,6 @@
 	default 0x0
 	depends on BOARD_TECHNEXION_TIM8690
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TECHNEXION_TIM8690
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_TECHNEXION_TIM8690
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "TIM-8690"
diff --git a/src/mainboard/tyan/s2735/Kconfig b/src/mainboard/tyan/s2735/Kconfig
index a1705fb..0f9353a 100644
--- a/src/mainboard/tyan/s2735/Kconfig
+++ b/src/mainboard/tyan/s2735/Kconfig
@@ -31,21 +31,6 @@
 	default 0x1000
 	depends on BOARD_TYAN_S2735
 	
-config LB_CKS_RANGE_START
-	int
-	default 49
-	depends on BOARD_TYAN_S2735
-
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2735
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_TYAN_S2735
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2735"
diff --git a/src/mainboard/tyan/s2850/Kconfig b/src/mainboard/tyan/s2850/Kconfig
index 0cfe1cd..40e3e33 100644
--- a/src/mainboard/tyan/s2850/Kconfig
+++ b/src/mainboard/tyan/s2850/Kconfig
@@ -16,16 +16,6 @@
 	default tyan/s2850
 	depends on BOARD_TYAN_S2850
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2850
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_TYAN_S2850
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2850"
diff --git a/src/mainboard/tyan/s2875/Kconfig b/src/mainboard/tyan/s2875/Kconfig
index 5b6ff90..2972ed1 100644
--- a/src/mainboard/tyan/s2875/Kconfig
+++ b/src/mainboard/tyan/s2875/Kconfig
@@ -17,16 +17,6 @@
 	default tyan/s2875
 	depends on BOARD_TYAN_S2875
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2875
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_TYAN_S2875
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2875"
diff --git a/src/mainboard/tyan/s2880/Kconfig b/src/mainboard/tyan/s2880/Kconfig
index 99c2873..e89f992 100644
--- a/src/mainboard/tyan/s2880/Kconfig
+++ b/src/mainboard/tyan/s2880/Kconfig
@@ -28,16 +28,6 @@
 	default 0
 	depends on BOARD_TYAN_S2880
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2880
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_TYAN_S2880
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2880"
diff --git a/src/mainboard/tyan/s2881/Kconfig b/src/mainboard/tyan/s2881/Kconfig
index 301618b..4b8b47d 100644
--- a/src/mainboard/tyan/s2881/Kconfig
+++ b/src/mainboard/tyan/s2881/Kconfig
@@ -29,16 +29,6 @@
 	default 2
 	depends on BOARD_TYAN_S2881
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2881
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_TYAN_S2881
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2881"
diff --git a/src/mainboard/tyan/s2882/Kconfig b/src/mainboard/tyan/s2882/Kconfig
index 2fbf41a..616259e 100644
--- a/src/mainboard/tyan/s2882/Kconfig
+++ b/src/mainboard/tyan/s2882/Kconfig
@@ -28,16 +28,6 @@
 	default 0
 	depends on BOARD_TYAN_S2882
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2882
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_TYAN_S2882
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2882"
diff --git a/src/mainboard/tyan/s2885/Kconfig b/src/mainboard/tyan/s2885/Kconfig
index e02a7bf..e3d6e55 100644
--- a/src/mainboard/tyan/s2885/Kconfig
+++ b/src/mainboard/tyan/s2885/Kconfig
@@ -29,16 +29,6 @@
 	default 2
 	depends on BOARD_TYAN_S2885
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2885
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_TYAN_S2885
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2885"
diff --git a/src/mainboard/tyan/s2891/Kconfig b/src/mainboard/tyan/s2891/Kconfig
index b92cc9b..4061181 100644
--- a/src/mainboard/tyan/s2891/Kconfig
+++ b/src/mainboard/tyan/s2891/Kconfig
@@ -31,16 +31,6 @@
 	default 2
 	depends on BOARD_TYAN_S2891
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2891
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_TYAN_S2891
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2891"
diff --git a/src/mainboard/tyan/s2892/Kconfig b/src/mainboard/tyan/s2892/Kconfig
index 0857f87..5ea5a0c 100644
--- a/src/mainboard/tyan/s2892/Kconfig
+++ b/src/mainboard/tyan/s2892/Kconfig
@@ -30,16 +30,6 @@
 	default 2
 	depends on BOARD_TYAN_S2892
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2892
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_TYAN_S2892
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2892"
diff --git a/src/mainboard/tyan/s2895/Kconfig b/src/mainboard/tyan/s2895/Kconfig
index c8d1ce1..6765588 100644
--- a/src/mainboard/tyan/s2895/Kconfig
+++ b/src/mainboard/tyan/s2895/Kconfig
@@ -30,16 +30,6 @@
 	default 2
 	depends on BOARD_TYAN_S2895
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2895
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_TYAN_S2895
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2895"
diff --git a/src/mainboard/tyan/s2912/Kconfig b/src/mainboard/tyan/s2912/Kconfig
index 79ea97b..1d8d834 100644
--- a/src/mainboard/tyan/s2912/Kconfig
+++ b/src/mainboard/tyan/s2912/Kconfig
@@ -51,21 +51,6 @@
 	default 2
 	depends on BOARD_TYAN_S2912
 
-config LB_CKS_RANGE_START
-	int
-	default 49
-	depends on BOARD_TYAN_S2912
-
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2912
-
-config LB_CKS_LOC
-	int
-        default 123
-	depends on BOARD_TYAN_S2912
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2912"
diff --git a/src/mainboard/tyan/s2912_fam10/Kconfig b/src/mainboard/tyan/s2912_fam10/Kconfig
index e1ac2dc..74b387a 100644
--- a/src/mainboard/tyan/s2912_fam10/Kconfig
+++ b/src/mainboard/tyan/s2912_fam10/Kconfig
@@ -53,21 +53,6 @@
 	default 2
 	depends on BOARD_TYAN_S2912_FAM10
 
-config LB_CKS_RANGE_START
-	int
-	default 49
-	depends on BOARD_TYAN_S2912_FAM10
-
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S2912_FAM10
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_TYAN_S2912_FAM10
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S2912 (Fam10)"
diff --git a/src/mainboard/tyan/s4880/Kconfig b/src/mainboard/tyan/s4880/Kconfig
index 4ba5853..48d06db 100644
--- a/src/mainboard/tyan/s4880/Kconfig
+++ b/src/mainboard/tyan/s4880/Kconfig
@@ -45,16 +45,6 @@
 	default 0
 	depends on BOARD_TYAN_S4880
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S4880
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_TYAN_S4880
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S4880"
diff --git a/src/mainboard/tyan/s4882/Kconfig b/src/mainboard/tyan/s4882/Kconfig
index eedd1f1..b473b4e 100644
--- a/src/mainboard/tyan/s4882/Kconfig
+++ b/src/mainboard/tyan/s4882/Kconfig
@@ -45,16 +45,6 @@
 	default 0
 	depends on BOARD_TYAN_S4882
 
-config LB_CKS_RANGE_END
-	int
-	default 122
-	depends on BOARD_TYAN_S4882
-
-config LB_CKS_LOC
-	int
-	default 123
-	depends on BOARD_TYAN_S4882
-
 config MAINBOARD_PART_NUMBER
 	string
 	default "S4882"
diff --git a/src/pc80/mc146818rtc.c b/src/pc80/mc146818rtc.c
index 9251f79..1b39db2 100644
--- a/src/pc80/mc146818rtc.c
+++ b/src/pc80/mc146818rtc.c
@@ -185,8 +185,8 @@
 
 #if CONFIG_HAVE_OPTION_TABLE
 	/* See if there is a LB CMOS checksum error */
-	checksum_invalid = !rtc_checksum_valid(CONFIG_LB_CKS_RANGE_START,
-			CONFIG_LB_CKS_RANGE_END,CONFIG_LB_CKS_LOC);
+	checksum_invalid = !rtc_checksum_valid(LB_CKS_RANGE_START,
+			LB_CKS_RANGE_END,LB_CKS_LOC);
 	if(checksum_invalid)
 		printk(BIOS_DEBUG, "Invalid CMOS LB checksum\n");
 
@@ -263,8 +263,8 @@
 	
 	if(get_cmos_value(ce->bit, ce->length, dest))
 		return(-3);
-	if(!rtc_checksum_valid(CONFIG_LB_CKS_RANGE_START,
-			CONFIG_LB_CKS_RANGE_END,CONFIG_LB_CKS_LOC))
+	if(!rtc_checksum_valid(LB_CKS_RANGE_START,
+			LB_CKS_RANGE_END,LB_CKS_LOC))
 		return(-4);
 	return(0);
 }
diff --git a/src/pc80/mc146818rtc_early.c b/src/pc80/mc146818rtc_early.c
index ad5a4dc..7a14921 100644
--- a/src/pc80/mc146818rtc_early.c
+++ b/src/pc80/mc146818rtc_early.c
@@ -44,14 +44,14 @@
 	unsigned long sum, old_sum;
 	sum = 0;
 	/* Comput the cmos checksum */
-	for(addr = CONFIG_LB_CKS_RANGE_START; addr <= CONFIG_LB_CKS_RANGE_END; addr++) {
+	for(addr = LB_CKS_RANGE_START; addr <= LB_CKS_RANGE_END; addr++) {
 		sum += cmos_read(addr);
 	}
 	sum = (sum & 0xffff) ^ 0xffff;
 
 	/* Read the stored checksum */
-	old_sum = cmos_read(CONFIG_LB_CKS_LOC) << 8;
-	old_sum |=  cmos_read(CONFIG_LB_CKS_LOC+1);
+	old_sum = cmos_read(LB_CKS_LOC) << 8;
+	old_sum |=  cmos_read(LB_CKS_LOC+1);
 
 	return sum == old_sum;
 }
diff --git a/util/options/build_opt_tbl.c b/util/options/build_opt_tbl.c
index 44b28ac..910c49c 100644
--- a/util/options/build_opt_tbl.c
+++ b/util/options/build_opt_tbl.c
@@ -1,3 +1,23 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright (C) 2003 Eric Biederman (ebiederm@xmission.com)
+ * Copyright (C) 2007-2010 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
+ */
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -16,14 +36,14 @@
 #define TMPFILE_TEMPLATE "/build_opt_tbl_XXXXXX"
 
 static unsigned char cmos_table[4096];
-void test_for_entry_overlaps(void *entry_start, void *entry_end);
 
 /* This array is used to isolate bits that are to be changed in a byte */
 static unsigned char clip[9]={0,1,3,7,0x0f,0x1f,0x3f,0x7f,0xff};
 
 #ifdef WIN32
 #include <fcntl.h>
-char* mkstemp(char* name) {
+char *mkstemp(char* name)
+{
 	static char val='0';
 	char *c=name;
 	while (*c!='X') c++;
@@ -35,13 +55,15 @@
 #define UNLINK_IF_NECESSARY(x)
 #endif
 
-/* This routine loops through the entried and tests if any of the fields overlap
-	input entry_start = the memory pointer to the start of the entries.
-	      entry_end = the byte past the entries.
-	output  none
-		if there is an overlap, the routine exits, other wise it returns.
-*/
-void test_for_entry_overlaps(void *entry_start, void *entry_end)
+/**
+ * This routine loops through the entried and tests if any of the fields
+ * overlap.
+ * If there is an overlap, the routine exits, otherwise it returns.
+ *
+ * @param entry_start memory pointer to the start of the entries.
+ * @param entry_end   memory pointer to the byte past the entries.
+ */
+static void test_for_entry_overlaps(void *entry_start, void *entry_end)
 {
 	int ptr;
 	char *cptr;
@@ -63,7 +85,7 @@
 	for(cptr = entry_start; cptr < (char *)entry_end; cptr += ce->size) {
 		ce=(struct cmos_entries *)cptr;
 		/* test if entry goes past the end of the buffer */
-		if((ce->bit+ce->length)>buffer_bit_size) {
+		if((int)(ce->bit+ce->length) > buffer_bit_size) {
 			printf("Error - Entry %s start bit + length must be less than %d\n",
 				ce->name,buffer_bit_size);
 			exit(1);
@@ -94,7 +116,7 @@
 			}
 		} else {
 			/* test if bits overlap byte boundaries */
-			if(ce->length>(8-offset)) {
+			if((int)ce->length > (8-offset)) {
                                 printf("Error - Entry %s length overlaps a byte boundry\n",
 					ce->name);
                                 exit(1);
@@ -113,7 +135,7 @@
 }
 
 /* This routine displays the usage options */
-void display_usage(char *name)
+static void display_usage(char *name)
 {
 	printf("Usage: %s [--config filename]\n", name);
 	printf("                       [--option filename]\n");
@@ -124,7 +146,6 @@
 	exit(1);
 }
 
-
 static void skip_spaces(char *line, char **ptr)
 {
 	if (!isspace(**ptr)) {
@@ -136,6 +157,7 @@
 	}
 	return;
 }
+
 static unsigned long get_number(char *line, char **ptr, int base)
 {
 	unsigned long value;
@@ -210,19 +232,22 @@
 	return result;
 }
 
-
-/* This routine builds the cmos definition table from the cmos layout file
-	input The input comes from the configuration file which contains two parts
-		entries and enumerations. Each section is started with the key words
-		entries and enumerations.  Records then follow in their respective 
-		formats.
-	output The output of this program is the cmos definitions table.  It is stored
-		in the cmos_table array. If this module is called, and the global 
-		table_file has been implimented by the user, the table is also written
-		to the specified file.
-		This program exits on and error.  It returns a 1 on successful 
-		completion
-*/
+/**
+ * This routine builds the cmos definition table from the cmos layout file
+ *
+ * The input comes from the configuration file which contains two parts
+ * entries and enumerations.  Each section is started with the key words
+ * entries and enumerations.  Records then follow in their respective 
+ * formats.
+ *
+ * The output of this program is the cmos definitions table.  It is stored
+ * in the cmos_table array. If this module is called, and the global 
+ * table_file has been implimented by the user, the table is also written
+ * to the specified file.
+ *
+ * This program exits with a return code of 1 on error.  It returns 0 on 
+ * successful completion
+ */
 int main(int argc, char **argv)
 {
 	int i;
@@ -230,18 +255,17 @@
 	char *option=0;
 	char *header=0;
 	FILE *fp;
-	int tmpfile;
-	char tmpfilename[TMPFILE_LEN];
+	int tempfile;
+	char tempfilename[TMPFILE_LEN];
 	struct cmos_option_table *ct;
 	struct cmos_entries *ce;
 	struct cmos_enums *c_enums, *c_enums_start;
-	struct cmos_checksum *cs;
+	struct cmos_checksum *cs, *new_cs;
 	char line[INPUT_LINE_MAX];
 	unsigned char uc;
 	int entry_mode=0;
 	int enum_mode=0;
 	int checksum_mode=0;
-	long ptr;
 	int cnt;
 	char *cptr;
 	void *entry_start, *entry_end;
@@ -314,19 +338,23 @@
 	for(;;){  /* this section loops through the entry records */
 		if(fgets(line,INPUT_LINE_MAX,fp)==NULL) 
 			break; /* end if no more input */
+		// FIXME mode should be a single enum.
 		if(!entry_mode) {  /* skip input until the entries key word */
 			if (strstr(line,"entries") != 0) {
 				entry_mode=1;
+				enum_mode=0;
+				checksum_mode=0;
 				continue;
 			}
-		}
-		else{  /* Test if we are done with entries and starting enumerations */
+		} else {  /* Test if we are done with entries and starting enumerations */
 			if (strstr(line,"enumerations") != 0){
 				entry_mode=0;
 				enum_mode=1;
+				checksum_mode=0;
 				break;
 			}
 			if (strstr(line, "checksums") != 0) {
+				entry_mode=0;
 				enum_mode=0;
 				checksum_mode=1;
 				break;
@@ -379,6 +407,7 @@
 	test_for_entry_overlaps(entry_start, entry_end);
 
 	for(;enum_mode;){ /* loop to build the enumerations section */
+		long ptr;
 		if(fgets(line,INPUT_LINE_MAX,fp)==NULL) 
 			break; /* go till end of input */
 
@@ -420,8 +449,7 @@
 	ct->size=ct->header_length+enum_length+entries_length;
 
 	/* Get the checksum records */
-	cs=(struct cmos_checksum *)(cmos_table+(ct->size));
-	cptr = (char*)cs;
+	new_cs = (struct cmos_checksum *)(cmos_table+(ct->size));
 	for(;checksum_mode;) { /* This section finds the checksums */
 		char *ptr;
 		if(fgets(line, INPUT_LINE_MAX,fp)==NULL)
@@ -432,6 +460,9 @@
 		if (line[strspn(line, " ")]=='\n') continue;
 		if (memcmp(line, "checksum", 8) != 0) continue;
 
+		/* We actually found a new cmos checksum entry */
+		cs = new_cs;
+
 		/* get the information */
 		ptr = line + 8;
 		skip_spaces(line, &ptr);
@@ -476,10 +507,10 @@
 		cs->tag = LB_TAG_OPTION_CHECKSUM;
 		cs->size = sizeof(*cs);
 		cs->type = CHECKSUM_PCBIOS;
+
 		cptr = (char *)cs;
 		cptr += cs->size;
-		cs = (struct cmos_checksum *)cptr;
-
+		new_cs = (struct cmos_checksum *)cptr;
 	}
 	ct->size += (cptr - (char *)(cmos_table + ct->size));
 	fclose(fp);
@@ -487,17 +518,17 @@
 	/* See if we want to output a C source file */
 	if(option) {
 		int err=0;
-		strncpy(tmpfilename, dirname(strdup(option)), TMPFILE_LEN);
-	        strncat(tmpfilename, TMPFILE_TEMPLATE, TMPFILE_LEN);
-		tmpfile = mkstemp(tmpfilename);
-		if(tmpfile == -1) {
+		strncpy(tempfilename, dirname(strdup(option)), TMPFILE_LEN);
+	        strncat(tempfilename, TMPFILE_TEMPLATE, TMPFILE_LEN);
+		tempfile = mkstemp(tempfilename);
+		if(tempfile == -1) {
                         perror("Error - Could not create temporary file");
                         exit(1);
 		}
 
-		if((fp=fdopen(tmpfile,"w"))==NULL){
+		if((fp=fdopen(tempfile,"w"))==NULL){
 			perror("Error - Could not open temporary file");
-			unlink(tmpfilename);
+			unlink(tempfilename);
 			exit(1);
 		}
 
@@ -505,11 +536,11 @@
         	if(!fwrite("unsigned char option_table[] = {",1,32,fp)) {
         	        perror("Error - Could not write image file");
         	        fclose(fp);
-			unlink(tmpfilename);
+			unlink(tempfilename);
         	        exit(1);
         	}
 		/* write the array values */
-		for(i=0;i<(ct->size-1);i++) {
+		for(i=0; i<(int)(ct->size-1); i++) {
 			if(!(i%10) && !err) err=!fwrite("\n\t",1,2,fp);
 			sprintf(buf,"0x%02x,",cmos_table[i]);
 			if(!err) err=!fwrite(buf,1,5,fp);
@@ -520,16 +551,16 @@
         	if(!fwrite("};\n",1,3,fp)) {
         	        perror("Error - Could not write image file");
         	        fclose(fp);
-			unlink(tmpfilename);
+			unlink(tempfilename);
         	        exit(1);
         	}
 
         	fclose(fp);
 		UNLINK_IF_NECESSARY(option);
-		if (rename(tmpfilename, option)) {
+		if (rename(tempfilename, option)) {
 			fprintf(stderr, "Error - Could not write %s: ", option);
 			perror(NULL);
-			unlink(tmpfilename);
+			unlink(tempfilename);
 			exit(1);
 		}
 	}
@@ -539,18 +570,18 @@
 		struct cmos_option_table *hdr;
 		struct lb_record *ptr, *end;
 
-		strncpy(tmpfilename, dirname(strdup(option)), TMPFILE_LEN);
-	        strncat(tmpfilename, TMPFILE_TEMPLATE, TMPFILE_LEN);
-		tmpfile = mkstemp(tmpfilename);
-		if(tmpfile == -1) {
+		strncpy(tempfilename, dirname(strdup(option)), TMPFILE_LEN);
+	        strncat(tempfilename, TMPFILE_TEMPLATE, TMPFILE_LEN);
+		tempfile = mkstemp(tempfilename);
+		if(tempfile == -1) {
 			perror("Error - Could not create temporary file");
 			exit(1);
 		}
 
-		fp = fdopen(tmpfile, "w");
+		fp = fdopen(tempfile, "w");
 		if (!fp) {
 			perror("Error - Could not open temporary file");
-			unlink(tmpfilename);
+			unlink(tempfilename);
 			exit(1);
 		}
 
@@ -569,7 +600,7 @@
 				fprintf(stderr, "Invalid identifier: %s\n",
 					ce->name);
 				fclose(fp);
-				unlink(tmpfilename);
+				unlink(tempfilename);
 				exit(1);
 			}
 			fprintf(fp, "#define CMOS_VSTART_%s %d\n",
@@ -577,17 +608,21 @@
 			fprintf(fp, "#define CMOS_VLEN_%s %d\n",
 				ce->name, ce->length);
 		}
+		fprintf(fp, "\n#define LB_CKS_RANGE_START %d\n", cs->range_start / 8);
+		fprintf(fp, "#define LB_CKS_RANGE_END %d\n", cs->range_end / 8);
+		fprintf(fp, "#define LB_CKS_LOC %d\n", cs->location / 8);
 		fclose(fp);
 
 		UNLINK_IF_NECESSARY(header);
-		if (rename(tmpfilename, header)) {
+		if (rename(tempfilename, header)) {
 			fprintf(stderr, "Error - Could not write %s: ", header);
 			perror(NULL);
-			unlink(tmpfilename);
+			unlink(tempfilename);
 			exit(1);
 		}
 	}
-	return(0);
+
+	return 0;
 }