diff options
Diffstat (limited to 'sys/arch/sparc64/dev')
-rw-r--r-- | sys/arch/sparc64/dev/creator.c | 15 | ||||
-rw-r--r-- | sys/arch/sparc64/dev/creatorvar.h | 4 |
2 files changed, 12 insertions, 7 deletions
diff --git a/sys/arch/sparc64/dev/creator.c b/sys/arch/sparc64/dev/creator.c index 71074217fde..6b912fe8528 100644 --- a/sys/arch/sparc64/dev/creator.c +++ b/sys/arch/sparc64/dev/creator.c @@ -1,4 +1,4 @@ -/* $OpenBSD: creator.c,v 1.19 2002/07/29 06:21:45 jason Exp $ */ +/* $OpenBSD: creator.c,v 1.20 2002/07/30 19:48:15 jason Exp $ */ /* * Copyright (c) 2002 Jason L. Wright (jason@thought.net) @@ -145,11 +145,14 @@ creator_attach(struct creator_softc *sc) rasops_init(&sc->sc_rasops, a2int(getpropstring(optionsnode, "screen-#rows"), 34), a2int(getpropstring(optionsnode, "screen-#columns"), 80)); - sc->sc_rasops.ri_hw = sc; - sc->sc_rasops.ri_ops.eraserows = creator_ras_eraserows; - sc->sc_rasops.ri_ops.erasecols = creator_ras_erasecols; - sc->sc_rasops.ri_ops.copyrows = creator_ras_copyrows; - creator_ras_init(sc); + + if ((sc->sc_dv.dv_cfdata->cf_flags & CREATOR_CFFLAG_NOACCEL) == 0) { + sc->sc_rasops.ri_hw = sc; + sc->sc_rasops.ri_ops.eraserows = creator_ras_eraserows; + sc->sc_rasops.ri_ops.erasecols = creator_ras_erasecols; + sc->sc_rasops.ri_ops.copyrows = creator_ras_copyrows; + creator_ras_init(sc); + } creator_stdscreen.nrows = sc->sc_rasops.ri_rows; creator_stdscreen.ncols = sc->sc_rasops.ri_cols; diff --git a/sys/arch/sparc64/dev/creatorvar.h b/sys/arch/sparc64/dev/creatorvar.h index a62a7d1f88d..dca89ea09a6 100644 --- a/sys/arch/sparc64/dev/creatorvar.h +++ b/sys/arch/sparc64/dev/creatorvar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: creatorvar.h,v 1.5 2002/07/29 05:53:12 jason Exp $ */ +/* $OpenBSD: creatorvar.h,v 1.6 2002/07/30 19:48:15 jason Exp $ */ /* * Copyright (c) 2002 Jason L. Wright (jason@thought.net), @@ -35,6 +35,8 @@ #define FFB_CREATOR 0 #define FFB_AFB 1 +#define CREATOR_CFFLAG_NOACCEL 0x1 + struct creator_softc { struct device sc_dv; bus_space_tag_t sc_bt; |