Date: Wed, 30 May 2018 04:15:33 +0000 (UTC) From: Nathan Whitehorn <nwhitehorn@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r334372 - head/sys/dev/vt/hw/ofwfb Message-ID: <201805300415.w4U4FX1r081210@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: nwhitehorn Date: Wed May 30 04:15:33 2018 New Revision: 334372 URL: https://svnweb.freebsd.org/changeset/base/334372 Log: If linebytes property is missing from the graphics device, assume no overscan and synthesize it from the display depth and screen width. This may not be right, but it sometimes right and is better than returning CN_DEAD. Modified: head/sys/dev/vt/hw/ofwfb/ofwfb.c Modified: head/sys/dev/vt/hw/ofwfb/ofwfb.c ============================================================================== --- head/sys/dev/vt/hw/ofwfb/ofwfb.c Wed May 30 04:12:51 2018 (r334371) +++ head/sys/dev/vt/hw/ofwfb/ofwfb.c Wed May 30 04:15:33 2018 (r334372) @@ -394,8 +394,7 @@ ofwfb_init(struct vt_device *vd) /* Make sure we have needed properties */ if (OF_getproplen(node, "height") != sizeof(height) || OF_getproplen(node, "width") != sizeof(width) || - OF_getproplen(node, "depth") != sizeof(depth) || - OF_getproplen(node, "linebytes") != sizeof(sc->fb.fb_stride)) + OF_getproplen(node, "depth") != sizeof(depth)) return (CN_DEAD); /* Only support 8 and 32-bit framebuffers */ @@ -406,7 +405,9 @@ ofwfb_init(struct vt_device *vd) OF_getprop(node, "height", &height, sizeof(height)); OF_getprop(node, "width", &width, sizeof(width)); - OF_getprop(node, "linebytes", &stride, sizeof(stride)); + if (OF_getprop(node, "linebytes", &stride, sizeof(stride)) != + sizeof(stride)) + stride = width*depth/8; sc->fb.fb_height = height; sc->fb.fb_width = width;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201805300415.w4U4FX1r081210>