V4L/DVB (9785): soc-camera: merge .try_bus_param() into .try_fmt_cap()

.try_bus_param() method from struct soc_camera_host_ops is only called at one
location immediately before .try_fmt_cap(), there is no value in keeping these
two methods separate, merge them.

Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Guennadi Liakhovetski 2008-12-01 09:44:53 -03:00 committed by Mauro Carvalho Chehab
parent b3d7b2ad9c
commit a2c8c68cca
4 changed files with 10 additions and 8 deletions

View File

@ -913,6 +913,11 @@ static int pxa_camera_set_fmt_cap(struct soc_camera_device *icd,
static int pxa_camera_try_fmt_cap(struct soc_camera_device *icd, static int pxa_camera_try_fmt_cap(struct soc_camera_device *icd,
struct v4l2_format *f) struct v4l2_format *f)
{ {
int ret = pxa_camera_try_bus_param(icd, f->fmt.pix.pixelformat);
if (ret < 0)
return ret;
/* limit to pxa hardware capabilities */ /* limit to pxa hardware capabilities */
if (f->fmt.pix.height < 32) if (f->fmt.pix.height < 32)
f->fmt.pix.height = 32; f->fmt.pix.height = 32;
@ -1039,7 +1044,6 @@ static struct soc_camera_host_ops pxa_soc_camera_host_ops = {
.reqbufs = pxa_camera_reqbufs, .reqbufs = pxa_camera_reqbufs,
.poll = pxa_camera_poll, .poll = pxa_camera_poll,
.querycap = pxa_camera_querycap, .querycap = pxa_camera_querycap,
.try_bus_param = pxa_camera_try_bus_param,
.set_bus_param = pxa_camera_set_bus_param, .set_bus_param = pxa_camera_set_bus_param,
}; };

View File

@ -459,6 +459,11 @@ static int sh_mobile_ceu_set_fmt_cap(struct soc_camera_device *icd,
static int sh_mobile_ceu_try_fmt_cap(struct soc_camera_device *icd, static int sh_mobile_ceu_try_fmt_cap(struct soc_camera_device *icd,
struct v4l2_format *f) struct v4l2_format *f)
{ {
int ret = sh_mobile_ceu_try_bus_param(icd, f->fmt.pix.pixelformat);
if (ret < 0)
return ret;
/* FIXME: calculate using depth and bus width */ /* FIXME: calculate using depth and bus width */
if (f->fmt.pix.height < 4) if (f->fmt.pix.height < 4)
@ -546,7 +551,6 @@ static struct soc_camera_host_ops sh_mobile_ceu_host_ops = {
.reqbufs = sh_mobile_ceu_reqbufs, .reqbufs = sh_mobile_ceu_reqbufs,
.poll = sh_mobile_ceu_poll, .poll = sh_mobile_ceu_poll,
.querycap = sh_mobile_ceu_querycap, .querycap = sh_mobile_ceu_querycap,
.try_bus_param = sh_mobile_ceu_try_bus_param,
.set_bus_param = sh_mobile_ceu_set_bus_param, .set_bus_param = sh_mobile_ceu_set_bus_param,
.init_videobuf = sh_mobile_ceu_init_videobuf, .init_videobuf = sh_mobile_ceu_init_videobuf,
}; };

View File

@ -77,11 +77,6 @@ static int soc_camera_try_fmt_vid_cap(struct file *file, void *priv,
return -EINVAL; return -EINVAL;
} }
/* test physical bus parameters */
ret = ici->ops->try_bus_param(icd, f->fmt.pix.pixelformat);
if (ret)
return ret;
/* limit format to hardware capabilities */ /* limit format to hardware capabilities */
ret = ici->ops->try_fmt_cap(icd, f); ret = ici->ops->try_fmt_cap(icd, f);

View File

@ -73,7 +73,6 @@ struct soc_camera_host_ops {
struct soc_camera_device *); struct soc_camera_device *);
int (*reqbufs)(struct soc_camera_file *, struct v4l2_requestbuffers *); int (*reqbufs)(struct soc_camera_file *, struct v4l2_requestbuffers *);
int (*querycap)(struct soc_camera_host *, struct v4l2_capability *); int (*querycap)(struct soc_camera_host *, struct v4l2_capability *);
int (*try_bus_param)(struct soc_camera_device *, __u32);
int (*set_bus_param)(struct soc_camera_device *, __u32); int (*set_bus_param)(struct soc_camera_device *, __u32);
unsigned int (*poll)(struct file *, poll_table *); unsigned int (*poll)(struct file *, poll_table *);
}; };