Craig Matsuura wrote:
> So I see the smae problem.  I wondering if there is a patch for the mv
2.6.10
> kernel for these ioctl's?
>
> Craig
>

Here is the ioctl function from my davincifb.c and I don't get how
FBIO_GET_TIMING is provided by the driver. I searched both 2.6.10 mv and
2.6.23-git kernels, and I don't know where to look else. I guess there
are some other ioctls not provided by this driver.

Caglar

__________________________________________________________________________

static int davincifb_ioctl(struct fb_info *info, unsigned int cmd,
                           unsigned long arg)
{
        struct dm_win_info *w = (struct dm_win_info *)info->par;
        void __user *argp = (void __user *)arg;
        struct fb_fillrect rect;
        struct zoom_params zoom;
        long std = 0;

        switch (cmd) {
        case FBIO_WAITFORVSYNC:
                /* This ioctl accepts an integer argument to specify a
                 * display.  We only support one display, so we will
                 * simply ignore the argument.
                 */
                return (davincifb_wait_for_vsync(w));
                break;
        case FBIO_SETATTRIBUTE:
                if (copy_from_user(&rect, argp, sizeof(rect)))
                        return -EFAULT;
                return (davincifb_set_attr_blend(&rect));
                break;
        case FBIO_SETPOSX:
                if (arg >= 0 && arg <= DISP_XRES) {
                        w->x = arg;
                        davincifb_check_var(&w->info.var, &w->info);
                        davincifb_set_par(&w->info);
                        return 0;
                } else
                        return -EINVAL;
                break;
        case FBIO_SETPOSY:
                if (arg >= 0 && arg <= DISP_YRES) {
                        w->y = arg;
                        davincifb_check_var(&w->info.var, &w->info);
                        davincifb_set_par(&w->info);
                        return 0;
                } else
                        return -EINVAL;
                break;
        case FBIO_SETZOOM:
                if (copy_from_user(&zoom, argp, sizeof(zoom)))
                        return -EFAULT;
                if ((zoom.zoom_h == 2) || (zoom.zoom_h == 0)
                    || (zoom.zoom_h == 1) || (zoom.zoom_v == 2)
                    || (zoom.zoom_v == 0) || (zoom.zoom_v == 1)) {
                        set_zoom(zoom.window_id, zoom.zoom_h, zoom.zoom_v);
                        return 0;
                } else {
                        return -EINVAL;
                }
                break;
        case FBIO_GETSTD:
                std = ((dmparams.output << 16) | (dmparams.format));    //(NTSC 
<<16) |
(COPOSITE);
                if (copy_to_user(argp, &std, sizeof(u_int32_t)))
                        return -EFAULT;
                return 0;
                break;
        }
        return (-EINVAL);
}

_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users

Reply via email to