Re: [PATCH] viafb camera controller driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Em 10-10-2010 19:23, Jonathan Corbet escreveu:
> Howdy, all,
> 
> Well, that took a whole lot longer than I had hoped...but, attached, is a
> new version of the viafb camera driver patch, done against 2.6.36-rc7.
> I've tried to address most of Laurent's comments from back in June; in
> particular, I have:
> 
>  - Gotten rid of the static device structure
>  - Fixed some locking glitches
>  - Fixed a bit of device initialization silliness.
> 
> One thing I have *not* done is to push locking down into the ov7670
> driver.  That would be a good thing to do at some point, but playing with
> that driver was beyond the scope of what I was trying to do here.
> 
> This driver will still need some OLPC bits to work properly, but Daniel is
> working on that.  This version of the driver does work on XO-1.5 systems,
> modulo some 2.6.36 API changes.
> 
> Mauro, any chance of putting this in the queue for 2.6.37?  Yes, I know
> it's really late, my apologies for that.
> 
> Thanks,
> 
> jon
> +static const struct v4l2_file_operations viacam_fops = {
> +	.owner		= THIS_MODULE,
> +	.open		= viacam_open,
> +	.release	= viacam_release,
> +	.read		= viacam_read,
> +	.poll		= viacam_poll,
> +	.mmap		= viacam_mmap,
> +	.ioctl		= video_ioctl2,

Hmm... do you need BKL? Otherwise, you should be using, instead, .unlocked_ioctl.

Btw, the driver build is broken:

drivers/media/video/via-camera.c: In function ‘viacam_configure_sensor’:
drivers/media/video/via-camera.c:228: error: ‘const struct v4l2_subdev_video_ops’ has no member named ‘s_fmt’
drivers/media/video/via-camera.c:228: error: ‘const struct v4l2_subdev_video_ops’ has no member named ‘s_fmt’
drivers/media/video/via-camera.c: In function ‘viacam_open’:
drivers/media/video/via-camera.c:651: error: too few arguments to function ‘videobuf_queue_sg_init’
drivers/media/video/via-camera.c: In function ‘viacam_enum_fmt_vid_cap’:
drivers/media/video/via-camera.c:878: error: ‘const struct v4l2_subdev_video_ops’ has no member named ‘enum_fmt’
drivers/media/video/via-camera.c:878: error: ‘const struct v4l2_subdev_video_ops’ has no member named ‘enum_fmt’
drivers/media/video/via-camera.c: In function ‘viacam_try_fmt_vid_cap’:
drivers/media/video/via-camera.c:921: error: ‘const struct v4l2_subdev_video_ops’ has no member named ‘try_fmt’
drivers/media/video/via-camera.c:921: error: ‘const struct v4l2_subdev_video_ops’ has no member named ‘try_fmt’
drivers/media/video/via-camera.c: In function ‘viacam_s_fmt_vid_cap’:
drivers/media/video/via-camera.c:959: error: ‘const struct v4l2_subdev_video_ops’ has no member named ‘try_fmt’
drivers/media/video/via-camera.c:959: error: ‘const struct v4l2_subdev_video_ops’ has no member named ‘try_fmt’

The main responsible for this breakage is this commit: 383e6ad73194814cfc980c302e0173fac11f0ee0
You may take a look on those commits also:
	2e2ae382d956aa221c7b4fd897346c1b39f1699d
	8c26cfe8d5f05ec9f945ea825c7eb28f46d04348

all commits are at staging/v2.6.37 branch on my tree: 
	http://git.linuxtv.org/media_tree.git

They removed s_fmt/enum_fmt/try_fmt in favor of a different approach, as sometimes, the format between the
sensor and the bridge is not exactly the same as seen on userspace.

The fix for this one is trivial:
drivers/media/video/via-camera.c:651: error: too few arguments to function ‘videobuf_queue_sg_init’

Just add an extra NULL parameter to the function.

-

Hans,

You're not playing nice with the others by changing their drivers without their ack, and without even
c/c them. I'm sure that, if Jon was aware on the changes you did on cafe-ccic and ov7670, he would be
submitting this driver with the build issues addressed.

So, please help him to address this issue.

Mauro.

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux