Arthur Heymans (arthur(a)aheymans.xyz) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/18148
-gerrit
commit 65c5bc37c3e52811970f76f144fcf2fae393c594
Author: Arthur Heymans <arthur(a)aheymans.xyz>
Date: Sun Jan 15 14:24:56 2017 +0100
[RFC] Allow to add a second bootblock at a 64K offset for BUC.TS
This allows to add a second bootblock at an offset of 64K in order for
it to be used if the BUC.TS bit, RCBA(0x3414)[BITO], is set.
This method is often used to flash coreboot when the vendor BIOS only
write protects its bootblock at the bottom of flash (e.g. Lenovo
thinkpad X60 and T60), but can also be used to have a backup while
hacking on bootblock code.
TESTED on Thinkpad x200 with BIT0 of RCBA(0x3410) unset (not default
in coreboot).
Some questions, remarks:
- How to do this with cbfstool could also simply be documented instead
of integrated in the build system;
- Is this Makefile code a good way to achieve this?
- Kconfig: Should this be board specific instead of southbridge
specific, since it is mainly aimed at flashing coreboot from vendor BIOS? It
really depends on the vendor BIOS bootblock if this Backed Up Control
Top Swap trick works.
Change-Id: I37e288e710edbe41651d09d2a6981a571df69bde
Signed-off-by: Arthur Heymans <arthur(a)aheymans.xyz>
---
Makefile.inc | 7 +++++++
src/southbridge/intel/common/Kconfig | 18 ++++++++++++++++++
src/southbridge/intel/i82801gx/Kconfig | 1 +
src/southbridge/intel/i82801ix/Kconfig | 1 +
4 files changed, 27 insertions(+)
diff --git a/Makefile.inc b/Makefile.inc
index c5ce30f..01c0869 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -844,6 +844,13 @@ ifeq ($(CONFIG_ARCH_X86),y)
-n bootblock \
-t bootblock \
-b -$(call file-size,$(objcbfs)/bootblock.bin) $(cbfs-autogen-attributes)
+ifeq ($(CONFIG_BUCTS_BOOTBLOCK),y)
+ $(CBFSTOOL) $@.tmp add \
+ -f $(objcbfs)/bootblock.bin \
+ -n bootblock_bucts \
+ -t bootblock \
+ -b -$(call int-add,$(call file-size,$(objcbfs)/bootblock.bin) $(CONFIG_BOOTBLOCK_SIZE)) $(cbfs-autogen-attributes)
+endif # ifeq CONFIG_BUCTS_BOOTBLOCK
else # ifeq ($(CONFIG_ARCH_X86),y)
$(CBFSTOOL) $@.tmp write -u \
-r BOOTBLOCK \
diff --git a/src/southbridge/intel/common/Kconfig b/src/southbridge/intel/common/Kconfig
index 7bc686d..31f37dc 100644
--- a/src/southbridge/intel/common/Kconfig
+++ b/src/southbridge/intel/common/Kconfig
@@ -2,3 +2,21 @@ config SOUTHBRIDGE_INTEL_COMMON
def_bool n
config SOUTHBRIDGE_INTEL_COMMON_GPIO
def_bool n
+config HAVE_BUCTS
+ bool
+ default n
+config BUCTS_BOOTBLOCK
+ bool "Include a BUC.TS bootblock"
+ default n
+ depends on HAVE_BUCTS
+ help
+ Some vendor BIOS only write protect their bootblock.
+ Using the buc.ts register RCBA[0x3414], it is possible to have
+ the southbridge look for the bootblock at a 64K offset
+ instead of the usual top of flash, which might not be
+ write protected.
+ Select this to put a 'second' bootblock at a 64K offset.
+config BOOTBLOCK_SIZE
+ hex
+ depends on BUCTS_BOOTBLOCK
+ default 0x10000
diff --git a/src/southbridge/intel/i82801gx/Kconfig b/src/southbridge/intel/i82801gx/Kconfig
index b2265c4..4eb2835 100644
--- a/src/southbridge/intel/i82801gx/Kconfig
+++ b/src/southbridge/intel/i82801gx/Kconfig
@@ -24,6 +24,7 @@ config SOUTHBRIDGE_INTEL_I82801GX
select HAVE_SMI_HANDLER
select COMMON_FADT
select SOUTHBRIDGE_INTEL_COMMON_GPIO
+ select HAVE_BUCTS
if SOUTHBRIDGE_INTEL_I82801GX
diff --git a/src/southbridge/intel/i82801ix/Kconfig b/src/southbridge/intel/i82801ix/Kconfig
index e4d1f91..0928a8a 100644
--- a/src/southbridge/intel/i82801ix/Kconfig
+++ b/src/southbridge/intel/i82801ix/Kconfig
@@ -25,6 +25,7 @@ config SOUTHBRIDGE_INTEL_I82801IX
select HAVE_USBDEBUG_OPTIONS
select SOUTHBRIDGE_INTEL_COMMON_GPIO
select HAVE_INTEL_FIRMWARE
+ select HAVE_BUCTS
if SOUTHBRIDGE_INTEL_I82801IX
Arthur Heymans (arthur(a)aheymans.xyz) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/18148
-gerrit
commit 2a6158b76d962a9cbb03c39b4d019dd86bb88bb3
Author: Arthur Heymans <arthur(a)aheymans.xyz>
Date: Sun Jan 15 14:24:56 2017 +0100
[RFC] Allow to add a second bootblock at a 64K offset for BUC.TS
This allows to add a second bootblock at an offset of 64K in order for
it to be used if the BUC.TS bit, RCBA(0x3414)[BITO], is set.
This method is often used to flash coreboot when the vendor BIOS only
write protects its bootblock at the bottom of flash (e.g. Lenovo
thinkpad X60 and T60), but can also be used to have a backup while
hacking on bootblock code.
TESTED on Thinkpad x200 with BIT0 of RCBA(0x3410) unset (not default
in coreboot).
Some questions, remarks:
- How to do this with cbfstool could also simply be documented instead
of integrated in the build system;
- Is this Makefile code a good way to achieve this?
- Kconfig: Should this be board specific instead of southbridge
specific, since it is mainly aimed at flashing coreboot from vendor BIOS? It
really depends on the vendor BIOS bootblock if this Backed Up Control
Top Swap trick works.
Change-Id: I37e288e710edbe41651d09d2a6981a571df69bde
Signed-off-by: Arthur Heymans <arthur(a)aheymans.xyz>
---
Makefile.inc | 7 +++++++
src/southbridge/intel/common/Kconfig | 18 ++++++++++++++++++
src/southbridge/intel/i82801gx/Kconfig | 1 +
src/southbridge/intel/i82801ix/Kconfig | 1 +
4 files changed, 27 insertions(+)
diff --git a/Makefile.inc b/Makefile.inc
index c5ce30f..01c0869 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -844,6 +844,13 @@ ifeq ($(CONFIG_ARCH_X86),y)
-n bootblock \
-t bootblock \
-b -$(call file-size,$(objcbfs)/bootblock.bin) $(cbfs-autogen-attributes)
+ifeq ($(CONFIG_BUCTS_BOOTBLOCK),y)
+ $(CBFSTOOL) $@.tmp add \
+ -f $(objcbfs)/bootblock.bin \
+ -n bootblock_bucts \
+ -t bootblock \
+ -b -$(call int-add,$(call file-size,$(objcbfs)/bootblock.bin) $(CONFIG_BOOTBLOCK_SIZE)) $(cbfs-autogen-attributes)
+endif # ifeq CONFIG_BUCTS_BOOTBLOCK
else # ifeq ($(CONFIG_ARCH_X86),y)
$(CBFSTOOL) $@.tmp write -u \
-r BOOTBLOCK \
diff --git a/src/southbridge/intel/common/Kconfig b/src/southbridge/intel/common/Kconfig
index 7bc686d..12d84af 100644
--- a/src/southbridge/intel/common/Kconfig
+++ b/src/southbridge/intel/common/Kconfig
@@ -2,3 +2,21 @@ config SOUTHBRIDGE_INTEL_COMMON
def_bool n
config SOUTHBRIDGE_INTEL_COMMON_GPIO
def_bool n
+config HAVE_BUCTS
+ bool
+ default n
+config BUCTS_BOOTBLOCK
+ bool "Include a BUC.TS bootblock"
+ default n
+ depends on HAVE_BUCTS
+ help
+ Some vendor BIOS only write protect their bootblock.
+ Using the buc.ts register RCBA[0x3414], it is possible to have
+ the southbridge look for the bootblock at a 64K offset
+ instead of the usual top of flash, which might not be
+ write protected.
+ Select this to put a 'second' bootblock at a 64K offset.
+config BOOTBLOCK_SIZE
+ hex
+ depends on BUCTS_BOOTBLOCK
+ default 0x10000
\ No newline at end of file
diff --git a/src/southbridge/intel/i82801gx/Kconfig b/src/southbridge/intel/i82801gx/Kconfig
index b2265c4..4eb2835 100644
--- a/src/southbridge/intel/i82801gx/Kconfig
+++ b/src/southbridge/intel/i82801gx/Kconfig
@@ -24,6 +24,7 @@ config SOUTHBRIDGE_INTEL_I82801GX
select HAVE_SMI_HANDLER
select COMMON_FADT
select SOUTHBRIDGE_INTEL_COMMON_GPIO
+ select HAVE_BUCTS
if SOUTHBRIDGE_INTEL_I82801GX
diff --git a/src/southbridge/intel/i82801ix/Kconfig b/src/southbridge/intel/i82801ix/Kconfig
index e4d1f91..0928a8a 100644
--- a/src/southbridge/intel/i82801ix/Kconfig
+++ b/src/southbridge/intel/i82801ix/Kconfig
@@ -25,6 +25,7 @@ config SOUTHBRIDGE_INTEL_I82801IX
select HAVE_USBDEBUG_OPTIONS
select SOUTHBRIDGE_INTEL_COMMON_GPIO
select HAVE_INTEL_FIRMWARE
+ select HAVE_BUCTS
if SOUTHBRIDGE_INTEL_I82801IX
the following patch was just integrated into master:
commit 35d7d361e33bea244a6ca4b270061f6ab92f7cd8
Author: Paul Menzel <pmenzel(a)molgen.mpg.de>
Date: Fri Jan 20 17:33:19 2017 +0100
.gitignore: Don’t track Tint directory
This is done already for the other payloads.
Change-Id: I98eb05404c0e181ad99a61d8c97987ceadd9a53c
Signed-off-by: Paul Menzel <pmenzel(a)molgen.mpg.de>
Reviewed-on: https://review.coreboot.org/18188
Reviewed-by: Martin Roth <martinroth(a)google.com>
Tested-by: Martin Roth <martinroth(a)google.com>
See https://review.coreboot.org/18188 for details.
-gerrit
the following patch was just integrated into master:
commit f1343df54c2de10c69730e205052db623ef26cf1
Author: Vadim Bendebury <vbendeb(a)chromium.org>
Date: Sun May 22 15:53:37 2016 -0700
gru: kevin: define GPIOs used on both platforms
The same GPIOs are used on both platforms, definitions are added an a
new .h to make it easier to re-use them across the code.
BRANCH=none
BUG=chrome-os-partner:51537
TEST=panel backlight still enabled on Gru as before. The rest of the
GPIOs are used in the upcoming patches.
Change-Id: I54ef3e8dd79670bdb037baeec91430113d11bcc1
Signed-off-by: Patrick Georgi <pgeorgi(a)chromium.org>
Original-Commit-Id: c58788026f28af52c650da0159b93d97269ca4a9
Original-Change-Id: I1a6c5b5beb82ffcc5fea397e8e9ec2f183f4a7e0
Original-Signed-off-by: Vadim Bendebury <vbendeb(a)chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/346219
Original-Tested-by: Shunqian Zheng <zhengsq(a)rock-chips.com>
Reviewed-on: https://review.coreboot.org/18176
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth(a)google.com>
See https://review.coreboot.org/18176 for details.
-gerrit
the following patch was just integrated into master:
commit eee4f6b224b897184327539fcbeb23f9b26f02d9
Author: Arthur Heymans <arthur(a)aheymans.xyz>
Date: Tue Jan 3 00:49:45 2017 +0100
nb/x4x/raminit: Fix programming dram timings
The results were obtained by comparing the MCHBAR registers of vendor bios
with coreboot at the same dram timings.
This fixes 2 issues:
* 1333MHz fsb CPUs were limited to 667MHz ddr2 speeds, because with
800MHz raminit failed;
* 1067MHz fsb CPUs did not boot when second dimm slot was populated.
TESTED on ga-g41m-es2l on 800, 1067 and 1333MHz CPUs with
DDR2 667 and 800MHz dimms.
Change-Id: I70f554f97b44947c2c78713b4d73a47c06d7ba60
Signed-off-by: Arthur Heymans <arthur(a)aheymans.xyz>
Reviewed-on: https://review.coreboot.org/18022
Tested-by: build bot (Jenkins)
Reviewed-by: Nico Huber <nico.h(a)gmx.de>
See https://review.coreboot.org/18022 for details.
-gerrit
the following patch was just integrated into master:
commit acbb70b810c6eb17e403c37fa2888b479e5b23a9
Author: Paul Menzel <pmenzel(a)molgen.mpg.de>
Date: Tue Nov 29 10:30:44 2016 +0100
Makefile.inc: Explicitly set GNU11 as C language standard
Different compiler versions use a different C language standard by
default.
GCC 4.9 uses GNU89 by default [1], while GCC 5.x uses GNU11 [2].
The discussion on the mailing list in thread *[RFC] Setting C99 by
default* [3] resulted in the preference of C11, which results in build
errors.
So explicitly set it to GNU11, which is also what the current coreboot
toolchain with GCC 5.3 is using.
[1] https://gcc.gnu.org/onlinedocs/gcc-4.9.4/gcc/C-Dialect-Options.html
[2] https://gcc.gnu.org/onlinedocs/gcc-5.4.0/gcc/Standards.html
[3] https://www.coreboot.org/pipermail/coreboot/2016-November/082541.html
Change-Id: If1569618f8044925ff72dcf3543480b34d4f90d6
Signed-off-by: Paul Menzel <pmenzel(a)molgen.mpg.de>
Reviewed-on: https://review.coreboot.org/17636
Reviewed-by: Julius Werner <jwerner(a)chromium.org>
Reviewed-by: Arthur Heymans <arthur(a)aheymans.xyz>
Tested-by: build bot (Jenkins)
Tested-by: Raptor Engineering Automated Test Stand <noreply(a)raptorengineeringinc.com>
See https://review.coreboot.org/17636 for details.
-gerrit
the following patch was just integrated into master:
commit 72353056852f5fec15763f2b8ab42e6931c354fb
Author: Tim Chen <Tim-Chen(a)quantatw.com>
Date: Fri Jan 20 11:23:44 2017 +0800
mainboard/google/reef: Increase TSR1 trigger point
Update the DPTF parameters based on thermal test result.
(ZHT_DPTF_EVT2_v0.4_20170120.xlsx)
1. Update DPTF TSR1 passive trigger point.
TSR1 passive point: 46
BUG=chrome-os-partner:60038
BRANCH=master
TEST=build and boot on electro dut
Change-Id: If35e4cf2dbf7c506534c52a052598f6204d5315a
Signed-off-by: Tim Chen <Tim-Chen(a)quantatw.com>
Reviewed-on: https://review.coreboot.org/18183
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter(a)users.sourceforge.net>
Reviewed-by: Aaron Durbin <adurbin(a)chromium.org>
See https://review.coreboot.org/18183 for details.
-gerrit
the following patch was just integrated into master:
commit 949e34c3ee85524f5b0a27b72d3064752aa3d097
Author: Duncan Laurie <dlaurie(a)chromium.org>
Date: Sat Jan 21 19:11:37 2017 -0800
google/eve: Fixes for devicetree settings
The devicetree settings were incorrect in a few places with
respect to the SOC and board design:
- IMVP8 VR workaround is for MP2939 and not MP2949 on Eve
- IccMax values are incorrect according to KBL-Y EDS
- USB2[6] is incorrectly labeled
- I2C touch devices do not need probed as they are not optional
- PCIe Root Port 5 should be enabled
- I2C5 device should not be enabled as it is unused
BUG=chrome-os-partner:58666
TEST=manually tested on Eve board
Change-Id: I74e092444ead4b40c6d8091b80a691d44e2c6c7d
Signed-off-by: Duncan Laurie <dlaurie(a)chromium.org>
Reviewed-on: https://review.coreboot.org/18200
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin(a)chromium.org>
See https://review.coreboot.org/18200 for details.
-gerrit