Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dev/wsfb Get genfb's address offset correctly when the v...



details:   https://anonhg.NetBSD.org/src/rev/b78b14e62345
branches:  trunk
changeset: 1009132:b78b14e62345
user:      msaitoh <msaitoh%NetBSD.org@localhost>
date:      Mon Apr 13 15:26:57 2020 +0000

description:
Get genfb's address offset correctly when the vaule >= 4G. OK's by jmcneill.

 Tested on Intel BXNUC10I3FNK (Comet Lake U).

diffstat:

 sys/dev/wsfb/genfb.c |  11 +++++------
 1 files changed, 5 insertions(+), 6 deletions(-)

diffs (43 lines):

diff -r 6bdbd0b3d354 -r b78b14e62345 sys/dev/wsfb/genfb.c
--- a/sys/dev/wsfb/genfb.c      Mon Apr 13 15:23:18 2020 +0000
+++ b/sys/dev/wsfb/genfb.c      Mon Apr 13 15:26:57 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: genfb.c,v 1.71 2020/02/23 14:44:23 martin Exp $ */
+/*     $NetBSD: genfb.c,v 1.72 2020/04/13 15:26:57 msaitoh Exp $ */
 
 /*-
  * Copyright (c) 2007 Michael Lorenz
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: genfb.c,v 1.71 2020/02/23 14:44:23 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: genfb.c,v 1.72 2020/04/13 15:26:57 msaitoh Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -102,7 +102,7 @@
 {
        prop_dictionary_t dict;
        uint64_t cmap_cb, pmf_cb, mode_cb, bl_cb, br_cb, fbaddr;
-       uint32_t fboffset;
+       uint64_t fboffset;
        bool console;
 
        dict = device_properties(sc->sc_dev);
@@ -124,13 +124,12 @@
                return;
        }
 
-       /* XXX should be a 64bit value */
-       if (!prop_dictionary_get_uint32(dict, "address", &fboffset)) {
+       if (!prop_dictionary_get_uint64(dict, "address", &fboffset)) {
                GPRINTF("no address property\n");
                return;
        }
 
-       sc->sc_fboffset = fboffset;
+       sc->sc_fboffset = (bus_addr_t)fboffset;
 
        sc->sc_fbaddr = NULL;
        if (prop_dictionary_get_uint64(dict, "virtual_address", &fbaddr)) {



Home | Main Index | Thread Index | Old Index