static int cx23885_set_tvnorm(struct cx23885_dev *dev, v4l2_std_id norm) { dprintk(1, "%s(norm = 0x%08x) name: [%s]\n", __func__, (unsigned int)norm, v4l2_norm_to_name(norm)); dev->tvnorm = norm; call_all(dev, core, s_std, norm); return 0; }
static int cx23885_set_tvnorm(struct cx23885_dev *dev, v4l2_std_id norm) { dprintk(1, "%s(norm = 0x%08x) name: [%s]\n", __func__, (unsigned int)norm, v4l2_norm_to_name(norm)); dev->tvnorm = norm; /* Tell the analog tuner/demods */ cx23885_call_i2c_clients(&dev->i2c_bus[1], VIDIOC_S_STD, &norm); /* Tell the internal A/V decoder */ cx23885_call_i2c_clients(&dev->i2c_bus[2], VIDIOC_S_STD, &norm); return 0; }
int cx23885_set_tvnorm(struct cx23885_dev *dev, v4l2_std_id norm) { dprintk(1, "%s(norm = 0x%08x) name: [%s]\n", __func__, (unsigned int)norm, v4l2_norm_to_name(norm)); if (dev->tvnorm != norm) { if (vb2_is_busy(&dev->vb2_vidq) || vb2_is_busy(&dev->vb2_vbiq) || vb2_is_busy(&dev->vb2_mpegq)) return -EBUSY; } dev->tvnorm = norm; call_all(dev, video, s_std, norm); return 0; }
int cx23885_set_tvnorm(struct cx23885_dev *dev, v4l2_std_id norm) { struct v4l2_subdev_format format = { .which = V4L2_SUBDEV_FORMAT_ACTIVE, .format.code = MEDIA_BUS_FMT_FIXED, }; dprintk(1, "%s(norm = 0x%08x) name: [%s]\n", __func__, (unsigned int)norm, v4l2_norm_to_name(norm)); if (dev->tvnorm == norm) return 0; if (dev->tvnorm != norm) { if (vb2_is_busy(&dev->vb2_vidq) || vb2_is_busy(&dev->vb2_vbiq) || vb2_is_busy(&dev->vb2_mpegq)) return -EBUSY; } dev->tvnorm = norm; dev->width = 720; dev->height = norm_maxh(norm); dev->field = V4L2_FIELD_INTERLACED; call_all(dev, video, s_std, norm); format.format.width = dev->width; format.format.height = dev->height; format.format.field = dev->field; call_all(dev, pad, set_fmt, NULL, &format); return 0; } static struct video_device *cx23885_vdev_init(struct cx23885_dev *dev, struct pci_dev *pci, struct video_device *template,