Module Name: src Committed By: maya Date: Sat Dec 17 12:11:38 UTC 2016
Modified Files: src/sys/arch/arm/nvidia: tegra_drm.h tegra_drm_fb.c tegra_fb.c Log Message: Fix regression introduced by myself with the addition of da_fb_linebytes tegra_fb was not adjusted so da_fb_linebytes was used uninitialized add tfa_fb_linebytes and match radeonfb/nouveaufb code in how we set it switch to using an initializer to hopefully avoid future errors this change doesn't need to be pulled up, as tegra_fb.c is absent in netbsd-7 To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/sys/arch/arm/nvidia/tegra_drm.h cvs rdiff -u -r1.3 -r1.4 src/sys/arch/arm/nvidia/tegra_drm_fb.c cvs rdiff -u -r1.2 -r1.3 src/sys/arch/arm/nvidia/tegra_fb.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/arm/nvidia/tegra_drm.h diff -u src/sys/arch/arm/nvidia/tegra_drm.h:1.6 src/sys/arch/arm/nvidia/tegra_drm.h:1.7 --- src/sys/arch/arm/nvidia/tegra_drm.h:1.6 Tue Dec 22 22:10:36 2015 +++ src/sys/arch/arm/nvidia/tegra_drm.h Sat Dec 17 12:11:38 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: tegra_drm.h,v 1.6 2015/12/22 22:10:36 jmcneill Exp $ */ +/* $NetBSD: tegra_drm.h,v 1.7 2016/12/17 12:11:38 maya Exp $ */ /*- * Copyright (c) 2015 Jared D. McNeill <jmcne...@invisible.ca> @@ -79,6 +79,7 @@ struct tegra_drmfb_attach_args { struct drm_fb_helper_surface_size tfa_fb_sizes; bus_space_tag_t tfa_fb_bst; bus_dma_tag_t tfa_fb_dmat; + uint32_t tfa_fb_linebytes; }; struct tegra_crtc { Index: src/sys/arch/arm/nvidia/tegra_drm_fb.c diff -u src/sys/arch/arm/nvidia/tegra_drm_fb.c:1.3 src/sys/arch/arm/nvidia/tegra_drm_fb.c:1.4 --- src/sys/arch/arm/nvidia/tegra_drm_fb.c:1.3 Mon Nov 16 21:14:33 2015 +++ src/sys/arch/arm/nvidia/tegra_drm_fb.c Sat Dec 17 12:11:38 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: tegra_drm_fb.c,v 1.3 2015/11/16 21:14:33 jmcneill Exp $ */ +/* $NetBSD: tegra_drm_fb.c,v 1.4 2016/12/17 12:11:38 maya Exp $ */ /*- * Copyright (c) 2015 Jared D. McNeill <jmcne...@invisible.ca> @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: tegra_drm_fb.c,v 1.3 2015/11/16 21:14:33 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: tegra_drm_fb.c,v 1.4 2016/12/17 12:11:38 maya Exp $"); #include <drm/drmP.h> #include <drm/drm_crtc.h> @@ -108,6 +108,7 @@ tegra_fb_probe(struct drm_fb_helper *hel tfa.tfa_fb_sizes = *sizes; tfa.tfa_fb_bst = sc->sc_bst; tfa.tfa_fb_dmat = sc->sc_dmat; + tfa.tfa_fb_linebytes = helper->fb->pitches[0]; helper->fbdev = config_found_ia(ddev->dev, "tegrafbbus", &tfa, NULL); if (helper->fbdev == NULL) { Index: src/sys/arch/arm/nvidia/tegra_fb.c diff -u src/sys/arch/arm/nvidia/tegra_fb.c:1.2 src/sys/arch/arm/nvidia/tegra_fb.c:1.3 --- src/sys/arch/arm/nvidia/tegra_fb.c:1.2 Thu Nov 12 00:43:52 2015 +++ src/sys/arch/arm/nvidia/tegra_fb.c Sat Dec 17 12:11:38 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: tegra_fb.c,v 1.2 2015/11/12 00:43:52 jmcneill Exp $ */ +/* $NetBSD: tegra_fb.c,v 1.3 2016/12/17 12:11:38 maya Exp $ */ /*- * Copyright (c) 2015 Jared D. McNeill <jmcne...@invisible.ca> @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: tegra_fb.c,v 1.2 2015/11/12 00:43:52 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: tegra_fb.c,v 1.3 2016/12/17 12:11:38 maya Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -78,7 +78,6 @@ tegra_fb_attach(device_t parent, device_ struct tegra_fb_softc * const sc = device_private(self); struct tegra_drm_softc * const drmsc = device_private(parent); struct tegra_drmfb_attach_args * const tfa = aux; - struct drmfb_attach_args da; int error; sc->sc_dev = self; @@ -89,11 +88,14 @@ tegra_fb_attach(device_t parent, device_ aprint_naive("\n"); aprint_normal("\n"); - da.da_dev = self; - da.da_fb_helper = tfa->tfa_fb_helper; - da.da_fb_sizes = &tfa->tfa_fb_sizes; - da.da_fb_vaddr = sc->sc_fb->obj->dmap; - da.da_params = &tegrafb_drmfb_params; + const struct drmfb_attach_args da = { + .da_dev = self, + .da_fb_helper = tfa->tfa_fb_helper, + .da_fb_sizes = &tfa->tfa_fb_sizes, + .da_fb_vaddr = sc->sc_fb->obj->dmap, + .da_fb_linebytes = tfa->tfa_fb_linebytes, + .da_params = &tegrafb_drmfb_params, + }; error = drmfb_attach(&sc->sc_drmfb, &da); if (error) {