summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Richardson <wfrichar@chromium.org>2015-01-26 13:11:31 -0800
committerAaron Durbin <adurbin@chromium.org>2015-04-20 17:06:15 +0200
commit5aecacca053c3ce8bdb7b8ce94473703b3240e37 (patch)
treed7276d0f41ee710be74d9157375e3efbd6233711
parentcdf92eacd5d2f85de473778cc1ebf35c2468a7f2 (diff)
vboot2 workbuf alignment is now 16 bytes, not 8
BUG=chromium:452179 BRANCH=ToT CQ-DEPEND=CL:243362 TEST=manual emerge-veyron_pinky coreboot Original-Change-Id: Ibcbaea2990e5e06ea7cfaaa5412ef7c1477f5fcc Original-Signed-off-by: Bill Richardson <wfrichar@chromium.org> Original-Reviewed-on: https://chromium-review.googlesource.com/243380 Original-Reviewed-by: Randall Spangler <rspangler@chromium.org> (cherry picked from commit 8e5c18eeb21944bdcb064b4491c6781d16ef5608) Signed-off-by: Aaron Durbin <adurbin@chromium.org> Change-Id: I26f6fb67655cb1dfbdcdc48530ef6bfeb1aa692a Reviewed-on: http://review.coreboot.org/9705 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <pgeorgi@google.com>
-rw-r--r--src/vendorcode/google/chromeos/memlayout.h2
-rw-r--r--src/vendorcode/google/chromeos/vboot2/verstub.c7
2 files changed, 6 insertions, 3 deletions
diff --git a/src/vendorcode/google/chromeos/memlayout.h b/src/vendorcode/google/chromeos/memlayout.h
index a7ea32e00e..9a1009324a 100644
--- a/src/vendorcode/google/chromeos/memlayout.h
+++ b/src/vendorcode/google/chromeos/memlayout.h
@@ -26,7 +26,7 @@
* and algorithm -- what works for you might stop working after an update. Do
* NOT lower the asserted minimum without consulting vboot devs (rspangler)! */
#define VBOOT2_WORK(addr, size) \
- REGION(vboot2_work, addr, size, 8) \
+ REGION(vboot2_work, addr, size, 16) \
_ = ASSERT(size >= 12K, "vboot2 work buffer must be at least 12K!");
#ifdef __VERSTAGE__
diff --git a/src/vendorcode/google/chromeos/vboot2/verstub.c b/src/vendorcode/google/chromeos/vboot2/verstub.c
index 86c6e1ce2a..c4319ba256 100644
--- a/src/vendorcode/google/chromeos/vboot2/verstub.c
+++ b/src/vendorcode/google/chromeos/vboot2/verstub.c
@@ -32,8 +32,11 @@ static struct vb2_working_data *init_vb2_working_data(void)
wd = vboot_get_working_data();
memset(wd, 0, _vboot2_work_size);
- /* 8-byte alignment for ARMv7 */
- wd->buffer_offset = ALIGN_UP(sizeof(*wd), 8);
+ /*
+ * vboot prefers 16-byte alignment. This takes away 16 bytes
+ * from the VBOOT2_WORK region, but the vboot devs said that's okay.
+ */
+ wd->buffer_offset = ALIGN_UP(sizeof(*wd), 16);
wd->buffer_size = _vboot2_work_size - wd->buffer_offset;
return wd;