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
This commit is contained in:
parent
92c78af154
commit
04cebdd3c6
8
sys/external/bsd/drm2/i915drm/intelfb.c
vendored
8
sys/external/bsd/drm2/i915drm/intelfb.c
vendored
@ -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 @@ intelfb_attach_task(struct i915drmkms_task *task)
|
||||
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;
|
||||
|
Loading…
Reference in New Issue
Block a user