[coreboot-gerrit] Change in coreboot[master]: cbgfx: Add portrait screen support
Martin Roth (Code Review)
gerrit at coreboot.org
Mon May 1 17:52:14 CEST 2017
Martin Roth has submitted this change and it was merged. ( https://review.coreboot.org/19474 )
Change subject: cbgfx: Add portrait screen support
......................................................................
cbgfx: Add portrait screen support
cbgfx currently does not support portrait screen which height >width.
so add it.
Change-Id: I66fee6d73654e736a2db4a3d191f030c52a23e0d
Signed-off-by: Nickey Yang <nickey.yang at rock-chips.com>
Reviewed-on: https://review.coreboot.org/19474
Tested-by: build bot (Jenkins)
Reviewed-by: Julius Werner <jwerner at chromium.org>
---
M payloads/libpayload/drivers/video/graphics.c
1 file changed, 10 insertions(+), 10 deletions(-)
Approvals:
Julius Werner: Looks good to me, approved
build bot (Jenkins): Verified
diff --git a/payloads/libpayload/drivers/video/graphics.c b/payloads/libpayload/drivers/video/graphics.c
index 4a8792c..d4eaa09 100644
--- a/payloads/libpayload/drivers/video/graphics.c
+++ b/payloads/libpayload/drivers/video/graphics.c
@@ -154,18 +154,18 @@
screen.offset.x = 0;
screen.offset.y = 0;
- /* Calculate canvas size & offset, assuming the screen is landscape */
+ /* Calculate canvas size & offset. Canvas is always square. */
if (screen.size.height > screen.size.width) {
- const int bpl = fbinfo->bytes_per_line;
- LOG("Portrait screen not supported, forcing square image!\n");
- memset(fbaddr + screen.size.width * bpl, 0,
- (screen.size.height - screen.size.width) * bpl);
- screen.size.height = screen.size.width;
+ canvas.size.height = screen.size.width;
+ canvas.size.width = canvas.size.height;
+ canvas.offset.x = 0;
+ canvas.offset.y = (screen.size.height - canvas.size.height) / 2;
+ } else {
+ canvas.size.height = screen.size.height;
+ canvas.size.width = canvas.size.height;
+ canvas.offset.x = (screen.size.width - canvas.size.width) / 2;
+ canvas.offset.y = 0;
}
- canvas.size.height = screen.size.height;
- canvas.size.width = canvas.size.height;
- canvas.offset.x = (screen.size.width - canvas.size.width) / 2;
- canvas.offset.y = 0;
initialized = 1;
LOG("cbgfx initialized: screen:width=%d, height=%d, offset=%d canvas:width=%d, height=%d, offset=%d\n",
--
To view, visit https://review.coreboot.org/19474
To unsubscribe, visit https://review.coreboot.org/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I66fee6d73654e736a2db4a3d191f030c52a23e0d
Gerrit-PatchSet: 3
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Owner: nickey.yang at rock-chips.com
Gerrit-Reviewer: Julius Werner <jwerner at chromium.org>
Gerrit-Reviewer: Martin Roth <martinroth at google.com>
Gerrit-Reviewer: Paul Menzel <paulepanter at users.sourceforge.net>
Gerrit-Reviewer: Shunqian Zheng <zhengsq at rock-chips.com>
Gerrit-Reviewer: build bot (Jenkins)
Gerrit-Reviewer: nickey.yang at rock-chips.com
More information about the coreboot-gerrit
mailing list