Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/external/bsd/drm2/i915drm kern/52229
details: https://anonhg.NetBSD.org/src/rev/37cbd8f23858
branches: trunk
changeset: 964735:37cbd8f23858
user: rin <rin%NetBSD.org@localhost>
date: Thu Aug 15 00:27:47 2019 +0000
description:
kern/52229
Correct linebytes (stride) for intelfb(4), which fixes screen
corruption on the following machines:
- MacBookAir5,2 (Ivy Bridge, 13-inch, Mid 2012)
- MacBookAir6,1 (Haswell, 11-inch, Early 2014)
Now, wsdisplay(4) console as well as intel(4) driver of Xorg
works fine on these machines.
Also there's no side effects found on another machine:
- ThinkPad T480s (Kaby Lake R)
XXX
pullup to netbsd-9
diffstat:
sys/external/bsd/drm2/i915drm/intelfb.c | 8 +++-----
1 files changed, 3 insertions(+), 5 deletions(-)
diffs (34 lines):
diff -r 4e29e26c4429 -r 37cbd8f23858 sys/external/bsd/drm2/i915drm/intelfb.c
--- a/sys/external/bsd/drm2/i915drm/intelfb.c Wed Aug 14 15:08:53 2019 +0000
+++ b/sys/external/bsd/drm2/i915drm/intelfb.c Thu Aug 15 00:27:47 2019 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: intelfb.c,v 1.16 2018/12/01 01:56:30 msaitoh Exp $ */
+/* $NetBSD: intelfb.c,v 1.17 2019/08/15 00:27:47 rin Exp $ */
/*-
* Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: intelfb.c,v 1.16 2018/12/01 01:56:30 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: intelfb.c,v 1.17 2019/08/15 00:27:47 rin Exp $");
#include <sys/types.h>
#include <sys/bus.h>
@@ -166,14 +166,12 @@
struct intelfb_softc *const sc = container_of(task,
struct intelfb_softc, sc_attach_task);
const struct intelfb_attach_args *const ifa = &sc->sc_ifa;
- const struct drm_fb_helper_surface_size *const sizes = &ifa->ifa_fb_sizes;
const struct drmfb_attach_args da = {
.da_dev = sc->sc_dev,
.da_fb_helper = ifa->ifa_fb_helper,
.da_fb_sizes = &ifa->ifa_fb_sizes,
.da_fb_vaddr = bus_space_vaddr(ifa->ifa_fb_bst, sc->sc_fb_bsh),
- .da_fb_linebytes = roundup2((sizes->surface_width *
- howmany(sizes->surface_bpp, 8)), 64),
+ .da_fb_linebytes = ifa->ifa_fb_helper->fb->pitches[0],
.da_params = &intelfb_drmfb_params,
};
int error;
Home |
Main Index |
Thread Index |
Old Index