diff options
| author | Aleksandr Rybalko <ray@FreeBSD.org> | 2013-12-23 18:09:10 +0000 |
|---|---|---|
| committer | Aleksandr Rybalko <ray@FreeBSD.org> | 2013-12-23 18:09:10 +0000 |
| commit | 7a1a32c4ef277b98b9164496091f7d50f203fb81 (patch) | |
| tree | 8096d9fdebc1dab4523716b5f83ba8d7bb6ff9ec /sys/dev/fb/fbd.c | |
| parent | ddc31191a463cda5957cb5b2bf606738c074576a (diff) | |
Notes
Diffstat (limited to 'sys/dev/fb/fbd.c')
| -rw-r--r-- | sys/dev/fb/fbd.c | 11 |
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); } |
