mirror of
https://github.com/fail0verflow/switch-coreboot.git
synced 2025-05-04 01:39:18 -04:00
UPSTREAM: cbgfx: Add portrait screen support
cbgfx currently does not support portrait screen which height >width.
so add it.
BUG=none
BRANCH=none
TEST=none
Change-Id: I5efd25158e383f675131e0c6469b7af5147f908e
Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Original-Commit-Id: d0e465456e
Original-Change-Id: I66fee6d73654e736a2db4a3d191f030c52a23e0d
Original-Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
Original-Reviewed-on: https://review.coreboot.org/19474
Original-Tested-by: build bot (Jenkins)
Original-Reviewed-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/494047
Commit-Ready: Furquan Shaikh <furquan@chromium.org>
This commit is contained in:
parent
9ee9cbf549
commit
7bc96dc859
1 changed files with 10 additions and 10 deletions
|
@ -154,18 +154,18 @@ static int cbgfx_init(void)
|
||||||
screen.offset.x = 0;
|
screen.offset.x = 0;
|
||||||
screen.offset.y = 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) {
|
if (screen.size.height > screen.size.width) {
|
||||||
const int bpl = fbinfo->bytes_per_line;
|
canvas.size.height = screen.size.width;
|
||||||
LOG("Portrait screen not supported, forcing square image!\n");
|
canvas.size.width = canvas.size.height;
|
||||||
memset(fbaddr + screen.size.width * bpl, 0,
|
canvas.offset.x = 0;
|
||||||
(screen.size.height - screen.size.width) * bpl);
|
canvas.offset.y = (screen.size.height - canvas.size.height) / 2;
|
||||||
screen.size.height = screen.size.width;
|
} else {
|
||||||
}
|
|
||||||
canvas.size.height = screen.size.height;
|
canvas.size.height = screen.size.height;
|
||||||
canvas.size.width = canvas.size.height;
|
canvas.size.width = canvas.size.height;
|
||||||
canvas.offset.x = (screen.size.width - canvas.size.width) / 2;
|
canvas.offset.x = (screen.size.width - canvas.size.width) / 2;
|
||||||
canvas.offset.y = 0;
|
canvas.offset.y = 0;
|
||||||
|
}
|
||||||
|
|
||||||
initialized = 1;
|
initialized = 1;
|
||||||
LOG("cbgfx initialized: screen:width=%d, height=%d, offset=%d canvas:width=%d, height=%d, offset=%d\n",
|
LOG("cbgfx initialized: screen:width=%d, height=%d, offset=%d canvas:width=%d, height=%d, offset=%d\n",
|
||||||
|
|
Loading…
Add table
Reference in a new issue