summaryrefslogtreecommitdiff
path: root/sys/dev/pci/drm
diff options
context:
space:
mode:
authorJoshua Stein <jcs@cvs.openbsd.org>2018-04-27 21:36:13 +0000
committerJoshua Stein <jcs@cvs.openbsd.org>2018-04-27 21:36:13 +0000
commitd8f64152dfaaddf25de9dca020b84c322b874855 (patch)
treedd5c53d4a83bef65dabf710495532dca0aec1bbc /sys/dev/pci/drm
parenta0d21cd0e540e643e7252beb7186922fdb28785e (diff)
rasops: implement scrollback
activate it for efifb and inteldrm ok kettenis
Diffstat (limited to 'sys/dev/pci/drm')
-rw-r--r--sys/dev/pci/drm/i915/i915_drv.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/sys/dev/pci/drm/i915/i915_drv.c b/sys/dev/pci/drm/i915/i915_drv.c
index aa3361110a1..f71019c4ee1 100644
--- a/sys/dev/pci/drm/i915/i915_drv.c
+++ b/sys/dev/pci/drm/i915/i915_drv.c
@@ -1925,6 +1925,7 @@ int inteldrm_list_font(void *, struct wsdisplay_font *);
int inteldrm_getchar(void *, int, int, struct wsdisplay_charcell *);
void inteldrm_burner(void *, u_int, u_int);
void inteldrm_burner_cb(void *);
+void inteldrm_scrollback(void *, void *, int lines);
struct wsscreen_descr inteldrm_stdscreen = {
"std",
@@ -1953,6 +1954,7 @@ struct wsdisplay_accessops inteldrm_accessops = {
.getchar = inteldrm_getchar,
.load_font = inteldrm_load_font,
.list_font = inteldrm_list_font,
+ .scrollback = inteldrm_scrollback,
.burn_screen = inteldrm_burner
};
@@ -2174,6 +2176,15 @@ const struct backlight_ops inteldrm_backlight_ops = {
.get_brightness = inteldrm_backlight_get_brightness
};
+void
+inteldrm_scrollback(void *v, void *cookie, int lines)
+{
+ struct inteldrm_softc *dev_priv = v;
+ struct rasops_info *ri = &dev_priv->ro;
+
+ rasops_scrollback(ri, cookie, lines);
+}
+
int inteldrm_match(struct device *, void *, void *);
void inteldrm_attach(struct device *, struct device *, void *);
int inteldrm_detach(struct device *, int);