1059,7 → 1059,7 |
return 0; |
#endif /* CONFIG_FRAMEBUFFER_CONSOLE */ |
case FBIOBLANK: |
return fb_blank(info, arg); |
return fb_blank(info, arg); |
default: |
if (fb->fb_ioctl == NULL) |
return -EINVAL; |
1395,10 → 1395,11 |
|
} |
|
int fb_set_mode_inode(int num, int wx, int wy, int bpp) { |
int fb_set_mode_inode(int num, unsigned char *modeopt) { |
|
struct inode *i; |
struct fb_var_screeninfo var; |
struct fb_info *info = registered_fb[num]; |
|
i = (struct inode *)kmalloc(sizeof(struct inode),GFP_KERNEL); |
|
1407,15 → 1408,14 |
if (fb_ioctl(i, NULL, FBIOGET_VSCREENINFO, (unsigned long)&var)) { |
kfree(i); |
return -1; |
} |
} |
|
var.xres = wx; |
var.yres = wy; |
var.xres_virtual = wx; |
var.yres_virtual = wy; |
fb_find_mode(&var,info,modeopt,NULL,0,NULL,0); |
|
var.xoffset = 0; |
var.yoffset = 0; |
var.bits_per_pixel = bpp; |
var.xres_virtual = var.xres; |
var.yres_virtual = var.yres; |
|
if (fb_ioctl(i, NULL, FBIOPUT_VSCREENINFO, (unsigned long)&var)) { |
kfree(i); |