Vladimir Serbinenko (phcoder@gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4790
-gerrit
commit a2cbbd3bccb0dea7e106bc0521d46b13ee51c522 Author: Vladimir Serbinenko phcoder@gmail.com Date: Fri Jan 24 17:40:44 2014 +0100
cmos_options: Add and check version field.
This solves the issue with adding or moving options.
The version field is a 16-bit checksum (of universal hashing family) of options and their positions but not of defaults. This way no need to maintain it manually
This is proof of concept. If idea is accepted then there will be a laborous but easy task of adding version field to all mobos.
If 16 bits is too much we can reduce it to 8 bits.
Change-Id: Id3bb904fac44279dd420c2bf617199f890bb3e0e Signed-off-by: Vladimir Serbinenko phcoder@gmail.com --- payloads/nvramcui/nvramcui.c | 4 +- src/drivers/pc80/mc146818rtc_early.c | 29 +++++++---- src/mainboard/advansus/a785e-i/cmos.layout | 1 + src/mainboard/amd/bimini_fam10/cmos.layout | 1 + src/mainboard/amd/db800/cmos.layout | 1 + src/mainboard/amd/dbm690t/cmos.layout | 1 + src/mainboard/amd/dinar/cmos.layout | 1 + src/mainboard/amd/inagua/cmos.layout | 1 + src/mainboard/amd/mahogany/cmos.layout | 1 + src/mainboard/amd/mahogany_fam10/cmos.layout | 1 + src/mainboard/amd/norwich/cmos.layout | 1 + src/mainboard/amd/olivehill/cmos.layout | 1 + src/mainboard/amd/parmer/cmos.layout | 1 + src/mainboard/amd/persimmon/cmos.layout | 1 + src/mainboard/amd/pistachio/cmos.layout | 1 + src/mainboard/amd/rumba/cmos.layout | 1 + src/mainboard/amd/serengeti_cheetah/cmos.layout | 1 + .../amd/serengeti_cheetah_fam10/cmos.layout | 1 + src/mainboard/amd/south_station/cmos.layout | 1 + src/mainboard/amd/thatcher/cmos.layout | 1 + src/mainboard/amd/tilapia_fam10/cmos.layout | 1 + src/mainboard/amd/torpedo/cmos.layout | 1 + src/mainboard/amd/union_station/cmos.layout | 1 + src/mainboard/arima/hdama/cmos.layout | 1 + src/mainboard/artecgroup/dbe61/cmos.layout | 1 + src/mainboard/asrock/939a785gmh/cmos.layout | 1 + src/mainboard/asrock/e350m1/cmos.layout | 1 + src/mainboard/asrock/imb-a180/cmos.layout | 1 + src/mainboard/asus/a8n_e/cmos.layout | 1 + src/mainboard/asus/a8v-e_deluxe/cmos.layout | 1 + src/mainboard/asus/a8v-e_se/cmos.layout | 1 + src/mainboard/asus/dsbf/cmos.layout | 3 +- src/mainboard/asus/f2a85-m/cmos.layout | 1 + src/mainboard/asus/k8v-x/cmos.layout | 1 + src/mainboard/asus/m2n-e/cmos.layout | 1 + src/mainboard/asus/m2v-mx_se/cmos.layout | 1 + src/mainboard/asus/m2v/cmos.layout | 1 + src/mainboard/asus/m4a78-em/cmos.layout | 1 + src/mainboard/asus/m4a785-m/cmos.layout | 1 + src/mainboard/asus/m4a785t-m/cmos.layout | 1 + src/mainboard/asus/m5a88-v/cmos.layout | 1 + src/mainboard/asus/mew-vm/cmos.layout | 1 + src/mainboard/avalue/eax-785e/cmos.layout | 1 + src/mainboard/bachmann/ot200/cmos.layout | 3 ++ src/mainboard/bcom/winnetp680/cmos.layout | 1 + src/mainboard/broadcom/blast/cmos.layout | 1 + src/mainboard/digitallogic/adl855pc/cmos.layout | 1 + src/mainboard/digitallogic/msm586seg/cmos.layout | 1 + src/mainboard/digitallogic/msm800sev/cmos.layout | 1 + src/mainboard/eaglelion/5bcm/cmos.layout | 1 + src/mainboard/emulation/qemu-i440fx/cmos.layout | 1 + src/mainboard/getac/p470/cmos.layout | 2 + src/mainboard/gigabyte/ga_2761gxdk/cmos.layout | 1 + src/mainboard/gigabyte/m57sli/cmos.layout | 1 + src/mainboard/gigabyte/ma785gm/cmos.layout | 1 + src/mainboard/gigabyte/ma785gmt/cmos.layout | 1 + src/mainboard/gigabyte/ma78gm/cmos.layout | 1 + src/mainboard/gizmosphere/gizmo/cmos.layout | 1 + src/mainboard/google/bolt/cmos.layout | 2 + src/mainboard/google/butterfly/cmos.layout | 2 + src/mainboard/google/falco/cmos.layout | 2 + src/mainboard/google/link/cmos.layout | 2 + src/mainboard/google/parrot/cmos.layout | 2 + src/mainboard/google/peppy/cmos.layout | 2 + src/mainboard/google/slippy/cmos.layout | 2 + src/mainboard/google/stout/cmos.layout | 2 + src/mainboard/hp/dl145_g1/cmos.layout | 1 + src/mainboard/hp/dl145_g3/cmos.layout | 1 + src/mainboard/hp/dl165_g6_fam10/cmos.layout | 1 + src/mainboard/ibase/mb899/cmos.layout | 2 + src/mainboard/ibm/e325/cmos.layout | 1 + src/mainboard/ibm/e326/cmos.layout | 1 + src/mainboard/iei/juki-511p/cmos.layout | 1 + src/mainboard/iei/kino-780am2-fam10/cmos.layout | 1 + src/mainboard/iei/nova4899r/cmos.layout | 1 + src/mainboard/intel/baskingridge/cmos.layout | 2 + src/mainboard/intel/cougar_canyon2/cmos.layout | 2 + src/mainboard/intel/d945gclf/cmos.layout | 2 + src/mainboard/intel/eagleheights/cmos.layout | 2 + src/mainboard/intel/emeraldlake2/cmos.layout | 2 + src/mainboard/intel/jarrell/cmos.layout | 1 + src/mainboard/intel/wtm2/cmos.layout | 2 + src/mainboard/iwave/iWRainbowG6/cmos.layout | 2 + src/mainboard/iwill/dk8_htx/cmos.layout | 1 + src/mainboard/iwill/dk8s2/cmos.layout | 1 + src/mainboard/iwill/dk8x/cmos.layout | 1 + src/mainboard/jetway/j7f2/cmos.layout | 1 + src/mainboard/jetway/pa78vm5/cmos.layout | 1 + src/mainboard/kontron/986lcd-m/cmos.layout | 2 + src/mainboard/kontron/kt690/cmos.layout | 1 + src/mainboard/kontron/ktqm77/cmos.layout | 2 + src/mainboard/lanner/em8510/cmos.layout | 1 + src/mainboard/lenovo/t60/cmos.layout | 2 + src/mainboard/lenovo/x201/cmos.layout | 2 + src/mainboard/lenovo/x230/cmos.layout | 4 +- src/mainboard/lenovo/x60/cmos.layout | 2 + src/mainboard/lippert/frontrunner-af/cmos.layout | 1 + src/mainboard/lippert/frontrunner/cmos.layout | 1 + src/mainboard/lippert/toucan-af/cmos.layout | 1 + src/mainboard/msi/ms7135/cmos.layout | 1 + src/mainboard/msi/ms7260/cmos.layout | 1 + src/mainboard/msi/ms9185/cmos.layout | 1 + src/mainboard/msi/ms9282/cmos.layout | 1 + src/mainboard/msi/ms9652_fam10/cmos.layout | 1 + src/mainboard/newisys/khepri/cmos.layout | 1 + src/mainboard/nvidia/l1_2pvv/cmos.layout | 1 + src/mainboard/pcengines/alix1c/cmos.layout | 1 + src/mainboard/pcengines/alix2d/cmos.layout | 1 + src/mainboard/roda/rk886ex/cmos.layout | 2 + src/mainboard/roda/rk9/cmos.layout | 2 + src/mainboard/samsung/lumpy/cmos.layout | 2 + src/mainboard/samsung/stumpy/cmos.layout | 2 + src/mainboard/siemens/sitemp_g1p1/cmos.layout | 11 ++-- src/mainboard/sunw/ultra40/cmos.layout | 1 + src/mainboard/supermicro/h8dme/cmos.layout | 1 + src/mainboard/supermicro/h8dmr/cmos.layout | 1 + src/mainboard/supermicro/h8dmr_fam10/cmos.layout | 1 + src/mainboard/supermicro/h8qgi/cmos.layout | 1 + src/mainboard/supermicro/h8qme_fam10/cmos.layout | 1 + src/mainboard/supermicro/h8scm/cmos.layout | 1 + src/mainboard/supermicro/h8scm_fam10/cmos.layout | 1 + src/mainboard/supermicro/x6dai_g/cmos.layout | 1 + src/mainboard/supermicro/x6dhe_g/cmos.layout | 1 + src/mainboard/supermicro/x6dhe_g2/cmos.layout | 1 + src/mainboard/supermicro/x6dhr_ig/cmos.layout | 1 + src/mainboard/supermicro/x6dhr_ig2/cmos.layout | 1 + src/mainboard/supermicro/x7db8/cmos.layout | 2 + src/mainboard/technexion/tim5690/cmos.layout | 1 + src/mainboard/technexion/tim8690/cmos.layout | 1 + src/mainboard/technologic/ts5300/cmos.layout | 1 + src/mainboard/traverse/geos/cmos.layout | 1 + src/mainboard/tyan/s2735/cmos.layout | 1 + src/mainboard/tyan/s2850/cmos.layout | 1 + src/mainboard/tyan/s2875/cmos.layout | 1 + src/mainboard/tyan/s2880/cmos.layout | 1 + src/mainboard/tyan/s2881/cmos.layout | 1 + src/mainboard/tyan/s2882/cmos.layout | 1 + src/mainboard/tyan/s2885/cmos.layout | 1 + src/mainboard/tyan/s2891/cmos.layout | 1 + src/mainboard/tyan/s2892/cmos.layout | 1 + src/mainboard/tyan/s2895/cmos.layout | 1 + src/mainboard/tyan/s2912/cmos.layout | 1 + src/mainboard/tyan/s2912_fam10/cmos.layout | 1 + src/mainboard/tyan/s4880/cmos.layout | 1 + src/mainboard/tyan/s4882/cmos.layout | 1 + src/mainboard/tyan/s8226/cmos.layout | 1 + src/mainboard/via/epia-cn/cmos.layout | 1 + src/mainboard/via/epia-m/cmos.layout | 1 + src/mainboard/via/epia-m700/cmos.layout | 1 + src/mainboard/via/epia-n/cmos.layout | 1 + src/mainboard/via/epia/cmos.layout | 1 + src/mainboard/via/pc2500e/cmos.layout | 1 + src/mainboard/via/vt8454c/cmos.layout | 1 + src/mainboard/winent/mb6047/cmos.layout | 1 + src/mainboard/winent/pl6064/cmos.layout | 1 + src/mainboard/wyse/s50/cmos.layout | 1 + util/nvramtool/accessors/layout-bin.c | 4 ++ util/nvramtool/accessors/layout-text.c | 60 ++++++++++++++++++++++ util/nvramtool/cli/nvramtool.c | 18 +++++-- util/nvramtool/cmos_ops.c | 4 ++ util/nvramtool/input_file.c | 9 ++++ util/nvramtool/layout.c | 6 ++- util/nvramtool/layout.h | 1 + util/nvramtool/lbtable.c | 4 ++ 164 files changed, 312 insertions(+), 25 deletions(-)
diff --git a/payloads/nvramcui/nvramcui.c b/payloads/nvramcui/nvramcui.c index daf153b..4765921 100644 --- a/payloads/nvramcui/nvramcui.c +++ b/payloads/nvramcui/nvramcui.c @@ -97,7 +97,7 @@ int main() int maxlength=0; struct cb_cmos_entries *option = first_cmos_entry(opttbl); while (option) { - if ((option->config != 'r') && (strcmp("check_sum", option->name) != 0)) { + if ((option->config != 'r') && (option->config != 'v') && (strcmp("check_sum", option->name) != 0)) { maxlength = max(maxlength, strlen(option->name)); numopts++; } @@ -113,7 +113,7 @@ int main() /* walk over options, fetch details */ option = first_cmos_entry(opttbl); for (i=0;i<numopts;i++) { - while ((option->config == 'r') || (strcmp("check_sum", option->name) == 0)) { + while ((option->config == 'r') || (option->config == 'v') || (strcmp("check_sum", option->name) == 0)) { option = next_cmos_entry(option); } fields[2*i] = new_field(1, strlen(option->name), i*2, 1, 0, 0); diff --git a/src/drivers/pc80/mc146818rtc_early.c b/src/drivers/pc80/mc146818rtc_early.c index 0652f27..6309103 100644 --- a/src/drivers/pc80/mc146818rtc_early.c +++ b/src/drivers/pc80/mc146818rtc_early.c @@ -20,11 +20,29 @@ static int cmos_error(void) return (reg_d & RTC_VRT) == 0; }
+unsigned read_option_lowlevel(unsigned start, unsigned size, unsigned def) +{ +#if CONFIG_USE_OPTION_TABLE + unsigned byte; + byte = cmos_read(start/8); + return (byte >> (start & 7U)) & ((1U << size) - 1U); +#else + return def; +#endif +} + static int cmos_chksum_valid(void) { #if CONFIG_USE_OPTION_TABLE unsigned char addr; u16 sum, old_sum; + unsigned version; + + version = read_option_lowlevel(CMOS_VSTART_version, CMOS_VLEN_version, + 0); + if (version != CMOS_version_expected) + return 0; + sum = 0; /* Compute the cmos checksum */ for(addr = LB_CKS_RANGE_START; addr <= LB_CKS_RANGE_END; addr++) { @@ -91,14 +109,3 @@ static inline int do_normal_boot(void)
return (byte & (1<<1)); } - -unsigned read_option_lowlevel(unsigned start, unsigned size, unsigned def) -{ -#if CONFIG_USE_OPTION_TABLE - unsigned byte; - byte = cmos_read(start/8); - return (byte >> (start & 7U)) & ((1U << size) - 1U); -#else - return def; -#endif -} diff --git a/src/mainboard/advansus/a785e-i/cmos.layout b/src/mainboard/advansus/a785e-i/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/advansus/a785e-i/cmos.layout +++ b/src/mainboard/advansus/a785e-i/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/bimini_fam10/cmos.layout b/src/mainboard/amd/bimini_fam10/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/amd/bimini_fam10/cmos.layout +++ b/src/mainboard/amd/bimini_fam10/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/db800/cmos.layout b/src/mainboard/amd/db800/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/amd/db800/cmos.layout +++ b/src/mainboard/amd/db800/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/amd/dbm690t/cmos.layout b/src/mainboard/amd/dbm690t/cmos.layout index 86aadf5..6fcaa36 100644 --- a/src/mainboard/amd/dbm690t/cmos.layout +++ b/src/mainboard/amd/dbm690t/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/dinar/cmos.layout b/src/mainboard/amd/dinar/cmos.layout index 89ef0ca..1834e77 100644 --- a/src/mainboard/amd/dinar/cmos.layout +++ b/src/mainboard/amd/dinar/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/inagua/cmos.layout b/src/mainboard/amd/inagua/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/amd/inagua/cmos.layout +++ b/src/mainboard/amd/inagua/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/mahogany/cmos.layout b/src/mainboard/amd/mahogany/cmos.layout index 37530b7..e638437 100644 --- a/src/mainboard/amd/mahogany/cmos.layout +++ b/src/mainboard/amd/mahogany/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/mahogany_fam10/cmos.layout b/src/mainboard/amd/mahogany_fam10/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/amd/mahogany_fam10/cmos.layout +++ b/src/mainboard/amd/mahogany_fam10/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/norwich/cmos.layout b/src/mainboard/amd/norwich/cmos.layout index 864d89a..0e71deb 100644 --- a/src/mainboard/amd/norwich/cmos.layout +++ b/src/mainboard/amd/norwich/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 440 1 e 0 dcon_present 1008 16 h 0 check_sum
diff --git a/src/mainboard/amd/olivehill/cmos.layout b/src/mainboard/amd/olivehill/cmos.layout index 5520564..7df5c01 100644 --- a/src/mainboard/amd/olivehill/cmos.layout +++ b/src/mainboard/amd/olivehill/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/parmer/cmos.layout b/src/mainboard/amd/parmer/cmos.layout index 5520564..7df5c01 100644 --- a/src/mainboard/amd/parmer/cmos.layout +++ b/src/mainboard/amd/parmer/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/persimmon/cmos.layout b/src/mainboard/amd/persimmon/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/amd/persimmon/cmos.layout +++ b/src/mainboard/amd/persimmon/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/pistachio/cmos.layout b/src/mainboard/amd/pistachio/cmos.layout index 86aadf5..6fcaa36 100644 --- a/src/mainboard/amd/pistachio/cmos.layout +++ b/src/mainboard/amd/pistachio/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/rumba/cmos.layout b/src/mainboard/amd/rumba/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/amd/rumba/cmos.layout +++ b/src/mainboard/amd/rumba/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/amd/serengeti_cheetah/cmos.layout b/src/mainboard/amd/serengeti_cheetah/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/amd/serengeti_cheetah/cmos.layout +++ b/src/mainboard/amd/serengeti_cheetah/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/serengeti_cheetah_fam10/cmos.layout b/src/mainboard/amd/serengeti_cheetah_fam10/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/amd/serengeti_cheetah_fam10/cmos.layout +++ b/src/mainboard/amd/serengeti_cheetah_fam10/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/south_station/cmos.layout b/src/mainboard/amd/south_station/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/amd/south_station/cmos.layout +++ b/src/mainboard/amd/south_station/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/thatcher/cmos.layout b/src/mainboard/amd/thatcher/cmos.layout index 5520564..7df5c01 100644 --- a/src/mainboard/amd/thatcher/cmos.layout +++ b/src/mainboard/amd/thatcher/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/tilapia_fam10/cmos.layout b/src/mainboard/amd/tilapia_fam10/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/amd/tilapia_fam10/cmos.layout +++ b/src/mainboard/amd/tilapia_fam10/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/torpedo/cmos.layout b/src/mainboard/amd/torpedo/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/amd/torpedo/cmos.layout +++ b/src/mainboard/amd/torpedo/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/amd/union_station/cmos.layout b/src/mainboard/amd/union_station/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/amd/union_station/cmos.layout +++ b/src/mainboard/amd/union_station/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/arima/hdama/cmos.layout b/src/mainboard/arima/hdama/cmos.layout index d8e2eee..5284ec1 100644 --- a/src/mainboard/arima/hdama/cmos.layout +++ b/src/mainboard/arima/hdama/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/artecgroup/dbe61/cmos.layout b/src/mainboard/artecgroup/dbe61/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/artecgroup/dbe61/cmos.layout +++ b/src/mainboard/artecgroup/dbe61/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/asrock/939a785gmh/cmos.layout b/src/mainboard/asrock/939a785gmh/cmos.layout index 37530b7..e638437 100644 --- a/src/mainboard/asrock/939a785gmh/cmos.layout +++ b/src/mainboard/asrock/939a785gmh/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asrock/e350m1/cmos.layout b/src/mainboard/asrock/e350m1/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/asrock/e350m1/cmos.layout +++ b/src/mainboard/asrock/e350m1/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asrock/imb-a180/cmos.layout b/src/mainboard/asrock/imb-a180/cmos.layout index f6b5806..751ae20 100644 --- a/src/mainboard/asrock/imb-a180/cmos.layout +++ b/src/mainboard/asrock/imb-a180/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/a8n_e/cmos.layout b/src/mainboard/asus/a8n_e/cmos.layout index 726de26..b78884b 100644 --- a/src/mainboard/asus/a8n_e/cmos.layout +++ b/src/mainboard/asus/a8n_e/cmos.layout @@ -42,6 +42,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu + 448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/a8v-e_deluxe/cmos.layout b/src/mainboard/asus/a8v-e_deluxe/cmos.layout index fc13a3c..cf6915c 100644 --- a/src/mainboard/asus/a8v-e_deluxe/cmos.layout +++ b/src/mainboard/asus/a8v-e_deluxe/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/a8v-e_se/cmos.layout b/src/mainboard/asus/a8v-e_se/cmos.layout index fc13a3c..cf6915c 100644 --- a/src/mainboard/asus/a8v-e_se/cmos.layout +++ b/src/mainboard/asus/a8v-e_se/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/dsbf/cmos.layout b/src/mainboard/asus/dsbf/cmos.layout index 29e78ad..bbca1f4 100644 --- a/src/mainboard/asus/dsbf/cmos.layout +++ b/src/mainboard/asus/dsbf/cmos.layout @@ -65,7 +65,8 @@ entries
# ----------------------------------------------------------------- 0 120 r 0 reserved_memory -#120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/asus/f2a85-m/cmos.layout b/src/mainboard/asus/f2a85-m/cmos.layout index 5520564..7df5c01 100644 --- a/src/mainboard/asus/f2a85-m/cmos.layout +++ b/src/mainboard/asus/f2a85-m/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/k8v-x/cmos.layout b/src/mainboard/asus/k8v-x/cmos.layout index fc13a3c..cf6915c 100644 --- a/src/mainboard/asus/k8v-x/cmos.layout +++ b/src/mainboard/asus/k8v-x/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/m2n-e/cmos.layout b/src/mainboard/asus/m2n-e/cmos.layout index 7281d23..09aef35 100644 --- a/src/mainboard/asus/m2n-e/cmos.layout +++ b/src/mainboard/asus/m2n-e/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/m2v-mx_se/cmos.layout b/src/mainboard/asus/m2v-mx_se/cmos.layout index f2e90e7..1f089bd 100644 --- a/src/mainboard/asus/m2v-mx_se/cmos.layout +++ b/src/mainboard/asus/m2v-mx_se/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 448 3 e 10 videoram_size 728 256 h 0 user_data 984 16 h 0 check_sum diff --git a/src/mainboard/asus/m2v/cmos.layout b/src/mainboard/asus/m2v/cmos.layout index fc13a3c..cf6915c 100644 --- a/src/mainboard/asus/m2v/cmos.layout +++ b/src/mainboard/asus/m2v/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/m4a78-em/cmos.layout b/src/mainboard/asus/m4a78-em/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/asus/m4a78-em/cmos.layout +++ b/src/mainboard/asus/m4a78-em/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/m4a785-m/cmos.layout b/src/mainboard/asus/m4a785-m/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/asus/m4a785-m/cmos.layout +++ b/src/mainboard/asus/m4a785-m/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/m4a785t-m/cmos.layout b/src/mainboard/asus/m4a785t-m/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/asus/m4a785t-m/cmos.layout +++ b/src/mainboard/asus/m4a785t-m/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/m5a88-v/cmos.layout b/src/mainboard/asus/m5a88-v/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/asus/m5a88-v/cmos.layout +++ b/src/mainboard/asus/m5a88-v/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/asus/mew-vm/cmos.layout b/src/mainboard/asus/mew-vm/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/asus/mew-vm/cmos.layout +++ b/src/mainboard/asus/mew-vm/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/avalue/eax-785e/cmos.layout b/src/mainboard/avalue/eax-785e/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/avalue/eax-785e/cmos.layout +++ b/src/mainboard/avalue/eax-785e/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/bachmann/ot200/cmos.layout b/src/mainboard/bachmann/ot200/cmos.layout index 90ade93..851dff5 100644 --- a/src/mainboard/bachmann/ot200/cmos.layout +++ b/src/mainboard/bachmann/ot200/cmos.layout @@ -29,6 +29,9 @@ entries 384 3 e 1 baud_rate 387 4 e 2 debug_level
+387 4 e 2 debug_level +448 16 v 0 version + # ----------------------------------------------------------------- # coreboot config options: check sums 1008 16 h 0 check_sum diff --git a/src/mainboard/bcom/winnetp680/cmos.layout b/src/mainboard/bcom/winnetp680/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/bcom/winnetp680/cmos.layout +++ b/src/mainboard/bcom/winnetp680/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/broadcom/blast/cmos.layout b/src/mainboard/broadcom/blast/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/broadcom/blast/cmos.layout +++ b/src/mainboard/broadcom/blast/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/digitallogic/adl855pc/cmos.layout b/src/mainboard/digitallogic/adl855pc/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/digitallogic/adl855pc/cmos.layout +++ b/src/mainboard/digitallogic/adl855pc/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/digitallogic/msm586seg/cmos.layout b/src/mainboard/digitallogic/msm586seg/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/digitallogic/msm586seg/cmos.layout +++ b/src/mainboard/digitallogic/msm586seg/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/digitallogic/msm800sev/cmos.layout b/src/mainboard/digitallogic/msm800sev/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/digitallogic/msm800sev/cmos.layout +++ b/src/mainboard/digitallogic/msm800sev/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/eaglelion/5bcm/cmos.layout b/src/mainboard/eaglelion/5bcm/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/eaglelion/5bcm/cmos.layout +++ b/src/mainboard/eaglelion/5bcm/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/emulation/qemu-i440fx/cmos.layout b/src/mainboard/emulation/qemu-i440fx/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/emulation/qemu-i440fx/cmos.layout +++ b/src/mainboard/emulation/qemu-i440fx/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/getac/p470/cmos.layout b/src/mainboard/getac/p470/cmos.layout index c879078..2580ab8 100644 --- a/src/mainboard/getac/p470/cmos.layout +++ b/src/mainboard/getac/p470/cmos.layout @@ -66,6 +66,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/gigabyte/ga_2761gxdk/cmos.layout b/src/mainboard/gigabyte/ga_2761gxdk/cmos.layout index a8cec16..60d3415 100644 --- a/src/mainboard/gigabyte/ga_2761gxdk/cmos.layout +++ b/src/mainboard/gigabyte/ga_2761gxdk/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/gigabyte/m57sli/cmos.layout b/src/mainboard/gigabyte/m57sli/cmos.layout index a8cec16..60d3415 100644 --- a/src/mainboard/gigabyte/m57sli/cmos.layout +++ b/src/mainboard/gigabyte/m57sli/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/gigabyte/ma785gm/cmos.layout b/src/mainboard/gigabyte/ma785gm/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/gigabyte/ma785gm/cmos.layout +++ b/src/mainboard/gigabyte/ma785gm/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/gigabyte/ma785gmt/cmos.layout b/src/mainboard/gigabyte/ma785gmt/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/gigabyte/ma785gmt/cmos.layout +++ b/src/mainboard/gigabyte/ma785gmt/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/gigabyte/ma78gm/cmos.layout b/src/mainboard/gigabyte/ma78gm/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/gigabyte/ma78gm/cmos.layout +++ b/src/mainboard/gigabyte/ma78gm/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/gizmosphere/gizmo/cmos.layout b/src/mainboard/gizmosphere/gizmo/cmos.layout index 54ec400..451b3f6 100755 --- a/src/mainboard/gizmosphere/gizmo/cmos.layout +++ b/src/mainboard/gizmosphere/gizmo/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/google/bolt/cmos.layout b/src/mainboard/google/bolt/cmos.layout index afdd3c6..e73c2cf 100644 --- a/src/mainboard/google/bolt/cmos.layout +++ b/src/mainboard/google/bolt/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/google/butterfly/cmos.layout b/src/mainboard/google/butterfly/cmos.layout index f0163f1..0e3d0b2 100644 --- a/src/mainboard/google/butterfly/cmos.layout +++ b/src/mainboard/google/butterfly/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/google/falco/cmos.layout b/src/mainboard/google/falco/cmos.layout index afdd3c6..e73c2cf 100644 --- a/src/mainboard/google/falco/cmos.layout +++ b/src/mainboard/google/falco/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/google/link/cmos.layout b/src/mainboard/google/link/cmos.layout index b7320b5..fa791f0 100644 --- a/src/mainboard/google/link/cmos.layout +++ b/src/mainboard/google/link/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/google/parrot/cmos.layout b/src/mainboard/google/parrot/cmos.layout index b7320b5..fa791f0 100644 --- a/src/mainboard/google/parrot/cmos.layout +++ b/src/mainboard/google/parrot/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/google/peppy/cmos.layout b/src/mainboard/google/peppy/cmos.layout index afdd3c6..e73c2cf 100644 --- a/src/mainboard/google/peppy/cmos.layout +++ b/src/mainboard/google/peppy/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/google/slippy/cmos.layout b/src/mainboard/google/slippy/cmos.layout index afdd3c6..e73c2cf 100644 --- a/src/mainboard/google/slippy/cmos.layout +++ b/src/mainboard/google/slippy/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/google/stout/cmos.layout b/src/mainboard/google/stout/cmos.layout index b7320b5..fa791f0 100644 --- a/src/mainboard/google/stout/cmos.layout +++ b/src/mainboard/google/stout/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/hp/dl145_g1/cmos.layout b/src/mainboard/hp/dl145_g1/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/hp/dl145_g1/cmos.layout +++ b/src/mainboard/hp/dl145_g1/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/hp/dl145_g3/cmos.layout b/src/mainboard/hp/dl145_g3/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/hp/dl145_g3/cmos.layout +++ b/src/mainboard/hp/dl145_g3/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/hp/dl165_g6_fam10/cmos.layout b/src/mainboard/hp/dl165_g6_fam10/cmos.layout index 1c6a3cd..afded2c 100644 --- a/src/mainboard/hp/dl165_g6_fam10/cmos.layout +++ b/src/mainboard/hp/dl165_g6_fam10/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/ibase/mb899/cmos.layout b/src/mainboard/ibase/mb899/cmos.layout index b3e8c4e..2e8ee32 100644 --- a/src/mainboard/ibase/mb899/cmos.layout +++ b/src/mainboard/ibase/mb899/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/ibm/e325/cmos.layout b/src/mainboard/ibm/e325/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/ibm/e325/cmos.layout +++ b/src/mainboard/ibm/e325/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/ibm/e326/cmos.layout b/src/mainboard/ibm/e326/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/ibm/e326/cmos.layout +++ b/src/mainboard/ibm/e326/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/iei/juki-511p/cmos.layout b/src/mainboard/iei/juki-511p/cmos.layout index 67a3ce4..7663571 100644 --- a/src/mainboard/iei/juki-511p/cmos.layout +++ b/src/mainboard/iei/juki-511p/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/iei/kino-780am2-fam10/cmos.layout b/src/mainboard/iei/kino-780am2-fam10/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/iei/kino-780am2-fam10/cmos.layout +++ b/src/mainboard/iei/kino-780am2-fam10/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/iei/nova4899r/cmos.layout b/src/mainboard/iei/nova4899r/cmos.layout index 67a3ce4..7663571 100644 --- a/src/mainboard/iei/nova4899r/cmos.layout +++ b/src/mainboard/iei/nova4899r/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/intel/baskingridge/cmos.layout b/src/mainboard/intel/baskingridge/cmos.layout index e8a088d..ededf51 100644 --- a/src/mainboard/intel/baskingridge/cmos.layout +++ b/src/mainboard/intel/baskingridge/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/intel/cougar_canyon2/cmos.layout b/src/mainboard/intel/cougar_canyon2/cmos.layout index b7320b5..fa791f0 100644 --- a/src/mainboard/intel/cougar_canyon2/cmos.layout +++ b/src/mainboard/intel/cougar_canyon2/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/intel/d945gclf/cmos.layout b/src/mainboard/intel/d945gclf/cmos.layout index 9997584..8e48aa1 100644 --- a/src/mainboard/intel/d945gclf/cmos.layout +++ b/src/mainboard/intel/d945gclf/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/intel/eagleheights/cmos.layout b/src/mainboard/intel/eagleheights/cmos.layout index ae6f942..babdb2a 100644 --- a/src/mainboard/intel/eagleheights/cmos.layout +++ b/src/mainboard/intel/eagleheights/cmos.layout @@ -66,6 +66,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/intel/emeraldlake2/cmos.layout b/src/mainboard/intel/emeraldlake2/cmos.layout index b7320b5..fa791f0 100644 --- a/src/mainboard/intel/emeraldlake2/cmos.layout +++ b/src/mainboard/intel/emeraldlake2/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/intel/jarrell/cmos.layout b/src/mainboard/intel/jarrell/cmos.layout index 1f225f8..c8c4303 100644 --- a/src/mainboard/intel/jarrell/cmos.layout +++ b/src/mainboard/intel/jarrell/cmos.layout @@ -39,6 +39,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/intel/wtm2/cmos.layout b/src/mainboard/intel/wtm2/cmos.layout index afdd3c6..e73c2cf 100644 --- a/src/mainboard/intel/wtm2/cmos.layout +++ b/src/mainboard/intel/wtm2/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/iwave/iWRainbowG6/cmos.layout b/src/mainboard/iwave/iWRainbowG6/cmos.layout index ce98ffd..9830737 100644 --- a/src/mainboard/iwave/iWRainbowG6/cmos.layout +++ b/src/mainboard/iwave/iWRainbowG6/cmos.layout @@ -66,6 +66,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/iwill/dk8_htx/cmos.layout b/src/mainboard/iwill/dk8_htx/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/iwill/dk8_htx/cmos.layout +++ b/src/mainboard/iwill/dk8_htx/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/iwill/dk8s2/cmos.layout b/src/mainboard/iwill/dk8s2/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/iwill/dk8s2/cmos.layout +++ b/src/mainboard/iwill/dk8s2/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/iwill/dk8x/cmos.layout b/src/mainboard/iwill/dk8x/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/iwill/dk8x/cmos.layout +++ b/src/mainboard/iwill/dk8x/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/jetway/j7f2/cmos.layout b/src/mainboard/jetway/j7f2/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/jetway/j7f2/cmos.layout +++ b/src/mainboard/jetway/j7f2/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/jetway/pa78vm5/cmos.layout b/src/mainboard/jetway/pa78vm5/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/jetway/pa78vm5/cmos.layout +++ b/src/mainboard/jetway/pa78vm5/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/kontron/986lcd-m/cmos.layout b/src/mainboard/kontron/986lcd-m/cmos.layout index 4ae8834..df9c22f 100644 --- a/src/mainboard/kontron/986lcd-m/cmos.layout +++ b/src/mainboard/kontron/986lcd-m/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/kontron/kt690/cmos.layout b/src/mainboard/kontron/kt690/cmos.layout index 86aadf5..6fcaa36 100644 --- a/src/mainboard/kontron/kt690/cmos.layout +++ b/src/mainboard/kontron/kt690/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/kontron/ktqm77/cmos.layout b/src/mainboard/kontron/ktqm77/cmos.layout index dc6a44b..0ec6157 100644 --- a/src/mainboard/kontron/ktqm77/cmos.layout +++ b/src/mainboard/kontron/ktqm77/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/lanner/em8510/cmos.layout b/src/mainboard/lanner/em8510/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/lanner/em8510/cmos.layout +++ b/src/mainboard/lanner/em8510/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/lenovo/t60/cmos.layout b/src/mainboard/lenovo/t60/cmos.layout index fb036e0..24deb4f 100644 --- a/src/mainboard/lenovo/t60/cmos.layout +++ b/src/mainboard/lenovo/t60/cmos.layout @@ -66,6 +66,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/lenovo/x201/cmos.layout b/src/mainboard/lenovo/x201/cmos.layout index 6cf3787..23431ce 100644 --- a/src/mainboard/lenovo/x201/cmos.layout +++ b/src/mainboard/lenovo/x201/cmos.layout @@ -65,6 +65,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/lenovo/x230/cmos.layout b/src/mainboard/lenovo/x230/cmos.layout index 6f8822f..56232db 100644 --- a/src/mainboard/lenovo/x230/cmos.layout +++ b/src/mainboard/lenovo/x230/cmos.layout @@ -65,6 +65,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) @@ -101,7 +103,7 @@ entries # coreboot config options: cpu 424 1 e 2 hyper_threading
-#425 559 r 0 unused +#425 558 r 0 unused
# SandyBridge MRC Scrambler Seed values 896 32 r 0 mrc_scrambler_seed diff --git a/src/mainboard/lenovo/x60/cmos.layout b/src/mainboard/lenovo/x60/cmos.layout index 469371e..c0cb680 100644 --- a/src/mainboard/lenovo/x60/cmos.layout +++ b/src/mainboard/lenovo/x60/cmos.layout @@ -66,6 +66,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/lippert/frontrunner-af/cmos.layout b/src/mainboard/lippert/frontrunner-af/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/lippert/frontrunner-af/cmos.layout +++ b/src/mainboard/lippert/frontrunner-af/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/lippert/frontrunner/cmos.layout b/src/mainboard/lippert/frontrunner/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/lippert/frontrunner/cmos.layout +++ b/src/mainboard/lippert/frontrunner/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/lippert/toucan-af/cmos.layout b/src/mainboard/lippert/toucan-af/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/lippert/toucan-af/cmos.layout +++ b/src/mainboard/lippert/toucan-af/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/msi/ms7135/cmos.layout b/src/mainboard/msi/ms7135/cmos.layout index 694554d..14bf0ed 100644 --- a/src/mainboard/msi/ms7135/cmos.layout +++ b/src/mainboard/msi/ms7135/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 448 4 e 10 ram_voltage 452 4 e 11 nf4_voltage 728 256 h 0 user_data diff --git a/src/mainboard/msi/ms7260/cmos.layout b/src/mainboard/msi/ms7260/cmos.layout index da4de0a..cedbe86 100644 --- a/src/mainboard/msi/ms7260/cmos.layout +++ b/src/mainboard/msi/ms7260/cmos.layout @@ -65,6 +65,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/msi/ms9185/cmos.layout b/src/mainboard/msi/ms9185/cmos.layout index 1c6a3cd..afded2c 100644 --- a/src/mainboard/msi/ms9185/cmos.layout +++ b/src/mainboard/msi/ms9185/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/msi/ms9282/cmos.layout b/src/mainboard/msi/ms9282/cmos.layout index 238b4ce..87d8c47 100644 --- a/src/mainboard/msi/ms9282/cmos.layout +++ b/src/mainboard/msi/ms9282/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/msi/ms9652_fam10/cmos.layout b/src/mainboard/msi/ms9652_fam10/cmos.layout index a8cec16..60d3415 100644 --- a/src/mainboard/msi/ms9652_fam10/cmos.layout +++ b/src/mainboard/msi/ms9652_fam10/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/newisys/khepri/cmos.layout b/src/mainboard/newisys/khepri/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/newisys/khepri/cmos.layout +++ b/src/mainboard/newisys/khepri/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/nvidia/l1_2pvv/cmos.layout b/src/mainboard/nvidia/l1_2pvv/cmos.layout index a8cec16..60d3415 100644 --- a/src/mainboard/nvidia/l1_2pvv/cmos.layout +++ b/src/mainboard/nvidia/l1_2pvv/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/pcengines/alix1c/cmos.layout b/src/mainboard/pcengines/alix1c/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/pcengines/alix1c/cmos.layout +++ b/src/mainboard/pcengines/alix1c/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/pcengines/alix2d/cmos.layout b/src/mainboard/pcengines/alix2d/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/pcengines/alix2d/cmos.layout +++ b/src/mainboard/pcengines/alix2d/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/roda/rk886ex/cmos.layout b/src/mainboard/roda/rk886ex/cmos.layout index c879078..2580ab8 100644 --- a/src/mainboard/roda/rk886ex/cmos.layout +++ b/src/mainboard/roda/rk886ex/cmos.layout @@ -66,6 +66,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/roda/rk9/cmos.layout b/src/mainboard/roda/rk9/cmos.layout index 5c82567..f07c8f8 100644 --- a/src/mainboard/roda/rk9/cmos.layout +++ b/src/mainboard/roda/rk9/cmos.layout @@ -67,6 +67,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/samsung/lumpy/cmos.layout b/src/mainboard/samsung/lumpy/cmos.layout index 208e8ee..f49a848 100644 --- a/src/mainboard/samsung/lumpy/cmos.layout +++ b/src/mainboard/samsung/lumpy/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/samsung/stumpy/cmos.layout b/src/mainboard/samsung/stumpy/cmos.layout index ec393a5..2533e90 100644 --- a/src/mainboard/samsung/stumpy/cmos.layout +++ b/src/mainboard/samsung/stumpy/cmos.layout @@ -64,6 +64,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/siemens/sitemp_g1p1/cmos.layout b/src/mainboard/siemens/sitemp_g1p1/cmos.layout index 52a8b4f..04a1fa1 100644 --- a/src/mainboard/siemens/sitemp_g1p1/cmos.layout +++ b/src/mainboard/siemens/sitemp_g1p1/cmos.layout @@ -78,12 +78,13 @@ entries 436 4 e 14 chassis_t_min 440 4 e 14 chassis_t_max 444 4 e 15 chassis_dutycycle_min -448 4 e 15 chassis_dutycycle_max -#452 4 r 9 unused -456 4 e 10 boot_delay -460 4 e 11 lcd_panel_id +448 16 v 0 version #=========================================================== -464 512 s 0 boot_devices +464 4 e 15 chassis_dutycycle_max +468 4 e 10 boot_delay +472 4 e 11 lcd_panel_id +#476 4 r 0 unused +480 496 s 0 boot_devices 976 8 h 0 boot_default 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/sunw/ultra40/cmos.layout b/src/mainboard/sunw/ultra40/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/sunw/ultra40/cmos.layout +++ b/src/mainboard/sunw/ultra40/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/h8dme/cmos.layout b/src/mainboard/supermicro/h8dme/cmos.layout index a8cec16..60d3415 100644 --- a/src/mainboard/supermicro/h8dme/cmos.layout +++ b/src/mainboard/supermicro/h8dme/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/h8dmr/cmos.layout b/src/mainboard/supermicro/h8dmr/cmos.layout index a8cec16..60d3415 100644 --- a/src/mainboard/supermicro/h8dmr/cmos.layout +++ b/src/mainboard/supermicro/h8dmr/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/h8dmr_fam10/cmos.layout b/src/mainboard/supermicro/h8dmr_fam10/cmos.layout index a8cec16..60d3415 100644 --- a/src/mainboard/supermicro/h8dmr_fam10/cmos.layout +++ b/src/mainboard/supermicro/h8dmr_fam10/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/h8qgi/cmos.layout b/src/mainboard/supermicro/h8qgi/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/supermicro/h8qgi/cmos.layout +++ b/src/mainboard/supermicro/h8qgi/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/h8qme_fam10/cmos.layout b/src/mainboard/supermicro/h8qme_fam10/cmos.layout index a8cec16..60d3415 100644 --- a/src/mainboard/supermicro/h8qme_fam10/cmos.layout +++ b/src/mainboard/supermicro/h8qme_fam10/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/h8scm/cmos.layout b/src/mainboard/supermicro/h8scm/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/supermicro/h8scm/cmos.layout +++ b/src/mainboard/supermicro/h8scm/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/h8scm_fam10/cmos.layout b/src/mainboard/supermicro/h8scm_fam10/cmos.layout index 53fdef5..e14309a 100644 --- a/src/mainboard/supermicro/h8scm_fam10/cmos.layout +++ b/src/mainboard/supermicro/h8scm_fam10/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/x6dai_g/cmos.layout b/src/mainboard/supermicro/x6dai_g/cmos.layout index 81f1a69..258939e 100644 --- a/src/mainboard/supermicro/x6dai_g/cmos.layout +++ b/src/mainboard/supermicro/x6dai_g/cmos.layout @@ -37,6 +37,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/x6dhe_g/cmos.layout b/src/mainboard/supermicro/x6dhe_g/cmos.layout index 81f1a69..258939e 100644 --- a/src/mainboard/supermicro/x6dhe_g/cmos.layout +++ b/src/mainboard/supermicro/x6dhe_g/cmos.layout @@ -37,6 +37,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/x6dhe_g2/cmos.layout b/src/mainboard/supermicro/x6dhe_g2/cmos.layout index 81f1a69..258939e 100644 --- a/src/mainboard/supermicro/x6dhe_g2/cmos.layout +++ b/src/mainboard/supermicro/x6dhe_g2/cmos.layout @@ -37,6 +37,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/x6dhr_ig/cmos.layout b/src/mainboard/supermicro/x6dhr_ig/cmos.layout index 81f1a69..258939e 100644 --- a/src/mainboard/supermicro/x6dhr_ig/cmos.layout +++ b/src/mainboard/supermicro/x6dhr_ig/cmos.layout @@ -37,6 +37,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/x6dhr_ig2/cmos.layout b/src/mainboard/supermicro/x6dhr_ig2/cmos.layout index 81f1a69..258939e 100644 --- a/src/mainboard/supermicro/x6dhr_ig2/cmos.layout +++ b/src/mainboard/supermicro/x6dhr_ig2/cmos.layout @@ -37,6 +37,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/supermicro/x7db8/cmos.layout b/src/mainboard/supermicro/x7db8/cmos.layout index 29e78ad..32243b7 100644 --- a/src/mainboard/supermicro/x7db8/cmos.layout +++ b/src/mainboard/supermicro/x7db8/cmos.layout @@ -66,6 +66,8 @@ entries # ----------------------------------------------------------------- 0 120 r 0 reserved_memory #120 264 r 0 unused +120 16 v 0 version +#136 248 r 0 unused
# ----------------------------------------------------------------- # RTC_BOOT_BYTE (coreboot hardcoded) diff --git a/src/mainboard/technexion/tim5690/cmos.layout b/src/mainboard/technexion/tim5690/cmos.layout index 86aadf5..6fcaa36 100644 --- a/src/mainboard/technexion/tim5690/cmos.layout +++ b/src/mainboard/technexion/tim5690/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/technexion/tim8690/cmos.layout b/src/mainboard/technexion/tim8690/cmos.layout index 86aadf5..6fcaa36 100644 --- a/src/mainboard/technexion/tim8690/cmos.layout +++ b/src/mainboard/technexion/tim8690/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/technologic/ts5300/cmos.layout b/src/mainboard/technologic/ts5300/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/technologic/ts5300/cmos.layout +++ b/src/mainboard/technologic/ts5300/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/traverse/geos/cmos.layout b/src/mainboard/traverse/geos/cmos.layout index 864d89a..0e71deb 100644 --- a/src/mainboard/traverse/geos/cmos.layout +++ b/src/mainboard/traverse/geos/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 440 1 e 0 dcon_present 1008 16 h 0 check_sum
diff --git a/src/mainboard/tyan/s2735/cmos.layout b/src/mainboard/tyan/s2735/cmos.layout index 608f028..42da3f9 100644 --- a/src/mainboard/tyan/s2735/cmos.layout +++ b/src/mainboard/tyan/s2735/cmos.layout @@ -39,6 +39,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version #440 4 e 9 slow_cpu 444 1 e 1 nmi 728 256 h 0 user_data diff --git a/src/mainboard/tyan/s2850/cmos.layout b/src/mainboard/tyan/s2850/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s2850/cmos.layout +++ b/src/mainboard/tyan/s2850/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s2875/cmos.layout b/src/mainboard/tyan/s2875/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s2875/cmos.layout +++ b/src/mainboard/tyan/s2875/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s2880/cmos.layout b/src/mainboard/tyan/s2880/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s2880/cmos.layout +++ b/src/mainboard/tyan/s2880/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s2881/cmos.layout b/src/mainboard/tyan/s2881/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s2881/cmos.layout +++ b/src/mainboard/tyan/s2881/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s2882/cmos.layout b/src/mainboard/tyan/s2882/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s2882/cmos.layout +++ b/src/mainboard/tyan/s2882/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s2885/cmos.layout b/src/mainboard/tyan/s2885/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s2885/cmos.layout +++ b/src/mainboard/tyan/s2885/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s2891/cmos.layout b/src/mainboard/tyan/s2891/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s2891/cmos.layout +++ b/src/mainboard/tyan/s2891/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s2892/cmos.layout b/src/mainboard/tyan/s2892/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s2892/cmos.layout +++ b/src/mainboard/tyan/s2892/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s2895/cmos.layout b/src/mainboard/tyan/s2895/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s2895/cmos.layout +++ b/src/mainboard/tyan/s2895/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s2912/cmos.layout b/src/mainboard/tyan/s2912/cmos.layout index a8cec16..60d3415 100644 --- a/src/mainboard/tyan/s2912/cmos.layout +++ b/src/mainboard/tyan/s2912/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s2912_fam10/cmos.layout b/src/mainboard/tyan/s2912_fam10/cmos.layout index a8cec16..60d3415 100644 --- a/src/mainboard/tyan/s2912_fam10/cmos.layout +++ b/src/mainboard/tyan/s2912_fam10/cmos.layout @@ -64,6 +64,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s4880/cmos.layout b/src/mainboard/tyan/s4880/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s4880/cmos.layout +++ b/src/mainboard/tyan/s4880/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s4882/cmos.layout b/src/mainboard/tyan/s4882/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/tyan/s4882/cmos.layout +++ b/src/mainboard/tyan/s4882/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/tyan/s8226/cmos.layout b/src/mainboard/tyan/s8226/cmos.layout index 95ce3b5..70a2b67 100644 --- a/src/mainboard/tyan/s8226/cmos.layout +++ b/src/mainboard/tyan/s8226/cmos.layout @@ -63,6 +63,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/via/epia-cn/cmos.layout b/src/mainboard/via/epia-cn/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/via/epia-cn/cmos.layout +++ b/src/mainboard/via/epia-cn/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/via/epia-m/cmos.layout b/src/mainboard/via/epia-m/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/via/epia-m/cmos.layout +++ b/src/mainboard/via/epia-m/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/via/epia-m700/cmos.layout b/src/mainboard/via/epia-m700/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/via/epia-m700/cmos.layout +++ b/src/mainboard/via/epia-m700/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/via/epia-n/cmos.layout b/src/mainboard/via/epia-n/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/via/epia-n/cmos.layout +++ b/src/mainboard/via/epia-n/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/via/epia/cmos.layout b/src/mainboard/via/epia/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/via/epia/cmos.layout +++ b/src/mainboard/via/epia/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/via/pc2500e/cmos.layout b/src/mainboard/via/pc2500e/cmos.layout index fa5dc4c..0ca09ea 100644 --- a/src/mainboard/via/pc2500e/cmos.layout +++ b/src/mainboard/via/pc2500e/cmos.layout @@ -34,6 +34,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/via/vt8454c/cmos.layout b/src/mainboard/via/vt8454c/cmos.layout index e80bb94..87984da 100644 --- a/src/mainboard/via/vt8454c/cmos.layout +++ b/src/mainboard/via/vt8454c/cmos.layout @@ -29,6 +29,7 @@ entries 392 3 e 5 baud_rate 400 1 e 1 power_on_after_fail 412 4 e 6 debug_level +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/winent/mb6047/cmos.layout b/src/mainboard/winent/mb6047/cmos.layout index 924934c..10b1548 100644 --- a/src/mainboard/winent/mb6047/cmos.layout +++ b/src/mainboard/winent/mb6047/cmos.layout @@ -43,6 +43,7 @@ entries 440 4 e 9 slow_cpu 444 1 e 1 nmi 445 1 e 1 iommu +448 16 v 0 version 728 256 h 0 user_data 984 16 h 0 check_sum # Reserve the extended AMD configuration registers diff --git a/src/mainboard/winent/pl6064/cmos.layout b/src/mainboard/winent/pl6064/cmos.layout index c1354a2..789347f 100644 --- a/src/mainboard/winent/pl6064/cmos.layout +++ b/src/mainboard/winent/pl6064/cmos.layout @@ -36,6 +36,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/src/mainboard/wyse/s50/cmos.layout b/src/mainboard/wyse/s50/cmos.layout index e561358..341accd 100644 --- a/src/mainboard/wyse/s50/cmos.layout +++ b/src/mainboard/wyse/s50/cmos.layout @@ -59,6 +59,7 @@ entries 424 4 e 7 boot_third 428 4 h 0 boot_index 432 8 h 0 boot_countdown +448 16 v 0 version 1008 16 h 0 check_sum
enumerations diff --git a/util/nvramtool/accessors/layout-bin.c b/util/nvramtool/accessors/layout-bin.c index 4b7f8d6..79d2007 100644 --- a/util/nvramtool/accessors/layout-bin.c +++ b/util/nvramtool/accessors/layout-bin.c @@ -273,6 +273,10 @@ static void process_cmos_table(void) cmos_entry.config = CMOS_ENTRY_HEX; break;
+ case 'v': + cmos_entry.config = CMOS_ENTRY_VERSION; + break; + case 'r': cmos_entry.config = CMOS_ENTRY_RESERVED; break; diff --git a/util/nvramtool/accessors/layout-text.c b/util/nvramtool/accessors/layout-text.c index a06f560..a3ad5bc 100644 --- a/util/nvramtool/accessors/layout-text.c +++ b/util/nvramtool/accessors/layout-text.c @@ -192,6 +192,9 @@ static int line_num;
static const char *layout_filename = NULL;
+static unsigned int layout_checksum; +static int version_bit = -1; + /**************************************************************************** * set_layout_filename * @@ -258,6 +261,9 @@ void write_cmos_layout_header(const char *header_filename) cmos_entry->name, cmos_entry->bit); fprintf(fp, "#define CMOS_VLEN_%s\t%d\n", cmos_entry->name, cmos_entry->length); + if (strcmp (cmos_entry->name, "version") == 0) + fprintf(fp, "#define CMOS_version_expected\t%d\n", + cmos_entry->config_id); }
layout.summed_area_start = cmos_checksum_start; @@ -311,6 +317,26 @@ void write_cmos_layout(FILE * f) layout.summed_area_end, layout.checksum_at); }
+static void process_layout_checksum(void) +{ + cmos_entry_t cmos_entry; + + if (version_bit < 0) { + fprintf(stderr, + "%s: version field not found.\n", prog_name); + exit(1); + } + + memset (&cmos_entry, 0, sizeof (cmos_entry)); + + cmos_entry.bit = version_bit; + cmos_entry.length = 16; + cmos_entry.config_id = layout_checksum; + cmos_entry.config = 'v'; + strcpy (cmos_entry.name, "version"); + try_add_layout_file_entry(&cmos_entry); +} + /**************************************************************************** * process_layout_file * @@ -370,6 +396,8 @@ static void process_layout_file(FILE * f) /* Skip past all enums. They have already been processed. */ while (!process_enum(f, 1)) ;
+ process_layout_checksum(); + /* Process CMOS checksum info. */ process_checksum_info(f);
@@ -471,6 +499,31 @@ static int process_entry(FILE * f, int skip_add) create_entry(&cmos_entry, &line[match[1].rm_so], &line[match[2].rm_so], &line[match[3].rm_so], &line[match[4].rm_so], &line[match[5].rm_so]); + + + /* Special case of universal hashing. Small primes, + different, chosen at random. + */ + layout_checksum = (layout_checksum * 307) % 0xffff; + layout_checksum += cmos_entry.bit * 43 + + cmos_entry.length * 257 + + cmos_entry.config_id * 313 + + cmos_entry.config * 509; + layout_checksum %= 0xffff; + layout_checksum += compute_ip_checksum(cmos_entry.name, + strlen (cmos_entry.name)) + * 89; + layout_checksum %= 0xffff; + + if (cmos_entry.config == 'v') { + if (cmos_entry.length != 16) { + fprintf(stderr, + "%s: version is not 16-bit long.\n", prog_name); + exit(1); + } + version_bit = cmos_entry.bit; + break; + } try_add_layout_file_entry(&cmos_entry); break; } @@ -625,6 +678,10 @@ static void create_entry(cmos_entry_t * cmos_entry, cmos_entry->config = CMOS_ENTRY_HEX; break;
+ case 'v': + cmos_entry->config = CMOS_ENTRY_VERSION; + break; + case 's': cmos_entry->config = CMOS_ENTRY_STRING; break; @@ -853,6 +910,9 @@ static char cmos_entry_char_value(cmos_entry_config_t config) case CMOS_ENTRY_HEX: return 'h';
+ case CMOS_ENTRY_VERSION: + return 'v'; + case CMOS_ENTRY_RESERVED: return 'r';
diff --git a/util/nvramtool/cli/nvramtool.c b/util/nvramtool/cli/nvramtool.c index d5acc58..d2f833a 100644 --- a/util/nvramtool/cli/nvramtool.c +++ b/util/nvramtool/cli/nvramtool.c @@ -522,7 +522,8 @@ static int list_one_param(const char name[], int show_name) exit(1); }
- if (e->config == CMOS_ENTRY_RESERVED) { + if (e->config == CMOS_ENTRY_RESERVED + || e->config == CMOS_ENTRY_VERSION) { fprintf(stderr, "%s: Parameter %s is reserved.\n", prog_name, name); exit(1); @@ -546,6 +547,7 @@ static int list_all_params(void)
for (e = first_cmos_entry(); e != NULL; e = next_cmos_entry(e)) { if ((e->config == CMOS_ENTRY_RESERVED) + || (e->config == CMOS_ENTRY_VERSION) || is_checksum_name(e->name)) continue;
@@ -591,6 +593,7 @@ static void list_param_enums(const char name[]) break;
case CMOS_ENTRY_RESERVED: + case CMOS_ENTRY_VERSION: printf("Parameter %s is reserved.\n", name); break;
@@ -611,8 +614,8 @@ static void list_param_enums(const char name[]) ****************************************************************************/ static void set_one_param(const char name[], const char value[]) { - const cmos_entry_t *e; - unsigned long long n; + const cmos_entry_t *e, *ev; + unsigned long long n, nv;
if (is_checksum_name(name) || (e = find_cmos_entry(name)) == NULL) { fprintf(stderr, "%s: CMOS parameter %s not found.", prog_name, @@ -686,9 +689,18 @@ static void set_one_param(const char name[], const char value[]) goto fail; }
+ if ((ev = find_cmos_entry("version")) == NULL) { + fprintf(stderr, "%s: CMOS parameter %s not found.", prog_name, + "version"); + exit(1); + } + + prepare_cmos_write(ev, 0, &nv); + /* write the value to nonvolatile RAM */ set_iopl(3); cmos_write(e, n); + cmos_write(ev, nv); cmos_checksum_write(cmos_checksum_compute()); set_iopl(0); return; diff --git a/util/nvramtool/cmos_ops.c b/util/nvramtool/cmos_ops.c index 91c9f45..e20b24c 100644 --- a/util/nvramtool/cmos_ops.c +++ b/util/nvramtool/cmos_ops.c @@ -71,6 +71,7 @@ int prepare_cmos_read(const cmos_entry_t * e) switch (e->config) { case CMOS_ENTRY_ENUM: case CMOS_ENTRY_HEX: + case CMOS_ENTRY_VERSION: case CMOS_ENTRY_STRING: break;
@@ -141,6 +142,9 @@ int prepare_cmos_write(const cmos_entry_t * e, const char value_str[], return CMOS_OP_NEGATIVE_INT;
break; + case CMOS_ENTRY_VERSION: + out = e->config_id; + break;
case CMOS_ENTRY_STRING: if (e->length < (8 * strlen(value_str))) diff --git a/util/nvramtool/input_file.c b/util/nvramtool/input_file.c index 1520930..6ce2c5b 100644 --- a/util/nvramtool/input_file.c +++ b/util/nvramtool/input_file.c @@ -157,6 +157,14 @@ cmos_write_t *process_input_file(FILE * f) void do_cmos_writes(cmos_write_t * list) { cmos_write_t *item; + const cmos_entry_t *ev; + + ev = find_cmos_entry("version"); + if (ev == NULL) { + fprintf(stderr, "%s: CMOS parameter %s not found.", prog_name, + "version"); + exit(1); + }
set_iopl(3);
@@ -171,6 +179,7 @@ void do_cmos_writes(cmos_write_t * list) free(item); }
+ cmos_write(ev, ev->config_id); cmos_checksum_write(cmos_checksum_compute()); set_iopl(0); } diff --git a/util/nvramtool/layout.c b/util/nvramtool/layout.c index f543d12..1872e2c 100644 --- a/util/nvramtool/layout.c +++ b/util/nvramtool/layout.c @@ -53,6 +53,7 @@ static int entries_overlap(const cmos_entry_t * p, const cmos_entry_t * q); static const cmos_enum_item_t *find_first_cmos_enum_id(unsigned config_id);
const char checksum_param_name[] = "check_sum"; +const char version_param_name[] = "version";
/* Newer versions of coreboot store the 3 pieces of information below in the * coreboot table so we don't have to rely on hardcoded values. @@ -424,11 +425,12 @@ const cmos_enum_t *next_cmos_enum_id(const cmos_enum_t * last) * is_checksum_name * * Return 1 if 'name' matches the name of the parameter representing the CMOS - * checksum. Else return 0. + * checksum or version. Else return 0. ****************************************************************************/ int is_checksum_name(const char name[]) { - return !strcmp(name, checksum_param_name); + return !strcmp(name, checksum_param_name) + && !strcmp(name, version_param_name); }
/**************************************************************************** diff --git a/util/nvramtool/layout.h b/util/nvramtool/layout.h index 082c31b..b4e6d6e 100644 --- a/util/nvramtool/layout.h +++ b/util/nvramtool/layout.h @@ -50,6 +50,7 @@ typedef enum { CMOS_ENTRY_HEX = 'h', CMOS_ENTRY_STRING = 's', CMOS_ENTRY_RESERVED = 'r', + CMOS_ENTRY_VERSION = 'v', } cmos_entry_config_t;
/* This represents a CMOS parameter. */ diff --git a/util/nvramtool/lbtable.c b/util/nvramtool/lbtable.c index 5f1f22d..60f8b44 100644 --- a/util/nvramtool/lbtable.c +++ b/util/nvramtool/lbtable.c @@ -775,6 +775,10 @@ static void print_option_record(const struct cmos_entries *cmos_entry) strcpy(s, "HEX"); break;
+ case 'v': + strcpy(s, "VERSION"); + break; + case 'r': strcpy(s, "RESERVED"); break;