Lines Matching full:info
23 struct fb_info *info = registered_fb[fbidx];
25 if (info != file->private_data)
26 info = NULL;
27 return info;
32 struct fb_info *info = file_fb_info(file);
34 if (!info)
37 if (fb_WARN_ON_ONCE(info, !info->fbops->fb_read))
40 if (info->state != FBINFO_STATE_RUNNING)
43 return info->fbops->fb_read(info, buf, count, ppos);
48 struct fb_info *info = file_fb_info(file);
50 if (!info)
53 if (fb_WARN_ON_ONCE(info, !info->fbops->fb_write))
56 if (info->state != FBINFO_STATE_RUNNING)
59 return info->fbops->fb_write(info, buf, count, ppos);
62 static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
75 lock_fb_info(info);
76 var = info->var;
77 unlock_fb_info(info);
87 lock_fb_info(info);
88 ret = fbcon_modechange_possible(info, &var);
90 ret = fb_set_var(info, &var);
92 fbcon_update_vcs(info, var.activate & FB_ACTIVATE_ALL);
93 unlock_fb_info(info);
99 lock_fb_info(info);
100 memcpy(&fix, &info->fix, sizeof(fix));
101 if (info->flags & FBINFO_HIDE_SMEM_START)
103 unlock_fb_info(info);
110 ret = fb_set_user_cmap(&cmap, info);
115 lock_fb_info(info);
116 cmap_from = info->cmap;
117 unlock_fb_info(info);
124 lock_fb_info(info);
125 ret = fb_pan_display(info, &var);
126 unlock_fb_info(info);
144 lock_fb_info(info);
145 ret = fb_blank(info, arg);
147 fbcon_fb_blanked(info, arg);
148 unlock_fb_info(info);
152 lock_fb_info(info);
153 fb = info->fbops;
155 ret = fb->fb_ioctl(info, cmd, arg);
158 unlock_fb_info(info);
165 struct fb_info *info = file_fb_info(file);
167 if (!info)
169 return do_fb_ioctl(info, cmd, arg);
199 static int fb_getput_cmap(struct fb_info *info, unsigned int cmd,
219 return fb_set_user_cmap(&cmap, info);
221 lock_fb_info(info);
222 cmap_from = info->cmap;
223 unlock_fb_info(info);
261 static int fb_get_fscreeninfo(struct fb_info *info, unsigned int cmd,
266 lock_fb_info(info);
267 fix = info->fix;
268 if (info->flags & FBINFO_HIDE_SMEM_START)
270 unlock_fb_info(info);
277 struct fb_info *info = file_fb_info(file);
281 if (!info)
283 fb = info->fbops;
293 ret = do_fb_ioctl(info, cmd, arg);
297 ret = fb_get_fscreeninfo(info, cmd, arg);
302 ret = fb_getput_cmap(info, cmd, arg);
307 ret = fb->fb_compat_ioctl(info, cmd, arg);
316 struct fb_info *info = file_fb_info(file);
319 if (!info)
322 if (fb_WARN_ON_ONCE(info, !info->fbops->fb_mmap))
325 mutex_lock(&info->mm_lock);
326 res = info->fbops->fb_mmap(info, vma);
327 mutex_unlock(&info->mm_lock);
333 __acquires(&info->lock)
334 __releases(&info->lock)
337 struct fb_info *info;
340 info = get_fb_info(fbidx);
341 if (!info) {
343 info = get_fb_info(fbidx);
344 if (!info)
347 if (IS_ERR(info))
348 return PTR_ERR(info);
350 lock_fb_info(info);
351 if (!try_module_get(info->fbops->owner)) {
355 file->private_data = info;
356 if (info->fbops->fb_open) {
357 res = info->fbops->fb_open(info, 1);
359 module_put(info->fbops->owner);
362 if (info->fbdefio)
363 fb_deferred_io_open(info, inode, file);
366 unlock_fb_info(info);
368 put_fb_info(info);
373 __acquires(&info->lock)
374 __releases(&info->lock)
376 struct fb_info * const info = file->private_data;
378 lock_fb_info(info);
380 if (info->fbdefio)
381 fb_deferred_io_release(info);
383 if (info->fbops->fb_release)
384 info->fbops->fb_release(info, 1);
385 module_put(info->fbops->owner);
386 unlock_fb_info(info);
387 put_fb_info(info);
396 struct fb_info * const info = filp->private_data;
397 unsigned long fb_size = PAGE_ALIGN(info->fix.smem_len);
402 return (unsigned long)info->screen_base + pgoff;