vou_dev            93 drivers/media/platform/sh_vou.c static void sh_vou_reg_a_write(struct sh_vou_device *vou_dev, unsigned int reg,
vou_dev            96 drivers/media/platform/sh_vou.c 	__raw_writel(value, vou_dev->base + reg);
vou_dev            99 drivers/media/platform/sh_vou.c static void sh_vou_reg_ab_write(struct sh_vou_device *vou_dev, unsigned int reg,
vou_dev           102 drivers/media/platform/sh_vou.c 	__raw_writel(value, vou_dev->base + reg);
vou_dev           103 drivers/media/platform/sh_vou.c 	__raw_writel(value, vou_dev->base + reg + 0x1000);
vou_dev           106 drivers/media/platform/sh_vou.c static void sh_vou_reg_m_write(struct sh_vou_device *vou_dev, unsigned int reg,
vou_dev           109 drivers/media/platform/sh_vou.c 	__raw_writel(value, vou_dev->base + reg + 0x2000);
vou_dev           112 drivers/media/platform/sh_vou.c static u32 sh_vou_reg_a_read(struct sh_vou_device *vou_dev, unsigned int reg)
vou_dev           114 drivers/media/platform/sh_vou.c 	return __raw_readl(vou_dev->base + reg);
vou_dev           117 drivers/media/platform/sh_vou.c static void sh_vou_reg_a_set(struct sh_vou_device *vou_dev, unsigned int reg,
vou_dev           120 drivers/media/platform/sh_vou.c 	u32 old = __raw_readl(vou_dev->base + reg);
vou_dev           123 drivers/media/platform/sh_vou.c 	__raw_writel(value, vou_dev->base + reg);
vou_dev           126 drivers/media/platform/sh_vou.c static void sh_vou_reg_b_set(struct sh_vou_device *vou_dev, unsigned int reg,
vou_dev           129 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_set(vou_dev, reg + 0x1000, value, mask);
vou_dev           132 drivers/media/platform/sh_vou.c static void sh_vou_reg_ab_set(struct sh_vou_device *vou_dev, unsigned int reg,
vou_dev           135 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_set(vou_dev, reg, value, mask);
vou_dev           136 drivers/media/platform/sh_vou.c 	sh_vou_reg_b_set(vou_dev, reg, value, mask);
vou_dev           187 drivers/media/platform/sh_vou.c static void sh_vou_schedule_next(struct sh_vou_device *vou_dev,
vou_dev           193 drivers/media/platform/sh_vou.c 	switch (vou_dev->pix.pixelformat) {
vou_dev           196 drivers/media/platform/sh_vou.c 		addr2 = addr1 + vou_dev->pix.width * vou_dev->pix.height;
vou_dev           202 drivers/media/platform/sh_vou.c 	sh_vou_reg_m_write(vou_dev, VOUAD1R, addr1);
vou_dev           203 drivers/media/platform/sh_vou.c 	sh_vou_reg_m_write(vou_dev, VOUAD2R, addr2);
vou_dev           206 drivers/media/platform/sh_vou.c static void sh_vou_stream_config(struct sh_vou_device *vou_dev)
vou_dev           215 drivers/media/platform/sh_vou.c 	switch (vou_dev->pix.pixelformat) {
vou_dev           232 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_write(vou_dev, VOUSWR, dataswap);
vou_dev           233 drivers/media/platform/sh_vou.c 	sh_vou_reg_ab_write(vou_dev, VOUAIR, vou_dev->pix.width * row_coeff);
vou_dev           241 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = vb2_get_drv_priv(vq);
vou_dev           242 drivers/media/platform/sh_vou.c 	struct v4l2_pix_format *pix = &vou_dev->pix;
vou_dev           243 drivers/media/platform/sh_vou.c 	int bytes_per_line = vou_fmt[vou_dev->pix_idx].bpp * pix->width / 8;
vou_dev           245 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s()\n", __func__);
vou_dev           256 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = vb2_get_drv_priv(vb->vb2_queue);
vou_dev           257 drivers/media/platform/sh_vou.c 	struct v4l2_pix_format *pix = &vou_dev->pix;
vou_dev           258 drivers/media/platform/sh_vou.c 	unsigned bytes_per_line = vou_fmt[vou_dev->pix_idx].bpp * pix->width / 8;
vou_dev           261 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s()\n", __func__);
vou_dev           265 drivers/media/platform/sh_vou.c 		dev_warn(vou_dev->v4l2_dev.dev, "buffer too small (%lu < %u)\n",
vou_dev           278 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = vb2_get_drv_priv(vb->vb2_queue);
vou_dev           282 drivers/media/platform/sh_vou.c 	spin_lock_irqsave(&vou_dev->lock, flags);
vou_dev           283 drivers/media/platform/sh_vou.c 	list_add_tail(&shbuf->list, &vou_dev->buf_list);
vou_dev           284 drivers/media/platform/sh_vou.c 	spin_unlock_irqrestore(&vou_dev->lock, flags);
vou_dev           289 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = vb2_get_drv_priv(vq);
vou_dev           293 drivers/media/platform/sh_vou.c 	vou_dev->sequence = 0;
vou_dev           294 drivers/media/platform/sh_vou.c 	ret = v4l2_device_call_until_err(&vou_dev->v4l2_dev, 0,
vou_dev           297 drivers/media/platform/sh_vou.c 		list_for_each_entry_safe(buf, node, &vou_dev->buf_list, list) {
vou_dev           302 drivers/media/platform/sh_vou.c 		vou_dev->active = NULL;
vou_dev           306 drivers/media/platform/sh_vou.c 	buf = list_entry(vou_dev->buf_list.next, struct sh_vou_buffer, list);
vou_dev           308 drivers/media/platform/sh_vou.c 	vou_dev->active = buf;
vou_dev           311 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_write(vou_dev, VOURPR, 1);
vou_dev           312 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s: first buffer status 0x%x\n",
vou_dev           313 drivers/media/platform/sh_vou.c 		__func__, sh_vou_reg_a_read(vou_dev, VOUSTR));
vou_dev           314 drivers/media/platform/sh_vou.c 	sh_vou_schedule_next(vou_dev, &buf->vb);
vou_dev           319 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_write(vou_dev, VOURPR, 0);
vou_dev           320 drivers/media/platform/sh_vou.c 	sh_vou_schedule_next(vou_dev, &buf->vb);
vou_dev           323 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_write(vou_dev, VOURCR, 5);
vou_dev           325 drivers/media/platform/sh_vou.c 	sh_vou_stream_config(vou_dev);
vou_dev           327 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_write(vou_dev, VOUIR, 0x10004);
vou_dev           330 drivers/media/platform/sh_vou.c 	vou_dev->status = SH_VOU_RUNNING;
vou_dev           331 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_write(vou_dev, VOUER, 0x107);
vou_dev           337 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = vb2_get_drv_priv(vq);
vou_dev           341 drivers/media/platform/sh_vou.c 	v4l2_device_call_until_err(&vou_dev->v4l2_dev, 0,
vou_dev           344 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_set(vou_dev, VOUER, 0, 1);
vou_dev           346 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_set(vou_dev, VOUIR, 0, 0x30000);
vou_dev           348 drivers/media/platform/sh_vou.c 	spin_lock_irqsave(&vou_dev->lock, flags);
vou_dev           349 drivers/media/platform/sh_vou.c 	list_for_each_entry_safe(buf, node, &vou_dev->buf_list, list) {
vou_dev           353 drivers/media/platform/sh_vou.c 	vou_dev->active = NULL;
vou_dev           354 drivers/media/platform/sh_vou.c 	spin_unlock_irqrestore(&vou_dev->lock, flags);
vou_dev           371 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           373 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s()\n", __func__);
vou_dev           385 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           390 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s()\n", __func__);
vou_dev           400 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           402 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s()\n", __func__);
vou_dev           405 drivers/media/platform/sh_vou.c 	fmt->fmt.pix = vou_dev->pix;
vou_dev           417 drivers/media/platform/sh_vou.c static void sh_vou_configure_geometry(struct sh_vou_device *vou_dev,
vou_dev           423 drivers/media/platform/sh_vou.c 	struct v4l2_rect *rect = &vou_dev->rect;
vou_dev           424 drivers/media/platform/sh_vou.c 	struct v4l2_pix_format *pix = &vou_dev->pix;
vou_dev           427 drivers/media/platform/sh_vou.c 	if (vou_dev->std & V4L2_STD_525_60) {
vou_dev           464 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev,
vou_dev           470 drivers/media/platform/sh_vou.c 	sh_vou_reg_ab_write(vou_dev, VOUISR, (pix->width << 16) | frame_in_height);
vou_dev           471 drivers/media/platform/sh_vou.c 	sh_vou_reg_ab_write(vou_dev, VOUVPR, (black_left << 16) | black_top);
vou_dev           472 drivers/media/platform/sh_vou.c 	sh_vou_reg_ab_write(vou_dev, VOUDPR, (rect->left << 16) | frame_out_top);
vou_dev           473 drivers/media/platform/sh_vou.c 	sh_vou_reg_ab_write(vou_dev, VOUDSR, (dsr_h << 16) | dsr_v);
vou_dev           485 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "0x%08x: scaling 0x%x\n",
vou_dev           489 drivers/media/platform/sh_vou.c 	sh_vou_reg_ab_write(vou_dev, VOUVCR, vouvcr);
vou_dev           490 drivers/media/platform/sh_vou.c 	sh_vou_reg_ab_write(vou_dev, VOUDFR,
vou_dev           654 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           659 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s()\n", __func__);
vou_dev           672 drivers/media/platform/sh_vou.c 	if (vou_dev->std & V4L2_STD_525_60)
vou_dev           687 drivers/media/platform/sh_vou.c static int sh_vou_set_fmt_vid_out(struct sh_vou_device *vou_dev,
vou_dev           703 drivers/media/platform/sh_vou.c 	if (vb2_is_busy(&vou_dev->queue))
vou_dev           712 drivers/media/platform/sh_vou.c 	geo.output = vou_dev->rect;
vou_dev           714 drivers/media/platform/sh_vou.c 	vou_adjust_output(&geo, vou_dev->std);
vou_dev           718 drivers/media/platform/sh_vou.c 	ret = v4l2_device_call_until_err(&vou_dev->v4l2_dev, 0, pad,
vou_dev           724 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s(): %ux%u -> %ux%u\n", __func__,
vou_dev           727 drivers/media/platform/sh_vou.c 	if (vou_dev->std & V4L2_STD_525_60)
vou_dev           743 drivers/media/platform/sh_vou.c 		vou_adjust_input(&geo, vou_dev->std);
vou_dev           747 drivers/media/platform/sh_vou.c 	vou_dev->rect = geo.output;
vou_dev           751 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s(): %ux%u\n", __func__,
vou_dev           754 drivers/media/platform/sh_vou.c 	vou_dev->pix_idx = pix_idx;
vou_dev           756 drivers/media/platform/sh_vou.c 	vou_dev->pix = *pix;
vou_dev           758 drivers/media/platform/sh_vou.c 	sh_vou_configure_geometry(vou_dev, pix_idx,
vou_dev           767 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           772 drivers/media/platform/sh_vou.c 	return sh_vou_set_fmt_vid_out(vou_dev, &fmt->fmt.pix);
vou_dev           778 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           784 drivers/media/platform/sh_vou.c 	a->std = vou_dev->vdev.tvnorms;
vou_dev           817 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           820 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s(): 0x%llx\n", __func__, std_id);
vou_dev           822 drivers/media/platform/sh_vou.c 	if (std_id == vou_dev->std)
vou_dev           825 drivers/media/platform/sh_vou.c 	if (vb2_is_busy(&vou_dev->queue))
vou_dev           828 drivers/media/platform/sh_vou.c 	ret = v4l2_device_call_until_err(&vou_dev->v4l2_dev, 0, video,
vou_dev           834 drivers/media/platform/sh_vou.c 	vou_dev->rect.top = vou_dev->rect.left = 0;
vou_dev           835 drivers/media/platform/sh_vou.c 	vou_dev->rect.width = VOU_MAX_IMAGE_WIDTH;
vou_dev           837 drivers/media/platform/sh_vou.c 		sh_vou_reg_ab_set(vou_dev, VOUCR,
vou_dev           838 drivers/media/platform/sh_vou.c 			sh_vou_ntsc_mode(vou_dev->pdata->bus_fmt) << 29, 7 << 29);
vou_dev           839 drivers/media/platform/sh_vou.c 		vou_dev->rect.height = 480;
vou_dev           841 drivers/media/platform/sh_vou.c 		sh_vou_reg_ab_set(vou_dev, VOUCR, 5 << 29, 7 << 29);
vou_dev           842 drivers/media/platform/sh_vou.c 		vou_dev->rect.height = 576;
vou_dev           845 drivers/media/platform/sh_vou.c 	vou_dev->pix.width = vou_dev->rect.width;
vou_dev           846 drivers/media/platform/sh_vou.c 	vou_dev->pix.height = vou_dev->rect.height;
vou_dev           847 drivers/media/platform/sh_vou.c 	vou_dev->pix.bytesperline =
vou_dev           848 drivers/media/platform/sh_vou.c 		vou_dev->pix.width * vou_fmt[vou_dev->pix_idx].bpl;
vou_dev           849 drivers/media/platform/sh_vou.c 	vou_dev->pix.sizeimage = vou_dev->pix.height *
vou_dev           850 drivers/media/platform/sh_vou.c 		((vou_dev->pix.width * vou_fmt[vou_dev->pix_idx].bpp) >> 3);
vou_dev           851 drivers/media/platform/sh_vou.c 	vou_dev->std = std_id;
vou_dev           852 drivers/media/platform/sh_vou.c 	sh_vou_set_fmt_vid_out(vou_dev, &vou_dev->pix);
vou_dev           859 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           861 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "%s()\n", __func__);
vou_dev           863 drivers/media/platform/sh_vou.c 	*std = vou_dev->std;
vou_dev           870 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           872 drivers/media/platform/sh_vou.c 	pr_info("VOUER:   0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUER));
vou_dev           873 drivers/media/platform/sh_vou.c 	pr_info("VOUCR:   0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUCR));
vou_dev           874 drivers/media/platform/sh_vou.c 	pr_info("VOUSTR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUSTR));
vou_dev           875 drivers/media/platform/sh_vou.c 	pr_info("VOUVCR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUVCR));
vou_dev           876 drivers/media/platform/sh_vou.c 	pr_info("VOUISR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUISR));
vou_dev           877 drivers/media/platform/sh_vou.c 	pr_info("VOUBCR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUBCR));
vou_dev           878 drivers/media/platform/sh_vou.c 	pr_info("VOUDPR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUDPR));
vou_dev           879 drivers/media/platform/sh_vou.c 	pr_info("VOUDSR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUDSR));
vou_dev           880 drivers/media/platform/sh_vou.c 	pr_info("VOUVPR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUVPR));
vou_dev           881 drivers/media/platform/sh_vou.c 	pr_info("VOUIR:   0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUIR));
vou_dev           882 drivers/media/platform/sh_vou.c 	pr_info("VOUSRR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUSRR));
vou_dev           883 drivers/media/platform/sh_vou.c 	pr_info("VOUMSR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUMSR));
vou_dev           884 drivers/media/platform/sh_vou.c 	pr_info("VOUHIR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUHIR));
vou_dev           885 drivers/media/platform/sh_vou.c 	pr_info("VOUDFR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUDFR));
vou_dev           886 drivers/media/platform/sh_vou.c 	pr_info("VOUAD1R: 0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUAD1R));
vou_dev           887 drivers/media/platform/sh_vou.c 	pr_info("VOUAD2R: 0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUAD2R));
vou_dev           888 drivers/media/platform/sh_vou.c 	pr_info("VOUAIR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUAIR));
vou_dev           889 drivers/media/platform/sh_vou.c 	pr_info("VOUSWR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOUSWR));
vou_dev           890 drivers/media/platform/sh_vou.c 	pr_info("VOURCR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOURCR));
vou_dev           891 drivers/media/platform/sh_vou.c 	pr_info("VOURPR:  0x%08x\n", sh_vou_reg_a_read(vou_dev, VOURPR));
vou_dev           898 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           904 drivers/media/platform/sh_vou.c 		sel->r = vou_dev->rect;
vou_dev           911 drivers/media/platform/sh_vou.c 		if (vou_dev->std & V4L2_STD_525_60)
vou_dev           927 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev           932 drivers/media/platform/sh_vou.c 	struct v4l2_pix_format *pix = &vou_dev->pix;
vou_dev           948 drivers/media/platform/sh_vou.c 	if (vb2_is_busy(&vou_dev->queue))
vou_dev           951 drivers/media/platform/sh_vou.c 	if (vou_dev->std & V4L2_STD_525_60)
vou_dev           978 drivers/media/platform/sh_vou.c 	v4l2_device_call_until_err(&vou_dev->v4l2_dev, 0, pad,
vou_dev           982 drivers/media/platform/sh_vou.c 	ret = v4l2_device_call_until_err(&vou_dev->v4l2_dev, 0, pad,
vou_dev          1001 drivers/media/platform/sh_vou.c 	vou_adjust_input(&geo, vou_dev->std);
vou_dev          1004 drivers/media/platform/sh_vou.c 	vou_dev->rect = geo.output;
vou_dev          1008 drivers/media/platform/sh_vou.c 	sh_vou_configure_geometry(vou_dev, vou_dev->pix_idx,
vou_dev          1016 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = dev_id;
vou_dev          1020 drivers/media/platform/sh_vou.c 	u32 irq_status = sh_vou_reg_a_read(vou_dev, VOUIR), masked;
vou_dev          1021 drivers/media/platform/sh_vou.c 	u32 vou_status = sh_vou_reg_a_read(vou_dev, VOUSTR);
vou_dev          1025 drivers/media/platform/sh_vou.c 			dev_warn(vou_dev->v4l2_dev.dev, "IRQ status 0x%x!\n",
vou_dev          1030 drivers/media/platform/sh_vou.c 	spin_lock(&vou_dev->lock);
vou_dev          1031 drivers/media/platform/sh_vou.c 	if (!vou_dev->active || list_empty(&vou_dev->buf_list)) {
vou_dev          1033 drivers/media/platform/sh_vou.c 			dev_warn(vou_dev->v4l2_dev.dev,
vou_dev          1036 drivers/media/platform/sh_vou.c 		sh_vou_reg_a_set(vou_dev, VOUIR, 0, 0x300);
vou_dev          1037 drivers/media/platform/sh_vou.c 		spin_unlock(&vou_dev->lock);
vou_dev          1042 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev,
vou_dev          1050 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_write(vou_dev, VOUIR, masked);
vou_dev          1052 drivers/media/platform/sh_vou.c 	vb = vou_dev->active;
vou_dev          1055 drivers/media/platform/sh_vou.c 		sh_vou_schedule_next(vou_dev, &vb->vb);
vou_dev          1056 drivers/media/platform/sh_vou.c 		spin_unlock(&vou_dev->lock);
vou_dev          1063 drivers/media/platform/sh_vou.c 	vb->vb.sequence = vou_dev->sequence++;
vou_dev          1067 drivers/media/platform/sh_vou.c 	vou_dev->active = list_entry(vou_dev->buf_list.next,
vou_dev          1070 drivers/media/platform/sh_vou.c 	if (list_is_singular(&vou_dev->buf_list)) {
vou_dev          1072 drivers/media/platform/sh_vou.c 		sh_vou_schedule_next(vou_dev, &vou_dev->active->vb);
vou_dev          1074 drivers/media/platform/sh_vou.c 		struct sh_vou_buffer *new = list_entry(vou_dev->active->list.next,
vou_dev          1076 drivers/media/platform/sh_vou.c 		sh_vou_schedule_next(vou_dev, &new->vb);
vou_dev          1079 drivers/media/platform/sh_vou.c 	spin_unlock(&vou_dev->lock);
vou_dev          1084 drivers/media/platform/sh_vou.c static int sh_vou_hw_init(struct sh_vou_device *vou_dev)
vou_dev          1086 drivers/media/platform/sh_vou.c 	struct sh_vou_pdata *pdata = vou_dev->pdata;
vou_dev          1091 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_write(vou_dev, VOUIR, 0);
vou_dev          1094 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_write(vou_dev, VOUSRR, 0x101);
vou_dev          1095 drivers/media/platform/sh_vou.c 	while (--i && (sh_vou_reg_a_read(vou_dev, VOUSRR) & 0x101))
vou_dev          1101 drivers/media/platform/sh_vou.c 	dev_dbg(vou_dev->v4l2_dev.dev, "Reset took %dus\n", 100 - i);
vou_dev          1109 drivers/media/platform/sh_vou.c 	sh_vou_reg_ab_set(vou_dev, VOUCR, voucr, 0xfc000000);
vou_dev          1112 drivers/media/platform/sh_vou.c 	sh_vou_reg_a_write(vou_dev, VOURCR, 4);
vou_dev          1114 drivers/media/platform/sh_vou.c 	sh_vou_reg_ab_write(vou_dev, VOUMSR, 0x800000);
vou_dev          1116 drivers/media/platform/sh_vou.c 	sh_vou_set_fmt_vid_out(vou_dev, &vou_dev->pix);
vou_dev          1124 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev          1127 drivers/media/platform/sh_vou.c 	if (mutex_lock_interruptible(&vou_dev->fop_lock))
vou_dev          1134 drivers/media/platform/sh_vou.c 	    vou_dev->status == SH_VOU_INITIALISING) {
vou_dev          1136 drivers/media/platform/sh_vou.c 		pm_runtime_get_sync(vou_dev->v4l2_dev.dev);
vou_dev          1137 drivers/media/platform/sh_vou.c 		err = sh_vou_hw_init(vou_dev);
vou_dev          1139 drivers/media/platform/sh_vou.c 			pm_runtime_put(vou_dev->v4l2_dev.dev);
vou_dev          1142 drivers/media/platform/sh_vou.c 			vou_dev->status = SH_VOU_IDLE;
vou_dev          1146 drivers/media/platform/sh_vou.c 	mutex_unlock(&vou_dev->fop_lock);
vou_dev          1152 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = video_drvdata(file);
vou_dev          1155 drivers/media/platform/sh_vou.c 	mutex_lock(&vou_dev->fop_lock);
vou_dev          1160 drivers/media/platform/sh_vou.c 		vou_dev->status = SH_VOU_INITIALISING;
vou_dev          1161 drivers/media/platform/sh_vou.c 		sh_vou_reg_a_set(vou_dev, VOUER, 0, 0x101);
vou_dev          1162 drivers/media/platform/sh_vou.c 		pm_runtime_put(vou_dev->v4l2_dev.dev);
vou_dev          1164 drivers/media/platform/sh_vou.c 	mutex_unlock(&vou_dev->fop_lock);
vou_dev          1221 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev;
vou_dev          1235 drivers/media/platform/sh_vou.c 	vou_dev = devm_kzalloc(&pdev->dev, sizeof(*vou_dev), GFP_KERNEL);
vou_dev          1236 drivers/media/platform/sh_vou.c 	if (!vou_dev)
vou_dev          1239 drivers/media/platform/sh_vou.c 	INIT_LIST_HEAD(&vou_dev->buf_list);
vou_dev          1240 drivers/media/platform/sh_vou.c 	spin_lock_init(&vou_dev->lock);
vou_dev          1241 drivers/media/platform/sh_vou.c 	mutex_init(&vou_dev->fop_lock);
vou_dev          1242 drivers/media/platform/sh_vou.c 	vou_dev->pdata = vou_pdata;
vou_dev          1243 drivers/media/platform/sh_vou.c 	vou_dev->status = SH_VOU_INITIALISING;
vou_dev          1244 drivers/media/platform/sh_vou.c 	vou_dev->pix_idx = 1;
vou_dev          1246 drivers/media/platform/sh_vou.c 	rect = &vou_dev->rect;
vou_dev          1247 drivers/media/platform/sh_vou.c 	pix = &vou_dev->pix;
vou_dev          1250 drivers/media/platform/sh_vou.c 	vou_dev->std		= V4L2_STD_NTSC_M;
vou_dev          1263 drivers/media/platform/sh_vou.c 	vou_dev->base = devm_ioremap_resource(&pdev->dev, reg_res);
vou_dev          1264 drivers/media/platform/sh_vou.c 	if (IS_ERR(vou_dev->base))
vou_dev          1265 drivers/media/platform/sh_vou.c 		return PTR_ERR(vou_dev->base);
vou_dev          1267 drivers/media/platform/sh_vou.c 	ret = devm_request_irq(&pdev->dev, irq, sh_vou_isr, 0, "vou", vou_dev);
vou_dev          1271 drivers/media/platform/sh_vou.c 	ret = v4l2_device_register(&pdev->dev, &vou_dev->v4l2_dev);
vou_dev          1277 drivers/media/platform/sh_vou.c 	vdev = &vou_dev->vdev;
vou_dev          1281 drivers/media/platform/sh_vou.c 	vdev->v4l2_dev = &vou_dev->v4l2_dev;
vou_dev          1283 drivers/media/platform/sh_vou.c 	vdev->lock = &vou_dev->fop_lock;
vou_dev          1285 drivers/media/platform/sh_vou.c 	video_set_drvdata(vdev, vou_dev);
vou_dev          1288 drivers/media/platform/sh_vou.c 	q = &vou_dev->queue;
vou_dev          1291 drivers/media/platform/sh_vou.c 	q->drv_priv = vou_dev;
vou_dev          1297 drivers/media/platform/sh_vou.c 	q->lock = &vou_dev->fop_lock;
vou_dev          1304 drivers/media/platform/sh_vou.c 	INIT_LIST_HEAD(&vou_dev->buf_list);
vou_dev          1315 drivers/media/platform/sh_vou.c 	ret = sh_vou_hw_init(vou_dev);
vou_dev          1319 drivers/media/platform/sh_vou.c 	subdev = v4l2_i2c_new_subdev_board(&vou_dev->v4l2_dev, i2c_adap,
vou_dev          1338 drivers/media/platform/sh_vou.c 	v4l2_device_unregister(&vou_dev->v4l2_dev);
vou_dev          1345 drivers/media/platform/sh_vou.c 	struct sh_vou_device *vou_dev = container_of(v4l2_dev,
vou_dev          1352 drivers/media/platform/sh_vou.c 	video_unregister_device(&vou_dev->vdev);
vou_dev          1354 drivers/media/platform/sh_vou.c 	v4l2_device_unregister(&vou_dev->v4l2_dev);