aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/fb/fbd.c
diff options
context:
space:
mode:
authorAleksandr Rybalko <ray@FreeBSD.org>2013-12-23 18:09:10 +0000
committerAleksandr Rybalko <ray@FreeBSD.org>2013-12-23 18:09:10 +0000
commit7a1a32c4ef277b98b9164496091f7d50f203fb81 (patch)
tree8096d9fdebc1dab4523716b5f83ba8d7bb6ff9ec /sys/dev/fb/fbd.c
parentddc31191a463cda5957cb5b2bf606738c074576a (diff)
Notes
Diffstat (limited to 'sys/dev/fb/fbd.c')
-rw-r--r--sys/dev/fb/fbd.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/dev/fb/fbd.c b/sys/dev/fb/fbd.c
index 4fbf5eeb7fae..b75ca33516c4 100644
--- a/sys/dev/fb/fbd.c
+++ b/sys/dev/fb/fbd.c
@@ -255,8 +255,12 @@ fb_probe(struct fb_info *info)
info->wr4 = &vt_fb_indir_wr4;
info->copy = &vt_fb_indir_copy;
} else if (info->fb_vbase != 0) {
- if (info->fb_pbase == 0)
+ if (info->fb_pbase == 0) {
info->fb_flags |= FB_FLAG_NOMMAP;
+ } else {
+ if (info->fb_mmap == NULL)
+ info->fb_mmap = &fb_mmap;
+ }
info->wr1 = &vt_fb_mem_wr1;
info->wr2 = &vt_fb_mem_wr2;
info->wr4 = &vt_fb_mem_wr4;
@@ -264,6 +268,10 @@ fb_probe(struct fb_info *info)
} else
return (ENXIO);
+ if (info->fb_ioctl == NULL)
+ info->fb_ioctl = &fb_ioctl;
+
+
return (0);
}
@@ -277,6 +285,7 @@ fb_init(struct fb_list_entry *entry, int unit)
entry->fb_si = make_dev(&fb_cdevsw, unit, UID_ROOT, GID_WHEEL,
0600, "fb%d", unit);
entry->fb_si->si_drv1 = info;
+ info->fb_cdev = entry->fb_si;
return (0);
}