solo_dev           39 drivers/media/pci/solo6x10/solo6x10-core.c static void solo_set_time(struct solo_dev *solo_dev)
solo_dev           46 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_reg_write(solo_dev, SOLO_TIMER_SEC, (u32)ts.tv_sec);
solo_dev           47 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_reg_write(solo_dev, SOLO_TIMER_USEC, (u32)ts.tv_nsec / NSEC_PER_USEC);
solo_dev           50 drivers/media/pci/solo6x10/solo6x10-core.c static void solo_timer_sync(struct solo_dev *solo_dev)
solo_dev           56 drivers/media/pci/solo6x10/solo6x10-core.c 	if (solo_dev->type != SOLO_DEV_6110)
solo_dev           59 drivers/media/pci/solo6x10/solo6x10-core.c 	if (++solo_dev->time_sync < 60)
solo_dev           62 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_dev->time_sync = 0;
solo_dev           64 drivers/media/pci/solo6x10/solo6x10-core.c 	sec = solo_reg_read(solo_dev, SOLO_TIMER_SEC);
solo_dev           65 drivers/media/pci/solo6x10/solo6x10-core.c 	usec = solo_reg_read(solo_dev, SOLO_TIMER_USEC);
solo_dev           74 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_set_time(solo_dev);
solo_dev           76 drivers/media/pci/solo6x10/solo6x10-core.c 		long usec_lsb = solo_dev->usec_lsb;
solo_dev           84 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->usec_lsb = usec_lsb;
solo_dev           85 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_reg_write(solo_dev, SOLO_TIMER_USEC_LSB,
solo_dev           86 drivers/media/pci/solo6x10/solo6x10-core.c 			       solo_dev->usec_lsb);
solo_dev           92 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev = data;
solo_dev           96 drivers/media/pci/solo6x10/solo6x10-core.c 	status = solo_reg_read(solo_dev, SOLO_IRQ_STAT);
solo_dev          101 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_reg_write(solo_dev, SOLO_IRQ_STAT, status);
solo_dev          104 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_p2m_error_isr(solo_dev);
solo_dev          108 drivers/media/pci/solo6x10/solo6x10-core.c 			solo_p2m_isr(solo_dev, i);
solo_dev          111 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_i2c_isr(solo_dev);
solo_dev          114 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_video_in_isr(solo_dev);
solo_dev          115 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_timer_sync(solo_dev);
solo_dev          119 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_enc_v4l2_isr(solo_dev);
solo_dev          122 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_g723_isr(solo_dev);
solo_dev          127 drivers/media/pci/solo6x10/solo6x10-core.c static void free_solo_dev(struct solo_dev *solo_dev)
solo_dev          129 drivers/media/pci/solo6x10/solo6x10-core.c 	struct pci_dev *pdev = solo_dev->pdev;
solo_dev          131 drivers/media/pci/solo6x10/solo6x10-core.c 	if (solo_dev->dev.parent)
solo_dev          132 drivers/media/pci/solo6x10/solo6x10-core.c 		device_unregister(&solo_dev->dev);
solo_dev          134 drivers/media/pci/solo6x10/solo6x10-core.c 	if (solo_dev->reg_base) {
solo_dev          136 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_g723_exit(solo_dev);
solo_dev          137 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_enc_v4l2_exit(solo_dev);
solo_dev          138 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_enc_exit(solo_dev);
solo_dev          139 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_v4l2_exit(solo_dev);
solo_dev          140 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_disp_exit(solo_dev);
solo_dev          141 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_gpio_exit(solo_dev);
solo_dev          142 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_p2m_exit(solo_dev);
solo_dev          143 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_i2c_exit(solo_dev);
solo_dev          146 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_irq_off(solo_dev, ~0);
solo_dev          147 drivers/media/pci/solo6x10/solo6x10-core.c 		free_irq(pdev->irq, solo_dev);
solo_dev          148 drivers/media/pci/solo6x10/solo6x10-core.c 		pci_iounmap(pdev, solo_dev->reg_base);
solo_dev          153 drivers/media/pci/solo6x10/solo6x10-core.c 	v4l2_device_unregister(&solo_dev->v4l2_dev);
solo_dev          156 drivers/media/pci/solo6x10/solo6x10-core.c 	kfree(solo_dev);
solo_dev          162 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          163 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          178 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_eeprom_ewen(solo_dev, 1);
solo_dev          182 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_eeprom_write(solo_dev, i, cpu_to_be16(p[i]));
solo_dev          184 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_eeprom_ewen(solo_dev, 0);
solo_dev          192 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          193 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          199 drivers/media/pci/solo6x10/solo6x10-core.c 		p[i] = be16_to_cpu(solo_eeprom_read(solo_dev, i));
solo_dev          208 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          209 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          211 drivers/media/pci/solo6x10/solo6x10-core.c 	return sprintf(buf, "%d\n", solo_dev->p2m_timeouts);
solo_dev          218 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          219 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          221 drivers/media/pci/solo6x10/solo6x10-core.c 	return sprintf(buf, "%dMegs\n", solo_dev->sdram_size >> 20);
solo_dev          228 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          229 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          232 drivers/media/pci/solo6x10/solo6x10-core.c 		       hweight32(solo_dev->tw2815),
solo_dev          233 drivers/media/pci/solo6x10/solo6x10-core.c 		       hweight32(solo_dev->tw2864),
solo_dev          234 drivers/media/pci/solo6x10/solo6x10-core.c 		       hweight32(solo_dev->tw2865));
solo_dev          241 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          242 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          246 drivers/media/pci/solo6x10/solo6x10-core.c 	val = solo_reg_read(solo_dev, SOLO_VI_CH_SWITCH_0);
solo_dev          254 drivers/media/pci/solo6x10/solo6x10-core.c 	val = solo_reg_read(solo_dev, SOLO_VI_CH_SWITCH_1);
solo_dev          262 drivers/media/pci/solo6x10/solo6x10-core.c 	val = solo_reg_read(solo_dev, SOLO_VI_CH_SWITCH_2);
solo_dev          276 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          277 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          283 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_dev->p2m_jiffies = msecs_to_jiffies(ms);
solo_dev          292 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          293 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          295 drivers/media/pci/solo6x10/solo6x10-core.c 	return sprintf(buf, "%ums\n", jiffies_to_msecs(solo_dev->p2m_jiffies));
solo_dev          302 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          303 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          305 drivers/media/pci/solo6x10/solo6x10-core.c 	int fps = solo_dev->fps;
solo_dev          308 drivers/media/pci/solo6x10/solo6x10-core.c 	for (i = 0; i < solo_dev->nr_chans; i++) {
solo_dev          310 drivers/media/pci/solo6x10/solo6x10-core.c 			       i, solo_dev->v4l2_enc[i]->interval, fps,
solo_dev          311 drivers/media/pci/solo6x10/solo6x10-core.c 			       solo_reg_read(solo_dev, SOLO_CAP_CH_INTV(i)));
solo_dev          321 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          322 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          331 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_EOSD_EXT_AREA(solo_dev),
solo_dev          332 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_EOSD_EXT_SIZE(solo_dev),
solo_dev          333 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_EOSD_EXT_AREA(solo_dev) /
solo_dev          334 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_EOSD_EXT_SIZE(solo_dev));
solo_dev          337 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_MOTION_EXT_ADDR(solo_dev),
solo_dev          341 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_G723_EXT_ADDR(solo_dev),
solo_dev          345 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_CAP_EXT_ADDR(solo_dev),
solo_dev          346 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_CAP_EXT_SIZE(solo_dev),
solo_dev          348 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_CAP_EXT_SIZE(solo_dev) / SOLO_CAP_PAGE_SIZE);
solo_dev          351 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_EREF_EXT_ADDR(solo_dev),
solo_dev          352 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_EREF_EXT_AREA(solo_dev),
solo_dev          354 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_EREF_EXT_AREA(solo_dev) / SOLO_EREF_EXT_SIZE);
solo_dev          357 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_MP4E_EXT_ADDR(solo_dev),
solo_dev          358 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_MP4E_EXT_SIZE(solo_dev));
solo_dev          361 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_JPEG_EXT_ADDR(solo_dev),
solo_dev          362 drivers/media/pci/solo6x10/solo6x10-core.c 		       SOLO_JPEG_EXT_SIZE(solo_dev));
solo_dev          372 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev =
solo_dev          373 drivers/media/pci/solo6x10/solo6x10-core.c 		container_of(dev, struct solo_dev, dev);
solo_dev          374 drivers/media/pci/solo6x10/solo6x10-core.c 	const int size = solo_dev->sdram_size;
solo_dev          382 drivers/media/pci/solo6x10/solo6x10-core.c 	if (solo_p2m_dma(solo_dev, 0, buf, off, count, 0, 0))
solo_dev          404 drivers/media/pci/solo6x10/solo6x10-core.c static int solo_sysfs_init(struct solo_dev *solo_dev)
solo_dev          406 drivers/media/pci/solo6x10/solo6x10-core.c 	struct bin_attribute *sdram_attr = &solo_dev->sdram_attr;
solo_dev          407 drivers/media/pci/solo6x10/solo6x10-core.c 	struct device *dev = &solo_dev->dev;
solo_dev          411 drivers/media/pci/solo6x10/solo6x10-core.c 	if (solo_dev->type == SOLO_DEV_6110)
solo_dev          417 drivers/media/pci/solo6x10/solo6x10-core.c 	dev->parent = &solo_dev->pdev->dev;
solo_dev          418 drivers/media/pci/solo6x10/solo6x10-core.c 	set_dev_node(dev, dev_to_node(&solo_dev->pdev->dev));
solo_dev          419 drivers/media/pci/solo6x10/solo6x10-core.c 	dev_set_name(dev, "%s-%d-%d", driver, solo_dev->vfd->num,
solo_dev          420 drivers/media/pci/solo6x10/solo6x10-core.c 		     solo_dev->nr_chans);
solo_dev          438 drivers/media/pci/solo6x10/solo6x10-core.c 	sdram_attr->size = solo_dev->sdram_size;
solo_dev          450 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev;
solo_dev          454 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_dev = kzalloc(sizeof(*solo_dev), GFP_KERNEL);
solo_dev          455 drivers/media/pci/solo6x10/solo6x10-core.c 	if (solo_dev == NULL)
solo_dev          463 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_dev->type = id->driver_data;
solo_dev          464 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_dev->pdev = pdev;
solo_dev          465 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = v4l2_device_register(&pdev->dev, &solo_dev->v4l2_dev);
solo_dev          470 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_dev->p2m_jiffies = msecs_to_jiffies(100);
solo_dev          486 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_dev->reg_base = pci_ioremap_bar(pdev, 0);
solo_dev          487 drivers/media/pci/solo6x10/solo6x10-core.c 	if (solo_dev->reg_base == NULL) {
solo_dev          492 drivers/media/pci/solo6x10/solo6x10-core.c 	chip_id = solo_reg_read(solo_dev, SOLO_CHIP_OPTION) &
solo_dev          496 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->nr_chans = 16;
solo_dev          497 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->nr_ext = 5;
solo_dev          500 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->nr_chans = 8;
solo_dev          501 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->nr_ext = 2;
solo_dev          508 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->nr_chans = 4;
solo_dev          509 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->nr_ext = 1;
solo_dev          513 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_irq_off(solo_dev, ~0);
solo_dev          516 drivers/media/pci/solo6x10/solo6x10-core.c 	if (solo_dev->type == SOLO_DEV_6010) {
solo_dev          517 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->clock_mhz = 108;
solo_dev          518 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->sys_config = SOLO_SYS_CFG_SDRAM64BIT
solo_dev          520 drivers/media/pci/solo6x10/solo6x10-core.c 			| SOLO_SYS_CFG_FEEDBACKDIV(solo_dev->clock_mhz * 2 - 2)
solo_dev          522 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_reg_write(solo_dev, SOLO_SYS_CFG, solo_dev->sys_config);
solo_dev          526 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->clock_mhz = 135;
solo_dev          528 drivers/media/pci/solo6x10/solo6x10-core.c 		if (solo_dev->clock_mhz < 125) {
solo_dev          530 drivers/media/pci/solo6x10/solo6x10-core.c 			divf = (solo_dev->clock_mhz * 4) / 3 - 1;
solo_dev          533 drivers/media/pci/solo6x10/solo6x10-core.c 			divf = (solo_dev->clock_mhz * 2) / 3 - 1;
solo_dev          536 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_reg_write(solo_dev, SOLO_PLL_CONFIG,
solo_dev          543 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->sys_config = SOLO_SYS_CFG_SDRAM64BIT;
solo_dev          546 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_reg_write(solo_dev, SOLO_SYS_CFG, solo_dev->sys_config);
solo_dev          547 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_reg_write(solo_dev, SOLO_TIMER_CLOCK_NUM,
solo_dev          548 drivers/media/pci/solo6x10/solo6x10-core.c 		       solo_dev->clock_mhz - 1);
solo_dev          554 drivers/media/pci/solo6x10/solo6x10-core.c 			  solo_dev);
solo_dev          559 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_irq_on(solo_dev, SOLO_IRQ_PCI_ERR);
solo_dev          561 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = solo_i2c_init(solo_dev);
solo_dev          566 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_reg_write(solo_dev, SOLO_DMA_CTRL,
solo_dev          574 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_reg_write(solo_dev, SOLO_DMA_CTRL1,
solo_dev          575 drivers/media/pci/solo6x10/solo6x10-core.c 		       solo_dev->type == SOLO_DEV_6010 ? 0x100 : 0x300);
solo_dev          577 drivers/media/pci/solo6x10/solo6x10-core.c 	if (solo_dev->type != SOLO_DEV_6010) {
solo_dev          578 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_dev->usec_lsb = 0x3f;
solo_dev          579 drivers/media/pci/solo6x10/solo6x10-core.c 		solo_set_time(solo_dev);
solo_dev          583 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_reg_write(solo_dev, SOLO_WATCHDOG, 0);
solo_dev          587 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = solo_p2m_init(solo_dev);
solo_dev          591 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = solo_disp_init(solo_dev);
solo_dev          595 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = solo_gpio_init(solo_dev);
solo_dev          599 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = solo_tw28_init(solo_dev);
solo_dev          603 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = solo_v4l2_init(solo_dev, video_nr);
solo_dev          607 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = solo_enc_init(solo_dev);
solo_dev          611 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = solo_enc_v4l2_init(solo_dev, video_nr);
solo_dev          615 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = solo_g723_init(solo_dev);
solo_dev          619 drivers/media/pci/solo6x10/solo6x10-core.c 	ret = solo_sysfs_init(solo_dev);
solo_dev          624 drivers/media/pci/solo6x10/solo6x10-core.c 	solo_dev->p2m_jiffies = msecs_to_jiffies(20);
solo_dev          629 drivers/media/pci/solo6x10/solo6x10-core.c 	free_solo_dev(solo_dev);
solo_dev          636 drivers/media/pci/solo6x10/solo6x10-core.c 	struct solo_dev *solo_dev = container_of(v4l2_dev, struct solo_dev, v4l2_dev);
solo_dev          638 drivers/media/pci/solo6x10/solo6x10-core.c 	free_solo_dev(solo_dev);
solo_dev           29 drivers/media/pci/solo6x10/solo6x10-disp.c static void solo_vin_config(struct solo_dev *solo_dev)
solo_dev           31 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_dev->vin_hstart = 8;
solo_dev           32 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_dev->vin_vstart = 2;
solo_dev           34 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_SYS_VCLK,
solo_dev           45 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_ACT_I_P,
solo_dev           46 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VI_H_START(solo_dev->vin_hstart) |
solo_dev           47 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VI_V_START(solo_dev->vin_vstart) |
solo_dev           48 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VI_V_STOP(solo_dev->vin_vstart +
solo_dev           49 drivers/media/pci/solo6x10/solo6x10-disp.c 				      solo_dev->video_vsize));
solo_dev           51 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_ACT_I_S,
solo_dev           52 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VI_H_START(solo_dev->vout_hstart) |
solo_dev           53 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VI_V_START(solo_dev->vout_vstart) |
solo_dev           54 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VI_V_STOP(solo_dev->vout_vstart +
solo_dev           55 drivers/media/pci/solo6x10/solo6x10-disp.c 				      solo_dev->video_vsize));
solo_dev           57 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_ACT_P,
solo_dev           62 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_CH_FORMAT,
solo_dev           66 drivers/media/pci/solo6x10/solo6x10-disp.c 	if (solo_dev->type == SOLO_DEV_6010)
solo_dev           67 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_FMT_CFG, 0);
solo_dev           69 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_FMT_CFG, 16 << 22);
solo_dev           71 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_PAGE_SW, 2);
solo_dev           73 drivers/media/pci/solo6x10/solo6x10-disp.c 	if (solo_dev->video_type == SOLO_VO_FMT_TYPE_NTSC) {
solo_dev           74 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_PB_CONFIG,
solo_dev           76 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_PB_RANGE_HV,
solo_dev           78 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_PB_ACT_V,
solo_dev           82 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_PB_CONFIG,
solo_dev           84 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_PB_RANGE_HV,
solo_dev           86 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_PB_ACT_V,
solo_dev           90 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_PB_ACT_H, SOLO_VI_PB_HSTART(16) |
solo_dev           94 drivers/media/pci/solo6x10/solo6x10-disp.c static void solo_vout_config_cursor(struct solo_dev *dev)
solo_dev          109 drivers/media/pci/solo6x10/solo6x10-disp.c static void solo_vout_config(struct solo_dev *solo_dev)
solo_dev          111 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_dev->vout_hstart = 6;
solo_dev          112 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_dev->vout_vstart = 8;
solo_dev          114 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_FMT_ENC,
solo_dev          115 drivers/media/pci/solo6x10/solo6x10-disp.c 		       solo_dev->video_type |
solo_dev          122 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_ACT_H,
solo_dev          123 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VO_H_START(solo_dev->vout_hstart) |
solo_dev          124 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VO_H_STOP(solo_dev->vout_hstart +
solo_dev          125 drivers/media/pci/solo6x10/solo6x10-disp.c 				      solo_dev->video_hsize));
solo_dev          127 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_ACT_V,
solo_dev          128 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VO_V_START(solo_dev->vout_vstart) |
solo_dev          129 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VO_V_STOP(solo_dev->vout_vstart +
solo_dev          130 drivers/media/pci/solo6x10/solo6x10-disp.c 				      solo_dev->video_vsize));
solo_dev          132 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_RANGE_HV,
solo_dev          133 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VO_H_LEN(solo_dev->video_hsize) |
solo_dev          134 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VO_V_LEN(solo_dev->video_vsize));
solo_dev          137 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_BORDER_LINE_COLOR,
solo_dev          139 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_BORDER_FILL_COLOR,
solo_dev          141 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_BKG_COLOR,
solo_dev          144 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_DISP_ERASE, SOLO_VO_DISP_ERASE_ON);
solo_dev          146 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_WIN_SW, 0);
solo_dev          148 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_ZOOM_CTRL, 0);
solo_dev          149 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_FREEZE_CTRL, 0);
solo_dev          151 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_DISP_CTRL, SOLO_VO_DISP_ON |
solo_dev          156 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_vout_config_cursor(solo_dev);
solo_dev          159 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_CH_ENA,
solo_dev          160 drivers/media/pci/solo6x10/solo6x10-disp.c 		       (1 << solo_dev->nr_chans) - 1);
solo_dev          163 drivers/media/pci/solo6x10/solo6x10-disp.c static int solo_dma_vin_region(struct solo_dev *solo_dev, u32 off,
solo_dev          178 drivers/media/pci/solo6x10/solo6x10-disp.c 		ret = solo_p2m_dma(solo_dev, 1, buf,
solo_dev          179 drivers/media/pci/solo6x10/solo6x10-disp.c 				   SOLO_MOTION_EXT_ADDR(solo_dev) + off + i,
solo_dev          190 drivers/media/pci/solo6x10/solo6x10-disp.c int solo_set_motion_threshold(struct solo_dev *solo_dev, u8 ch, u16 val)
solo_dev          192 drivers/media/pci/solo6x10/solo6x10-disp.c 	if (ch > solo_dev->nr_chans)
solo_dev          195 drivers/media/pci/solo6x10/solo6x10-disp.c 	return solo_dma_vin_region(solo_dev, SOLO_MOT_FLAG_AREA +
solo_dev          200 drivers/media/pci/solo6x10/solo6x10-disp.c int solo_set_motion_block(struct solo_dev *solo_dev, u8 ch,
solo_dev          215 drivers/media/pci/solo6x10/solo6x10-disp.c 		ret |= solo_p2m_dma(solo_dev, 1, buf,
solo_dev          216 drivers/media/pci/solo6x10/solo6x10-disp.c 			SOLO_MOTION_EXT_ADDR(solo_dev) + off + y * size,
solo_dev          227 drivers/media/pci/solo6x10/solo6x10-disp.c static void solo_motion_config(struct solo_dev *solo_dev)
solo_dev          231 drivers/media/pci/solo6x10/solo6x10-disp.c 	for (i = 0; i < solo_dev->nr_chans; i++) {
solo_dev          233 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_dma_vin_region(solo_dev, i * SOLO_MOT_FLAG_SIZE, 0x0000,
solo_dev          237 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_dma_vin_region(solo_dev, SOLO_MOT_FLAG_AREA +
solo_dev          243 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_set_motion_threshold(solo_dev, i, SOLO_DEF_MOT_THRESH);
solo_dev          247 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_MOT_ADR, SOLO_VI_MOTION_EN(0) |
solo_dev          248 drivers/media/pci/solo6x10/solo6x10-disp.c 		       (SOLO_MOTION_EXT_ADDR(solo_dev) >> 16));
solo_dev          249 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_MOT_CTRL,
solo_dev          251 drivers/media/pci/solo6x10/solo6x10-disp.c 		       SOLO_VI_MOTION_SAMPLE_LENGTH(solo_dev->video_hsize / 16)
solo_dev          255 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_MOTION_BORDER, 0);
solo_dev          256 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VI_MOTION_BAR, 0);
solo_dev          259 drivers/media/pci/solo6x10/solo6x10-disp.c int solo_disp_init(struct solo_dev *solo_dev)
solo_dev          263 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_dev->video_hsize = 704;
solo_dev          264 drivers/media/pci/solo6x10/solo6x10-disp.c 	if (solo_dev->video_type == SOLO_VO_FMT_TYPE_NTSC) {
solo_dev          265 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_dev->video_vsize = 240;
solo_dev          266 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_dev->fps = 30;
solo_dev          268 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_dev->video_vsize = 288;
solo_dev          269 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_dev->fps = 25;
solo_dev          272 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_vin_config(solo_dev);
solo_dev          273 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_motion_config(solo_dev);
solo_dev          274 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_vout_config(solo_dev);
solo_dev          276 drivers/media/pci/solo6x10/solo6x10-disp.c 	for (i = 0; i < solo_dev->nr_chans; i++)
solo_dev          277 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_WIN_ON(i), 1);
solo_dev          282 drivers/media/pci/solo6x10/solo6x10-disp.c void solo_disp_exit(struct solo_dev *solo_dev)
solo_dev          286 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_DISP_CTRL, 0);
solo_dev          287 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_ZOOM_CTRL, 0);
solo_dev          288 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_FREEZE_CTRL, 0);
solo_dev          290 drivers/media/pci/solo6x10/solo6x10-disp.c 	for (i = 0; i < solo_dev->nr_chans; i++) {
solo_dev          291 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_WIN_CTRL0(i), 0);
solo_dev          292 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_WIN_CTRL1(i), 0);
solo_dev          293 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VI_WIN_ON(i), 0);
solo_dev          298 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VO_BORDER_X(i), 0);
solo_dev          301 drivers/media/pci/solo6x10/solo6x10-disp.c 		solo_reg_write(solo_dev, SOLO_VO_BORDER_Y(i), 0);
solo_dev          303 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_BORDER_LINE_MASK, 0);
solo_dev          304 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_BORDER_FILL_MASK, 0);
solo_dev          306 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_RECTANGLE_CTRL(0), 0);
solo_dev          307 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_RECTANGLE_START(0), 0);
solo_dev          308 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_RECTANGLE_STOP(0), 0);
solo_dev          310 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_RECTANGLE_CTRL(1), 0);
solo_dev          311 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_RECTANGLE_START(1), 0);
solo_dev          312 drivers/media/pci/solo6x10/solo6x10-disp.c 	solo_reg_write(solo_dev, SOLO_VO_RECTANGLE_STOP(1), 0);
solo_dev           26 drivers/media/pci/solo6x10/solo6x10-eeprom.c #define eeprom_delay()	solo_reg_read(solo_dev, SOLO_EEPROM_CTRL)
solo_dev           31 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		ret = solo_eeprom_reg_read(solo_dev);	\
solo_dev           43 drivers/media/pci/solo6x10/solo6x10-eeprom.c static unsigned int solo_eeprom_reg_read(struct solo_dev *solo_dev)
solo_dev           45 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	return solo_reg_read(solo_dev, SOLO_EEPROM_CTRL) & EE_DATA_READ;
solo_dev           48 drivers/media/pci/solo6x10/solo6x10-eeprom.c static void solo_eeprom_reg_write(struct solo_dev *solo_dev, u32 data)
solo_dev           50 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_reg_write(solo_dev, SOLO_EEPROM_CTRL, data);
solo_dev           54 drivers/media/pci/solo6x10/solo6x10-eeprom.c static void solo_eeprom_cmd(struct solo_dev *solo_dev, int cmd)
solo_dev           58 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_reg_write(solo_dev, SOLO_EEPROM_ACCESS_EN);
solo_dev           59 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_reg_write(solo_dev, SOLO_EEPROM_ENABLE);
solo_dev           64 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		solo_eeprom_reg_write(solo_dev, SOLO_EEPROM_ENABLE | dataval);
solo_dev           65 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		solo_eeprom_reg_write(solo_dev, SOLO_EEPROM_ENABLE |
solo_dev           69 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_reg_write(solo_dev, SOLO_EEPROM_ENABLE);
solo_dev           72 drivers/media/pci/solo6x10/solo6x10-eeprom.c unsigned int solo_eeprom_ewen(struct solo_dev *solo_dev, int w_en)
solo_dev           78 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_cmd(solo_dev, ewen_cmd);
solo_dev           81 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		solo_eeprom_reg_write(solo_dev, SOLO_EEPROM_ENABLE |
solo_dev           83 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		retval = (retval << 1) | solo_eeprom_reg_read(solo_dev);
solo_dev           84 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		solo_eeprom_reg_write(solo_dev, SOLO_EEPROM_ENABLE);
solo_dev           85 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		retval = (retval << 1) | solo_eeprom_reg_read(solo_dev);
solo_dev           88 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_reg_write(solo_dev, ~EE_CS);
solo_dev           89 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	retval = (retval << 1) | solo_eeprom_reg_read(solo_dev);
solo_dev           94 drivers/media/pci/solo6x10/solo6x10-eeprom.c __be16 solo_eeprom_read(struct solo_dev *solo_dev, int loc)
solo_dev          100 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_cmd(solo_dev, read_cmd);
solo_dev          103 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		solo_eeprom_reg_write(solo_dev, SOLO_EEPROM_ENABLE |
solo_dev          105 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		retval = (retval << 1) | solo_eeprom_reg_read(solo_dev);
solo_dev          106 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		solo_eeprom_reg_write(solo_dev, SOLO_EEPROM_ENABLE);
solo_dev          109 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_reg_write(solo_dev, ~EE_CS);
solo_dev          114 drivers/media/pci/solo6x10/solo6x10-eeprom.c int solo_eeprom_write(struct solo_dev *solo_dev, int loc,
solo_dev          121 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_cmd(solo_dev, write_cmd);
solo_dev          126 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		solo_eeprom_reg_write(solo_dev, EE_ENB);
solo_dev          127 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		solo_eeprom_reg_write(solo_dev,
solo_dev          131 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_reg_write(solo_dev, EE_ENB);
solo_dev          132 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_reg_write(solo_dev, ~EE_CS);
solo_dev          133 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_reg_write(solo_dev, EE_ENB);
solo_dev          136 drivers/media/pci/solo6x10/solo6x10-eeprom.c 		retval = solo_eeprom_reg_read(solo_dev);
solo_dev          138 drivers/media/pci/solo6x10/solo6x10-eeprom.c 	solo_eeprom_reg_write(solo_dev, ~EE_CS);
solo_dev           24 drivers/media/pci/solo6x10/solo6x10-enc.c static void solo_capture_config(struct solo_dev *solo_dev)
solo_dev           31 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_CAP_BASE,
solo_dev           32 drivers/media/pci/solo6x10/solo6x10-enc.c 		       SOLO_CAP_MAX_PAGE((SOLO_CAP_EXT_SIZE(solo_dev)
solo_dev           34 drivers/media/pci/solo6x10/solo6x10-enc.c 		       | SOLO_CAP_BASE_ADDR(SOLO_CAP_EXT_ADDR(solo_dev) >> 16));
solo_dev           37 drivers/media/pci/solo6x10/solo6x10-enc.c 	if (solo_dev->type == SOLO_DEV_6110) {
solo_dev           40 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_CAP_BTW,
solo_dev           44 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_CAP_BTW,
solo_dev           50 drivers/media/pci/solo6x10/solo6x10-enc.c 	width = solo_dev->video_hsize;
solo_dev           51 drivers/media/pci/solo6x10/solo6x10-enc.c 	height = solo_dev->video_vsize;
solo_dev           52 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_DIM_SCALE1,
solo_dev           58 drivers/media/pci/solo6x10/solo6x10-enc.c 	width = solo_dev->video_hsize / 2;
solo_dev           59 drivers/media/pci/solo6x10/solo6x10-enc.c 	height = solo_dev->video_vsize;
solo_dev           60 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_DIM_SCALE2,
solo_dev           66 drivers/media/pci/solo6x10/solo6x10-enc.c 	width = solo_dev->video_hsize / 2;
solo_dev           67 drivers/media/pci/solo6x10/solo6x10-enc.c 	height = solo_dev->video_vsize / 2;
solo_dev           68 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_DIM_SCALE3,
solo_dev           74 drivers/media/pci/solo6x10/solo6x10-enc.c 	width = solo_dev->video_hsize / 3;
solo_dev           75 drivers/media/pci/solo6x10/solo6x10-enc.c 	height = solo_dev->video_vsize / 3;
solo_dev           76 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_DIM_SCALE4,
solo_dev           82 drivers/media/pci/solo6x10/solo6x10-enc.c 	width = solo_dev->video_hsize / 4;
solo_dev           83 drivers/media/pci/solo6x10/solo6x10-enc.c 	height = solo_dev->video_vsize / 2;
solo_dev           84 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_DIM_SCALE5,
solo_dev           92 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_DIM_PROG,
solo_dev           98 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_OSD_CH, 0);
solo_dev           99 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_OSD_BASE, SOLO_EOSD_EXT_ADDR >> 16);
solo_dev          100 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_OSD_CLR,
solo_dev          103 drivers/media/pci/solo6x10/solo6x10-enc.c 	if (solo_dev->type == SOLO_DEV_6010)
solo_dev          104 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_VE_OSD_OPT,
solo_dev          107 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_VE_OSD_OPT, SOLO_VE_OSD_V_DOUBLE
solo_dev          111 drivers/media/pci/solo6x10/solo6x10-enc.c 	buf = kzalloc(SOLO_EOSD_EXT_SIZE(solo_dev), GFP_KERNEL);
solo_dev          115 drivers/media/pci/solo6x10/solo6x10-enc.c 	for (i = 0; i < solo_dev->nr_chans; i++) {
solo_dev          116 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_p2m_dma(solo_dev, 1, buf,
solo_dev          118 drivers/media/pci/solo6x10/solo6x10-enc.c 			     (SOLO_EOSD_EXT_SIZE(solo_dev) * i),
solo_dev          119 drivers/media/pci/solo6x10/solo6x10-enc.c 			     SOLO_EOSD_EXT_SIZE(solo_dev), 0, 0);
solo_dev          129 drivers/media/pci/solo6x10/solo6x10-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          140 drivers/media/pci/solo6x10/solo6x10-enc.c 	reg = solo_reg_read(solo_dev, SOLO_VE_OSD_CH);
solo_dev          157 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_p2m_dma(solo_dev, 1, buf,
solo_dev          158 drivers/media/pci/solo6x10/solo6x10-enc.c 		     SOLO_EOSD_EXT_ADDR_CHAN(solo_dev, solo_enc->ch),
solo_dev          165 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_OSD_CH, reg);
solo_dev          172 drivers/media/pci/solo6x10/solo6x10-enc.c void solo_s_jpeg_qp(struct solo_dev *solo_dev, unsigned int ch,
solo_dev          181 drivers/media/pci/solo6x10/solo6x10-enc.c 	if (solo_dev->type == SOLO_DEV_6010)
solo_dev          194 drivers/media/pci/solo6x10/solo6x10-enc.c 	spin_lock_irqsave(&solo_dev->jpeg_qp_lock, flags);
solo_dev          196 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_dev->jpeg_qp[idx] &= ~(3 << ch);
solo_dev          197 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_dev->jpeg_qp[idx] |= (qp & 3) << ch;
solo_dev          199 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, reg, solo_dev->jpeg_qp[idx]);
solo_dev          201 drivers/media/pci/solo6x10/solo6x10-enc.c 	spin_unlock_irqrestore(&solo_dev->jpeg_qp_lock, flags);
solo_dev          204 drivers/media/pci/solo6x10/solo6x10-enc.c int solo_g_jpeg_qp(struct solo_dev *solo_dev, unsigned int ch)
solo_dev          208 drivers/media/pci/solo6x10/solo6x10-enc.c 	if (solo_dev->type == SOLO_DEV_6010)
solo_dev          222 drivers/media/pci/solo6x10/solo6x10-enc.c 	return (solo_dev->jpeg_qp[idx] >> ch) & 3;
solo_dev          227 drivers/media/pci/solo6x10/solo6x10-enc.c static void solo_jpeg_config(struct solo_dev *solo_dev)
solo_dev          229 drivers/media/pci/solo6x10/solo6x10-enc.c 	if (solo_dev->type == SOLO_DEV_6010) {
solo_dev          230 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_VE_JPEG_QP_TBL,
solo_dev          233 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_VE_JPEG_QP_TBL,
solo_dev          237 drivers/media/pci/solo6x10/solo6x10-enc.c 	spin_lock_init(&solo_dev->jpeg_qp_lock);
solo_dev          240 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_dev->jpeg_qp[0] = solo_dev->jpeg_qp[1] = SOLO_QP_INIT;
solo_dev          241 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_JPEG_QP_CH_L, SOLO_QP_INIT);
solo_dev          242 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_JPEG_QP_CH_H, SOLO_QP_INIT);
solo_dev          244 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_JPEG_CFG,
solo_dev          245 drivers/media/pci/solo6x10/solo6x10-enc.c 		(SOLO_JPEG_EXT_SIZE(solo_dev) & 0xffff0000) |
solo_dev          246 drivers/media/pci/solo6x10/solo6x10-enc.c 		((SOLO_JPEG_EXT_ADDR(solo_dev) >> 16) & 0x0000ffff));
solo_dev          247 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_JPEG_CTRL, 0xffffffff);
solo_dev          248 drivers/media/pci/solo6x10/solo6x10-enc.c 	if (solo_dev->type == SOLO_DEV_6110) {
solo_dev          249 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_VE_JPEG_CFG1,
solo_dev          254 drivers/media/pci/solo6x10/solo6x10-enc.c static void solo_mp4e_config(struct solo_dev *solo_dev)
solo_dev          259 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_CFG0,
solo_dev          261 drivers/media/pci/solo6x10/solo6x10-enc.c 		       SOLO_VE_BLOCK_SIZE(SOLO_MP4E_EXT_SIZE(solo_dev) >> 16) |
solo_dev          262 drivers/media/pci/solo6x10/solo6x10-enc.c 		       SOLO_VE_BLOCK_BASE(SOLO_MP4E_EXT_ADDR(solo_dev) >> 16));
solo_dev          267 drivers/media/pci/solo6x10/solo6x10-enc.c 	if (solo_dev->type != SOLO_DEV_6010) {
solo_dev          269 drivers/media/pci/solo6x10/solo6x10-enc.c 			(SOLO_MP4E_EXT_SIZE(solo_dev) >> 24) & 0x0f);
solo_dev          271 drivers/media/pci/solo6x10/solo6x10-enc.c 			(SOLO_JPEG_EXT_SIZE(solo_dev) >> 24) & 0x0f);
solo_dev          273 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_CFG1, cfg);
solo_dev          275 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_WMRK_POLY, 0);
solo_dev          276 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_VMRK_INIT_KEY, 0);
solo_dev          277 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_WMRK_STRL, 0);
solo_dev          278 drivers/media/pci/solo6x10/solo6x10-enc.c 	if (solo_dev->type == SOLO_DEV_6110)
solo_dev          279 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_VE_WMRK_ENABLE, 0);
solo_dev          280 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_ENCRYP_POLY, 0);
solo_dev          281 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_ENCRYP_INIT, 0);
solo_dev          283 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_reg_write(solo_dev, SOLO_VE_ATTR,
solo_dev          288 drivers/media/pci/solo6x10/solo6x10-enc.c 		       SOLO_DCT_INTERVAL(solo_dev->type == SOLO_DEV_6010 ? 9 : 10));
solo_dev          290 drivers/media/pci/solo6x10/solo6x10-enc.c 	for (i = 0; i < solo_dev->nr_chans; i++) {
solo_dev          291 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_VE_CH_REF_BASE(i),
solo_dev          292 drivers/media/pci/solo6x10/solo6x10-enc.c 			       (SOLO_EREF_EXT_ADDR(solo_dev) +
solo_dev          294 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_VE_CH_REF_BASE_E(i),
solo_dev          295 drivers/media/pci/solo6x10/solo6x10-enc.c 			       (SOLO_EREF_EXT_ADDR(solo_dev) +
solo_dev          299 drivers/media/pci/solo6x10/solo6x10-enc.c 	if (solo_dev->type == SOLO_DEV_6110) {
solo_dev          300 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_VE_COMPT_MOT, 0x00040008);
solo_dev          302 drivers/media/pci/solo6x10/solo6x10-enc.c 		for (i = 0; i < solo_dev->nr_chans; i++)
solo_dev          303 drivers/media/pci/solo6x10/solo6x10-enc.c 			solo_reg_write(solo_dev, SOLO_VE_CH_MOT(i), 0x100);
solo_dev          307 drivers/media/pci/solo6x10/solo6x10-enc.c int solo_enc_init(struct solo_dev *solo_dev)
solo_dev          311 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_capture_config(solo_dev);
solo_dev          312 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_mp4e_config(solo_dev);
solo_dev          313 drivers/media/pci/solo6x10/solo6x10-enc.c 	solo_jpeg_config(solo_dev);
solo_dev          315 drivers/media/pci/solo6x10/solo6x10-enc.c 	for (i = 0; i < solo_dev->nr_chans; i++) {
solo_dev          316 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_CAP_CH_SCALE(i), 0);
solo_dev          317 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_CAP_CH_COMP_ENA_E(i), 0);
solo_dev          323 drivers/media/pci/solo6x10/solo6x10-enc.c void solo_enc_exit(struct solo_dev *solo_dev)
solo_dev          327 drivers/media/pci/solo6x10/solo6x10-enc.c 	for (i = 0; i < solo_dev->nr_chans; i++) {
solo_dev          328 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_CAP_CH_SCALE(i), 0);
solo_dev          329 drivers/media/pci/solo6x10/solo6x10-enc.c 		solo_reg_write(solo_dev, SOLO_CAP_CH_COMP_ENA_E(i), 0);
solo_dev           48 drivers/media/pci/solo6x10/solo6x10-g723.c 	struct solo_dev			*solo_dev;
solo_dev           53 drivers/media/pci/solo6x10/solo6x10-g723.c static void solo_g723_config(struct solo_dev *solo_dev)
solo_dev           57 drivers/media/pci/solo6x10/solo6x10-g723.c 	clk_div = (solo_dev->clock_mhz * 1000000)
solo_dev           60 drivers/media/pci/solo6x10/solo6x10-g723.c 	solo_reg_write(solo_dev, SOLO_AUDIO_SAMPLE,
solo_dev           64 drivers/media/pci/solo6x10/solo6x10-g723.c 	solo_reg_write(solo_dev, SOLO_AUDIO_FDMA_INTR,
solo_dev           67 drivers/media/pci/solo6x10/solo6x10-g723.c 		       | SOLO_AUDIO_FDMA_BASE(SOLO_G723_EXT_ADDR(solo_dev) >> 16));
solo_dev           69 drivers/media/pci/solo6x10/solo6x10-g723.c 	solo_reg_write(solo_dev, SOLO_AUDIO_CONTROL,
solo_dev           76 drivers/media/pci/solo6x10/solo6x10-g723.c void solo_g723_isr(struct solo_dev *solo_dev)
solo_dev           79 drivers/media/pci/solo6x10/solo6x10-g723.c 		&solo_dev->snd_pcm->streams[SNDRV_PCM_STREAM_CAPTURE];
solo_dev           88 drivers/media/pci/solo6x10/solo6x10-g723.c 		if (snd_pcm_substream_chip(ss) == solo_dev)
solo_dev          131 drivers/media/pci/solo6x10/solo6x10-g723.c 	struct solo_dev *solo_dev = snd_pcm_substream_chip(ss);
solo_dev          138 drivers/media/pci/solo6x10/solo6x10-g723.c 	solo_pcm->g723_buf = pci_alloc_consistent(solo_dev->pdev,
solo_dev          145 drivers/media/pci/solo6x10/solo6x10-g723.c 	solo_pcm->solo_dev = solo_dev;
solo_dev          161 drivers/media/pci/solo6x10/solo6x10-g723.c 	snd_pcm_substream_chip(ss) = solo_pcm->solo_dev;
solo_dev          162 drivers/media/pci/solo6x10/solo6x10-g723.c 	pci_free_consistent(solo_pcm->solo_dev->pdev, G723_PERIOD_BYTES,
solo_dev          172 drivers/media/pci/solo6x10/solo6x10-g723.c 	struct solo_dev *solo_dev = solo_pcm->solo_dev;
solo_dev          181 drivers/media/pci/solo6x10/solo6x10-g723.c 			if (atomic_inc_return(&solo_dev->snd_users) == 1)
solo_dev          182 drivers/media/pci/solo6x10/solo6x10-g723.c 				solo_irq_on(solo_dev, SOLO_IRQ_G723);
solo_dev          189 drivers/media/pci/solo6x10/solo6x10-g723.c 			if (atomic_dec_return(&solo_dev->snd_users) == 0)
solo_dev          190 drivers/media/pci/solo6x10/solo6x10-g723.c 				solo_irq_off(solo_dev, SOLO_IRQ_G723);
solo_dev          211 drivers/media/pci/solo6x10/solo6x10-g723.c 	struct solo_dev *solo_dev = solo_pcm->solo_dev;
solo_dev          212 drivers/media/pci/solo6x10/solo6x10-g723.c 	snd_pcm_uframes_t idx = solo_reg_read(solo_dev, SOLO_AUDIO_STA) & 0x1f;
solo_dev          222 drivers/media/pci/solo6x10/solo6x10-g723.c 	struct solo_dev *solo_dev = solo_pcm->solo_dev;
solo_dev          228 drivers/media/pci/solo6x10/solo6x10-g723.c 		err = solo_p2m_dma_t(solo_dev, 0, solo_pcm->g723_dma,
solo_dev          229 drivers/media/pci/solo6x10/solo6x10-g723.c 				     SOLO_G723_EXT_ADDR(solo_dev) +
solo_dev          249 drivers/media/pci/solo6x10/solo6x10-g723.c 	struct solo_dev *solo_dev = solo_pcm->solo_dev;
solo_dev          255 drivers/media/pci/solo6x10/solo6x10-g723.c 		err = solo_p2m_dma_t(solo_dev, 0, solo_pcm->g723_dma,
solo_dev          256 drivers/media/pci/solo6x10/solo6x10-g723.c 				     SOLO_G723_EXT_ADDR(solo_dev) +
solo_dev          298 drivers/media/pci/solo6x10/solo6x10-g723.c 	struct solo_dev *solo_dev = snd_kcontrol_chip(kcontrol);
solo_dev          301 drivers/media/pci/solo6x10/solo6x10-g723.c 	value->value.integer.value[0] = tw28_get_audio_gain(solo_dev, ch);
solo_dev          309 drivers/media/pci/solo6x10/solo6x10-g723.c 	struct solo_dev *solo_dev = snd_kcontrol_chip(kcontrol);
solo_dev          313 drivers/media/pci/solo6x10/solo6x10-g723.c 	old_val = tw28_get_audio_gain(solo_dev, ch);
solo_dev          317 drivers/media/pci/solo6x10/solo6x10-g723.c 	tw28_set_audio_gain(solo_dev, ch, value->value.integer.value[0]);
solo_dev          330 drivers/media/pci/solo6x10/solo6x10-g723.c static int solo_snd_pcm_init(struct solo_dev *solo_dev)
solo_dev          332 drivers/media/pci/solo6x10/solo6x10-g723.c 	struct snd_card *card = solo_dev->snd_card;
solo_dev          338 drivers/media/pci/solo6x10/solo6x10-g723.c 	ret = snd_pcm_new(card, card->driver, 0, 0, solo_dev->nr_chans,
solo_dev          346 drivers/media/pci/solo6x10/solo6x10-g723.c 	snd_pcm_chip(pcm) = solo_dev;
solo_dev          360 drivers/media/pci/solo6x10/solo6x10-g723.c 	solo_dev->snd_pcm = pcm;
solo_dev          365 drivers/media/pci/solo6x10/solo6x10-g723.c int solo_g723_init(struct solo_dev *solo_dev)
solo_dev          373 drivers/media/pci/solo6x10/solo6x10-g723.c 	atomic_set(&solo_dev->snd_users, 0);
solo_dev          376 drivers/media/pci/solo6x10/solo6x10-g723.c 	sprintf(name, "Softlogic%d", solo_dev->vfd->num);
solo_dev          378 drivers/media/pci/solo6x10/solo6x10-g723.c 	ret = snd_card_new(&solo_dev->pdev->dev,
solo_dev          380 drivers/media/pci/solo6x10/solo6x10-g723.c 			   &solo_dev->snd_card);
solo_dev          384 drivers/media/pci/solo6x10/solo6x10-g723.c 	card = solo_dev->snd_card;
solo_dev          389 drivers/media/pci/solo6x10/solo6x10-g723.c 		pci_name(solo_dev->pdev), solo_dev->pdev->irq);
solo_dev          391 drivers/media/pci/solo6x10/solo6x10-g723.c 	ret = snd_device_new(card, SNDRV_DEV_LOWLEVEL, solo_dev, &ops);
solo_dev          398 drivers/media/pci/solo6x10/solo6x10-g723.c 	kctl.count = solo_dev->nr_chans;
solo_dev          400 drivers/media/pci/solo6x10/solo6x10-g723.c 	ret = snd_ctl_add(card, snd_ctl_new1(&kctl, solo_dev));
solo_dev          404 drivers/media/pci/solo6x10/solo6x10-g723.c 	ret = solo_snd_pcm_init(solo_dev);
solo_dev          412 drivers/media/pci/solo6x10/solo6x10-g723.c 	solo_g723_config(solo_dev);
solo_dev          414 drivers/media/pci/solo6x10/solo6x10-g723.c 	dev_info(&solo_dev->pdev->dev, "Alsa sound card as %s\n", name);
solo_dev          423 drivers/media/pci/solo6x10/solo6x10-g723.c void solo_g723_exit(struct solo_dev *solo_dev)
solo_dev          425 drivers/media/pci/solo6x10/solo6x10-g723.c 	if (!solo_dev->snd_card)
solo_dev          428 drivers/media/pci/solo6x10/solo6x10-g723.c 	solo_reg_write(solo_dev, SOLO_AUDIO_CONTROL, 0);
solo_dev          429 drivers/media/pci/solo6x10/solo6x10-g723.c 	solo_irq_off(solo_dev, SOLO_IRQ_G723);
solo_dev          431 drivers/media/pci/solo6x10/solo6x10-g723.c 	snd_card_free(solo_dev->snd_card);
solo_dev          432 drivers/media/pci/solo6x10/solo6x10-g723.c 	solo_dev->snd_card = NULL;
solo_dev           19 drivers/media/pci/solo6x10/solo6x10-gpio.c static void solo_gpio_mode(struct solo_dev *solo_dev,
solo_dev           25 drivers/media/pci/solo6x10/solo6x10-gpio.c 	ret = solo_reg_read(solo_dev, SOLO_GPIO_CONFIG_0);
solo_dev           36 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_reg_write(solo_dev, SOLO_GPIO_CONFIG_0, ret);
solo_dev           39 drivers/media/pci/solo6x10/solo6x10-gpio.c 	ret = solo_reg_read(solo_dev, SOLO_GPIO_CONFIG_1);
solo_dev           54 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_reg_write(solo_dev, SOLO_GPIO_CONFIG_1, ret);
solo_dev           57 drivers/media/pci/solo6x10/solo6x10-gpio.c static void solo_gpio_set(struct solo_dev *solo_dev, unsigned int value)
solo_dev           59 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_reg_write(solo_dev, SOLO_GPIO_DATA_OUT,
solo_dev           60 drivers/media/pci/solo6x10/solo6x10-gpio.c 		       solo_reg_read(solo_dev, SOLO_GPIO_DATA_OUT) | value);
solo_dev           63 drivers/media/pci/solo6x10/solo6x10-gpio.c static void solo_gpio_clear(struct solo_dev *solo_dev, unsigned int value)
solo_dev           65 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_reg_write(solo_dev, SOLO_GPIO_DATA_OUT,
solo_dev           66 drivers/media/pci/solo6x10/solo6x10-gpio.c 		       solo_reg_read(solo_dev, SOLO_GPIO_DATA_OUT) & ~value);
solo_dev           69 drivers/media/pci/solo6x10/solo6x10-gpio.c static void solo_gpio_config(struct solo_dev *solo_dev)
solo_dev           72 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_gpio_mode(solo_dev, 0x30, 1);
solo_dev           73 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_gpio_clear(solo_dev, 0x30);
solo_dev           75 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_gpio_set(solo_dev, 0x30);
solo_dev           80 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_gpio_mode(solo_dev, 0x0f, 2);
solo_dev           83 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_gpio_mode(solo_dev, 0xff00, 1);
solo_dev           86 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_gpio_clear(solo_dev, 0xff00);
solo_dev           89 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_gpio_mode(solo_dev, 0xffff0000, 0);
solo_dev          101 drivers/media/pci/solo6x10/solo6x10-gpio.c 	struct solo_dev *solo_dev = gpiochip_get_data(chip);
solo_dev          104 drivers/media/pci/solo6x10/solo6x10-gpio.c 		ret = solo_reg_read(solo_dev, SOLO_GPIO_CONFIG_0);
solo_dev          107 drivers/media/pci/solo6x10/solo6x10-gpio.c 		ret = solo_reg_read(solo_dev, SOLO_GPIO_CONFIG_1);
solo_dev          135 drivers/media/pci/solo6x10/solo6x10-gpio.c 	struct solo_dev *solo_dev = gpiochip_get_data(chip);
solo_dev          137 drivers/media/pci/solo6x10/solo6x10-gpio.c 	ret = solo_reg_read(solo_dev, SOLO_GPIO_DATA_IN);
solo_dev          145 drivers/media/pci/solo6x10/solo6x10-gpio.c 	struct solo_dev *solo_dev = gpiochip_get_data(chip);
solo_dev          148 drivers/media/pci/solo6x10/solo6x10-gpio.c 		solo_gpio_set(solo_dev, 1 << (offset + 8));
solo_dev          150 drivers/media/pci/solo6x10/solo6x10-gpio.c 		solo_gpio_clear(solo_dev, 1 << (offset + 8));
solo_dev          154 drivers/media/pci/solo6x10/solo6x10-gpio.c int solo_gpio_init(struct solo_dev *solo_dev)
solo_dev          160 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_gpio_config(solo_dev);
solo_dev          162 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.label = SOLO6X10_NAME"_gpio";
solo_dev          163 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.parent = &solo_dev->pdev->dev;
solo_dev          164 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.owner = THIS_MODULE;
solo_dev          165 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.base = -1;
solo_dev          166 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.ngpio = 24;
solo_dev          167 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.can_sleep = 0;
solo_dev          169 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.get_direction = solo_gpiochip_get_direction;
solo_dev          170 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.direction_input = solo_gpiochip_direction_input;
solo_dev          171 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.direction_output = solo_gpiochip_direction_output;
solo_dev          172 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.get = solo_gpiochip_get;
solo_dev          173 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_dev->gpio_dev.set = solo_gpiochip_set;
solo_dev          175 drivers/media/pci/solo6x10/solo6x10-gpio.c 	ret = gpiochip_add_data(&solo_dev->gpio_dev, solo_dev);
solo_dev          178 drivers/media/pci/solo6x10/solo6x10-gpio.c 		solo_dev->gpio_dev.label = NULL;
solo_dev          185 drivers/media/pci/solo6x10/solo6x10-gpio.c void solo_gpio_exit(struct solo_dev *solo_dev)
solo_dev          188 drivers/media/pci/solo6x10/solo6x10-gpio.c 	if (solo_dev->gpio_dev.label) {
solo_dev          189 drivers/media/pci/solo6x10/solo6x10-gpio.c 		gpiochip_remove(&solo_dev->gpio_dev);
solo_dev          190 drivers/media/pci/solo6x10/solo6x10-gpio.c 		solo_dev->gpio_dev.label = NULL;
solo_dev          193 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_gpio_clear(solo_dev, 0x30);
solo_dev          194 drivers/media/pci/solo6x10/solo6x10-gpio.c 	solo_gpio_config(solo_dev);
solo_dev           25 drivers/media/pci/solo6x10/solo6x10-i2c.c u8 solo_i2c_readbyte(struct solo_dev *solo_dev, int id, u8 addr, u8 off)
solo_dev           40 drivers/media/pci/solo6x10/solo6x10-i2c.c 	i2c_transfer(&solo_dev->i2c_adap[id], msgs, 2);
solo_dev           45 drivers/media/pci/solo6x10/solo6x10-i2c.c void solo_i2c_writebyte(struct solo_dev *solo_dev, int id, u8 addr,
solo_dev           58 drivers/media/pci/solo6x10/solo6x10-i2c.c 	i2c_transfer(&solo_dev->i2c_adap[id], &msgs, 1);
solo_dev           61 drivers/media/pci/solo6x10/solo6x10-i2c.c static void solo_i2c_flush(struct solo_dev *solo_dev, int wr)
solo_dev           65 drivers/media/pci/solo6x10/solo6x10-i2c.c 	ctrl = SOLO_IIC_CH_SET(solo_dev->i2c_id);
solo_dev           67 drivers/media/pci/solo6x10/solo6x10-i2c.c 	if (solo_dev->i2c_state == IIC_STATE_START)
solo_dev           74 drivers/media/pci/solo6x10/solo6x10-i2c.c 		if (!(solo_dev->i2c_msg->flags & I2C_M_NO_RD_ACK))
solo_dev           78 drivers/media/pci/solo6x10/solo6x10-i2c.c 	if (solo_dev->i2c_msg_ptr == solo_dev->i2c_msg->len)
solo_dev           81 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_reg_write(solo_dev, SOLO_IIC_CTRL, ctrl);
solo_dev           84 drivers/media/pci/solo6x10/solo6x10-i2c.c static void solo_i2c_start(struct solo_dev *solo_dev)
solo_dev           86 drivers/media/pci/solo6x10/solo6x10-i2c.c 	u32 addr = solo_dev->i2c_msg->addr << 1;
solo_dev           88 drivers/media/pci/solo6x10/solo6x10-i2c.c 	if (solo_dev->i2c_msg->flags & I2C_M_RD)
solo_dev           91 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_state = IIC_STATE_START;
solo_dev           92 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_reg_write(solo_dev, SOLO_IIC_TXD, addr);
solo_dev           93 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_i2c_flush(solo_dev, 1);
solo_dev           96 drivers/media/pci/solo6x10/solo6x10-i2c.c static void solo_i2c_stop(struct solo_dev *solo_dev)
solo_dev           98 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_irq_off(solo_dev, SOLO_IRQ_IIC);
solo_dev           99 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_reg_write(solo_dev, SOLO_IIC_CTRL, 0);
solo_dev          100 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_state = IIC_STATE_STOP;
solo_dev          101 drivers/media/pci/solo6x10/solo6x10-i2c.c 	wake_up(&solo_dev->i2c_wait);
solo_dev          104 drivers/media/pci/solo6x10/solo6x10-i2c.c static int solo_i2c_handle_read(struct solo_dev *solo_dev)
solo_dev          107 drivers/media/pci/solo6x10/solo6x10-i2c.c 	if (solo_dev->i2c_msg_ptr != solo_dev->i2c_msg->len) {
solo_dev          108 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_i2c_flush(solo_dev, 0);
solo_dev          112 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_msg_ptr = 0;
solo_dev          113 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_msg++;
solo_dev          114 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_msg_num--;
solo_dev          116 drivers/media/pci/solo6x10/solo6x10-i2c.c 	if (solo_dev->i2c_msg_num == 0) {
solo_dev          117 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_i2c_stop(solo_dev);
solo_dev          121 drivers/media/pci/solo6x10/solo6x10-i2c.c 	if (!(solo_dev->i2c_msg->flags & I2C_M_NOSTART)) {
solo_dev          122 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_i2c_start(solo_dev);
solo_dev          124 drivers/media/pci/solo6x10/solo6x10-i2c.c 		if (solo_dev->i2c_msg->flags & I2C_M_RD)
solo_dev          127 drivers/media/pci/solo6x10/solo6x10-i2c.c 			solo_i2c_stop(solo_dev);
solo_dev          133 drivers/media/pci/solo6x10/solo6x10-i2c.c static int solo_i2c_handle_write(struct solo_dev *solo_dev)
solo_dev          136 drivers/media/pci/solo6x10/solo6x10-i2c.c 	if (solo_dev->i2c_msg_ptr != solo_dev->i2c_msg->len) {
solo_dev          137 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_reg_write(solo_dev, SOLO_IIC_TXD,
solo_dev          138 drivers/media/pci/solo6x10/solo6x10-i2c.c 			       solo_dev->i2c_msg->buf[solo_dev->i2c_msg_ptr]);
solo_dev          139 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_dev->i2c_msg_ptr++;
solo_dev          140 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_i2c_flush(solo_dev, 1);
solo_dev          144 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_msg_ptr = 0;
solo_dev          145 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_msg++;
solo_dev          146 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_msg_num--;
solo_dev          148 drivers/media/pci/solo6x10/solo6x10-i2c.c 	if (solo_dev->i2c_msg_num == 0) {
solo_dev          149 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_i2c_stop(solo_dev);
solo_dev          153 drivers/media/pci/solo6x10/solo6x10-i2c.c 	if (!(solo_dev->i2c_msg->flags & I2C_M_NOSTART)) {
solo_dev          154 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_i2c_start(solo_dev);
solo_dev          156 drivers/media/pci/solo6x10/solo6x10-i2c.c 		if (solo_dev->i2c_msg->flags & I2C_M_RD)
solo_dev          157 drivers/media/pci/solo6x10/solo6x10-i2c.c 			solo_i2c_stop(solo_dev);
solo_dev          165 drivers/media/pci/solo6x10/solo6x10-i2c.c int solo_i2c_isr(struct solo_dev *solo_dev)
solo_dev          167 drivers/media/pci/solo6x10/solo6x10-i2c.c 	u32 status = solo_reg_read(solo_dev, SOLO_IIC_CTRL);
solo_dev          172 drivers/media/pci/solo6x10/solo6x10-i2c.c 	    || solo_dev->i2c_id < 0) {
solo_dev          173 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_i2c_stop(solo_dev);
solo_dev          177 drivers/media/pci/solo6x10/solo6x10-i2c.c 	switch (solo_dev->i2c_state) {
solo_dev          179 drivers/media/pci/solo6x10/solo6x10-i2c.c 		if (solo_dev->i2c_msg->flags & I2C_M_RD) {
solo_dev          180 drivers/media/pci/solo6x10/solo6x10-i2c.c 			solo_dev->i2c_state = IIC_STATE_READ;
solo_dev          181 drivers/media/pci/solo6x10/solo6x10-i2c.c 			ret = solo_i2c_handle_read(solo_dev);
solo_dev          185 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_dev->i2c_state = IIC_STATE_WRITE;
solo_dev          188 drivers/media/pci/solo6x10/solo6x10-i2c.c 		ret = solo_i2c_handle_write(solo_dev);
solo_dev          192 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_dev->i2c_msg->buf[solo_dev->i2c_msg_ptr] =
solo_dev          193 drivers/media/pci/solo6x10/solo6x10-i2c.c 			solo_reg_read(solo_dev, SOLO_IIC_RXD);
solo_dev          194 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_dev->i2c_msg_ptr++;
solo_dev          196 drivers/media/pci/solo6x10/solo6x10-i2c.c 		ret = solo_i2c_handle_read(solo_dev);
solo_dev          200 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_i2c_stop(solo_dev);
solo_dev          209 drivers/media/pci/solo6x10/solo6x10-i2c.c 	struct solo_dev *solo_dev = adap->algo_data;
solo_dev          216 drivers/media/pci/solo6x10/solo6x10-i2c.c 		if (&solo_dev->i2c_adap[i] == adap)
solo_dev          223 drivers/media/pci/solo6x10/solo6x10-i2c.c 	mutex_lock(&solo_dev->i2c_mutex);
solo_dev          224 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_id = i;
solo_dev          225 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_msg = msgs;
solo_dev          226 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_msg_num = num;
solo_dev          227 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_msg_ptr = 0;
solo_dev          229 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_reg_write(solo_dev, SOLO_IIC_CTRL, 0);
solo_dev          230 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_irq_on(solo_dev, SOLO_IRQ_IIC);
solo_dev          231 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_i2c_start(solo_dev);
solo_dev          236 drivers/media/pci/solo6x10/solo6x10-i2c.c 		prepare_to_wait(&solo_dev->i2c_wait, &wait,
solo_dev          239 drivers/media/pci/solo6x10/solo6x10-i2c.c 		if (solo_dev->i2c_state == IIC_STATE_STOP)
solo_dev          250 drivers/media/pci/solo6x10/solo6x10-i2c.c 	finish_wait(&solo_dev->i2c_wait, &wait);
solo_dev          251 drivers/media/pci/solo6x10/solo6x10-i2c.c 	ret = num - solo_dev->i2c_msg_num;
solo_dev          252 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_state = IIC_STATE_IDLE;
solo_dev          253 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_id = -1;
solo_dev          255 drivers/media/pci/solo6x10/solo6x10-i2c.c 	mutex_unlock(&solo_dev->i2c_mutex);
solo_dev          270 drivers/media/pci/solo6x10/solo6x10-i2c.c int solo_i2c_init(struct solo_dev *solo_dev)
solo_dev          275 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_reg_write(solo_dev, SOLO_IIC_CFG,
solo_dev          278 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_id = -1;
solo_dev          279 drivers/media/pci/solo6x10/solo6x10-i2c.c 	solo_dev->i2c_state = IIC_STATE_IDLE;
solo_dev          280 drivers/media/pci/solo6x10/solo6x10-i2c.c 	init_waitqueue_head(&solo_dev->i2c_wait);
solo_dev          281 drivers/media/pci/solo6x10/solo6x10-i2c.c 	mutex_init(&solo_dev->i2c_mutex);
solo_dev          284 drivers/media/pci/solo6x10/solo6x10-i2c.c 		struct i2c_adapter *adap = &solo_dev->i2c_adap[i];
solo_dev          289 drivers/media/pci/solo6x10/solo6x10-i2c.c 		adap->algo_data = solo_dev;
solo_dev          291 drivers/media/pci/solo6x10/solo6x10-i2c.c 		adap->dev.parent = &solo_dev->pdev->dev;
solo_dev          302 drivers/media/pci/solo6x10/solo6x10-i2c.c 			if (!solo_dev->i2c_adap[i].algo_data)
solo_dev          304 drivers/media/pci/solo6x10/solo6x10-i2c.c 			i2c_del_adapter(&solo_dev->i2c_adap[i]);
solo_dev          305 drivers/media/pci/solo6x10/solo6x10-i2c.c 			solo_dev->i2c_adap[i].algo_data = NULL;
solo_dev          313 drivers/media/pci/solo6x10/solo6x10-i2c.c void solo_i2c_exit(struct solo_dev *solo_dev)
solo_dev          318 drivers/media/pci/solo6x10/solo6x10-i2c.c 		if (!solo_dev->i2c_adap[i].algo_data)
solo_dev          320 drivers/media/pci/solo6x10/solo6x10-i2c.c 		i2c_del_adapter(&solo_dev->i2c_adap[i]);
solo_dev          321 drivers/media/pci/solo6x10/solo6x10-i2c.c 		solo_dev->i2c_adap[i].algo_data = NULL;
solo_dev           28 drivers/media/pci/solo6x10/solo6x10-p2m.c int solo_p2m_dma(struct solo_dev *solo_dev, int wr,
solo_dev           40 drivers/media/pci/solo6x10/solo6x10-p2m.c 	dma_addr = pci_map_single(solo_dev->pdev, sys_addr, size,
solo_dev           42 drivers/media/pci/solo6x10/solo6x10-p2m.c 	if (pci_dma_mapping_error(solo_dev->pdev, dma_addr))
solo_dev           45 drivers/media/pci/solo6x10/solo6x10-p2m.c 	ret = solo_p2m_dma_t(solo_dev, wr, dma_addr, ext_addr, size,
solo_dev           48 drivers/media/pci/solo6x10/solo6x10-p2m.c 	pci_unmap_single(solo_dev->pdev, dma_addr, size,
solo_dev           55 drivers/media/pci/solo6x10/solo6x10-p2m.c int solo_p2m_dma_desc(struct solo_dev *solo_dev,
solo_dev           66 drivers/media/pci/solo6x10/solo6x10-p2m.c 	if (solo_dev->type != SOLO_DEV_6110 && multi_p2m)
solo_dev           67 drivers/media/pci/solo6x10/solo6x10-p2m.c 		p2m_id = atomic_inc_return(&solo_dev->p2m_count) % SOLO_NR_P2M;
solo_dev           69 drivers/media/pci/solo6x10/solo6x10-p2m.c 	p2m_dev = &solo_dev->p2m_dev[p2m_id];
solo_dev           77 drivers/media/pci/solo6x10/solo6x10-p2m.c 	if (desc_cnt > 1 && solo_dev->type != SOLO_DEV_6110 && desc_mode) {
solo_dev           80 drivers/media/pci/solo6x10/solo6x10-p2m.c 		config = solo_reg_read(solo_dev, SOLO_P2M_CONFIG(p2m_id));
solo_dev           82 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_DES_ADR(p2m_id), desc_dma);
solo_dev           83 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_DESC_ID(p2m_id), desc_cnt);
solo_dev           84 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_CONFIG(p2m_id), config |
solo_dev           92 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_TAR_ADR(p2m_id),
solo_dev           94 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_EXT_ADR(p2m_id),
solo_dev           96 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_EXT_CFG(p2m_id),
solo_dev           98 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_CONTROL(p2m_id),
solo_dev          103 drivers/media/pci/solo6x10/solo6x10-p2m.c 					      solo_dev->p2m_jiffies);
solo_dev          108 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_dev->p2m_timeouts++;
solo_dev          112 drivers/media/pci/solo6x10/solo6x10-p2m.c 	solo_reg_write(solo_dev, SOLO_P2M_CONTROL(p2m_id), 0);
solo_dev          116 drivers/media/pci/solo6x10/solo6x10-p2m.c 	if (desc_cnt > 1 && solo_dev->type != SOLO_DEV_6110 && config)
solo_dev          117 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_CONFIG(p2m_id), config);
solo_dev          145 drivers/media/pci/solo6x10/solo6x10-p2m.c int solo_p2m_dma_t(struct solo_dev *solo_dev, int wr,
solo_dev          155 drivers/media/pci/solo6x10/solo6x10-p2m.c 	return solo_p2m_dma_desc(solo_dev, desc, 0, 1);
solo_dev          158 drivers/media/pci/solo6x10/solo6x10-p2m.c void solo_p2m_isr(struct solo_dev *solo_dev, int id)
solo_dev          160 drivers/media/pci/solo6x10/solo6x10-p2m.c 	struct solo_p2m_dev *p2m_dev = &solo_dev->p2m_dev[id];
solo_dev          172 drivers/media/pci/solo6x10/solo6x10-p2m.c 	solo_reg_write(solo_dev, SOLO_P2M_CONTROL(id), 0);
solo_dev          173 drivers/media/pci/solo6x10/solo6x10-p2m.c 	solo_reg_write(solo_dev, SOLO_P2M_TAR_ADR(id), desc->dma_addr);
solo_dev          174 drivers/media/pci/solo6x10/solo6x10-p2m.c 	solo_reg_write(solo_dev, SOLO_P2M_EXT_ADR(id), desc->ext_addr);
solo_dev          175 drivers/media/pci/solo6x10/solo6x10-p2m.c 	solo_reg_write(solo_dev, SOLO_P2M_EXT_CFG(id), desc->cfg);
solo_dev          176 drivers/media/pci/solo6x10/solo6x10-p2m.c 	solo_reg_write(solo_dev, SOLO_P2M_CONTROL(id), desc->ctrl);
solo_dev          179 drivers/media/pci/solo6x10/solo6x10-p2m.c void solo_p2m_error_isr(struct solo_dev *solo_dev)
solo_dev          181 drivers/media/pci/solo6x10/solo6x10-p2m.c 	unsigned int err = solo_reg_read(solo_dev, SOLO_PCI_ERR);
solo_dev          189 drivers/media/pci/solo6x10/solo6x10-p2m.c 		p2m_dev = &solo_dev->p2m_dev[i];
solo_dev          191 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_CONTROL(i), 0);
solo_dev          196 drivers/media/pci/solo6x10/solo6x10-p2m.c void solo_p2m_exit(struct solo_dev *solo_dev)
solo_dev          201 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_irq_off(solo_dev, SOLO_IRQ_P2M(i));
solo_dev          204 drivers/media/pci/solo6x10/solo6x10-p2m.c static int solo_p2m_test(struct solo_dev *solo_dev, int base, int size)
solo_dev          230 drivers/media/pci/solo6x10/solo6x10-p2m.c 	if (solo_p2m_dma(solo_dev, 1, wr_buf, base, size, 0, 0))
solo_dev          233 drivers/media/pci/solo6x10/solo6x10-p2m.c 	if (solo_p2m_dma(solo_dev, 0, rd_buf, base, size, 0, 0))
solo_dev          250 drivers/media/pci/solo6x10/solo6x10-p2m.c int solo_p2m_init(struct solo_dev *solo_dev)
solo_dev          256 drivers/media/pci/solo6x10/solo6x10-p2m.c 		p2m_dev = &solo_dev->p2m_dev[i];
solo_dev          261 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_CONTROL(i), 0);
solo_dev          262 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_P2M_CONFIG(i),
solo_dev          267 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_irq_on(solo_dev, SOLO_IRQ_P2M(i));
solo_dev          271 drivers/media/pci/solo6x10/solo6x10-p2m.c 	for (solo_dev->sdram_size = 0, i = 2; i >= 0; i--) {
solo_dev          272 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_DMA_CTRL,
solo_dev          279 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_SYS_CFG, solo_dev->sys_config |
solo_dev          281 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_reg_write(solo_dev, SOLO_SYS_CFG, solo_dev->sys_config);
solo_dev          285 drivers/media/pci/solo6x10/solo6x10-p2m.c 			if (solo_p2m_test(solo_dev, 0x07ff0000, 0x00010000) ||
solo_dev          286 drivers/media/pci/solo6x10/solo6x10-p2m.c 			    solo_p2m_test(solo_dev, 0x05ff0000, 0x00010000))
solo_dev          291 drivers/media/pci/solo6x10/solo6x10-p2m.c 			if (solo_p2m_test(solo_dev, 0x03ff0000, 0x00010000))
solo_dev          296 drivers/media/pci/solo6x10/solo6x10-p2m.c 			if (solo_p2m_test(solo_dev, 0x01ff0000, 0x00010000))
solo_dev          300 drivers/media/pci/solo6x10/solo6x10-p2m.c 		solo_dev->sdram_size = (32 << 20) << i;
solo_dev          304 drivers/media/pci/solo6x10/solo6x10-p2m.c 	if (!solo_dev->sdram_size) {
solo_dev          305 drivers/media/pci/solo6x10/solo6x10-p2m.c 		dev_err(&solo_dev->pdev->dev, "Error detecting SDRAM size\n");
solo_dev          309 drivers/media/pci/solo6x10/solo6x10-p2m.c 	if (SOLO_SDRAM_END(solo_dev) > solo_dev->sdram_size) {
solo_dev          310 drivers/media/pci/solo6x10/solo6x10-p2m.c 		dev_err(&solo_dev->pdev->dev,
solo_dev          312 drivers/media/pci/solo6x10/solo6x10-p2m.c 			solo_dev->sdram_size, SOLO_SDRAM_END(solo_dev));
solo_dev          171 drivers/media/pci/solo6x10/solo6x10-tw28.c static u8 tw_readbyte(struct solo_dev *solo_dev, int chip_id, u8 tw6x_off,
solo_dev          174 drivers/media/pci/solo6x10/solo6x10-tw28.c 	if (is_tw286x(solo_dev, chip_id))
solo_dev          175 drivers/media/pci/solo6x10/solo6x10-tw28.c 		return solo_i2c_readbyte(solo_dev, SOLO_I2C_TW,
solo_dev          179 drivers/media/pci/solo6x10/solo6x10-tw28.c 		return solo_i2c_readbyte(solo_dev, SOLO_I2C_TW,
solo_dev          184 drivers/media/pci/solo6x10/solo6x10-tw28.c static void tw_writebyte(struct solo_dev *solo_dev, int chip_id,
solo_dev          187 drivers/media/pci/solo6x10/solo6x10-tw28.c 	if (is_tw286x(solo_dev, chip_id))
solo_dev          188 drivers/media/pci/solo6x10/solo6x10-tw28.c 		solo_i2c_writebyte(solo_dev, SOLO_I2C_TW,
solo_dev          192 drivers/media/pci/solo6x10/solo6x10-tw28.c 		solo_i2c_writebyte(solo_dev, SOLO_I2C_TW,
solo_dev          197 drivers/media/pci/solo6x10/solo6x10-tw28.c static void tw_write_and_verify(struct solo_dev *solo_dev, u8 addr, u8 off,
solo_dev          203 drivers/media/pci/solo6x10/solo6x10-tw28.c 		u8 rval = solo_i2c_readbyte(solo_dev, SOLO_I2C_TW, addr, off);
solo_dev          208 drivers/media/pci/solo6x10/solo6x10-tw28.c 		solo_i2c_writebyte(solo_dev, SOLO_I2C_TW, addr, off, val);
solo_dev          216 drivers/media/pci/solo6x10/solo6x10-tw28.c static int tw2865_setup(struct solo_dev *solo_dev, u8 dev_addr)
solo_dev          221 drivers/media/pci/solo6x10/solo6x10-tw28.c 	if (solo_dev->video_type == SOLO_VO_FMT_TYPE_PAL)
solo_dev          229 drivers/media/pci/solo6x10/solo6x10-tw28.c 	if (solo_dev->nr_chans == 4) {
solo_dev          232 drivers/media/pci/solo6x10/solo6x10-tw28.c 	} else if (solo_dev->nr_chans == 8) {
solo_dev          236 drivers/media/pci/solo6x10/solo6x10-tw28.c 	} else if (solo_dev->nr_chans == 16) {
solo_dev          260 drivers/media/pci/solo6x10/solo6x10-tw28.c 		tw_write_and_verify(solo_dev, dev_addr, i,
solo_dev          267 drivers/media/pci/solo6x10/solo6x10-tw28.c static int tw2864_setup(struct solo_dev *solo_dev, u8 dev_addr)
solo_dev          272 drivers/media/pci/solo6x10/solo6x10-tw28.c 	if (solo_dev->video_type == SOLO_VO_FMT_TYPE_PAL)
solo_dev          279 drivers/media/pci/solo6x10/solo6x10-tw28.c 	if (solo_dev->tw2865 == 0) {
solo_dev          281 drivers/media/pci/solo6x10/solo6x10-tw28.c 		if (solo_dev->nr_chans == 4) {
solo_dev          284 drivers/media/pci/solo6x10/solo6x10-tw28.c 		} else if (solo_dev->nr_chans == 8) {
solo_dev          290 drivers/media/pci/solo6x10/solo6x10-tw28.c 		} else if (solo_dev->nr_chans == 16) {
solo_dev          307 drivers/media/pci/solo6x10/solo6x10-tw28.c 		if (solo_dev->nr_chans == 8) {
solo_dev          311 drivers/media/pci/solo6x10/solo6x10-tw28.c 		} else if (solo_dev->nr_chans == 16) {
solo_dev          336 drivers/media/pci/solo6x10/solo6x10-tw28.c 		tw_write_and_verify(solo_dev, dev_addr, i,
solo_dev          343 drivers/media/pci/solo6x10/solo6x10-tw28.c static int tw2815_setup(struct solo_dev *solo_dev, u8 dev_addr)
solo_dev          411 drivers/media/pci/solo6x10/solo6x10-tw28.c 	    (solo_dev->video_type == SOLO_VO_FMT_TYPE_NTSC) ?
solo_dev          420 drivers/media/pci/solo6x10/solo6x10-tw28.c 	if (solo_dev->nr_chans == 4) {
solo_dev          423 drivers/media/pci/solo6x10/solo6x10-tw28.c 	} else if (solo_dev->nr_chans == 8) {
solo_dev          429 drivers/media/pci/solo6x10/solo6x10-tw28.c 	} else if (solo_dev->nr_chans == 16) {
solo_dev          482 drivers/media/pci/solo6x10/solo6x10-tw28.c 			solo_i2c_writebyte(solo_dev, SOLO_I2C_TW,
solo_dev          494 drivers/media/pci/solo6x10/solo6x10-tw28.c 		solo_i2c_writebyte(solo_dev, SOLO_I2C_TW, dev_addr, i,
solo_dev          504 drivers/media/pci/solo6x10/solo6x10-tw28.c static void saa712x_write_regs(struct solo_dev *dev, const u8 *vals,
solo_dev          523 drivers/media/pci/solo6x10/solo6x10-tw28.c static void saa712x_setup(struct solo_dev *dev)
solo_dev          582 drivers/media/pci/solo6x10/solo6x10-tw28.c int solo_tw28_init(struct solo_dev *solo_dev)
solo_dev          587 drivers/media/pci/solo6x10/solo6x10-tw28.c 	solo_dev->tw28_cnt = 0;
solo_dev          590 drivers/media/pci/solo6x10/solo6x10-tw28.c 	for (i = 0; i < solo_dev->nr_chans / 4; i++) {
solo_dev          591 drivers/media/pci/solo6x10/solo6x10-tw28.c 		value = solo_i2c_readbyte(solo_dev, SOLO_I2C_TW,
solo_dev          596 drivers/media/pci/solo6x10/solo6x10-tw28.c 			solo_dev->tw2865 |= 1 << i;
solo_dev          597 drivers/media/pci/solo6x10/solo6x10-tw28.c 			solo_dev->tw28_cnt++;
solo_dev          601 drivers/media/pci/solo6x10/solo6x10-tw28.c 			solo_dev->tw2864 |= 1 << i;
solo_dev          602 drivers/media/pci/solo6x10/solo6x10-tw28.c 			solo_dev->tw28_cnt++;
solo_dev          605 drivers/media/pci/solo6x10/solo6x10-tw28.c 			value = solo_i2c_readbyte(solo_dev, SOLO_I2C_TW,
solo_dev          609 drivers/media/pci/solo6x10/solo6x10-tw28.c 				solo_dev->tw2815 |= 1 << i;
solo_dev          610 drivers/media/pci/solo6x10/solo6x10-tw28.c 				solo_dev->tw28_cnt++;
solo_dev          615 drivers/media/pci/solo6x10/solo6x10-tw28.c 	if (solo_dev->tw28_cnt != (solo_dev->nr_chans >> 2)) {
solo_dev          616 drivers/media/pci/solo6x10/solo6x10-tw28.c 		dev_err(&solo_dev->pdev->dev,
solo_dev          621 drivers/media/pci/solo6x10/solo6x10-tw28.c 	saa712x_setup(solo_dev);
solo_dev          623 drivers/media/pci/solo6x10/solo6x10-tw28.c 	for (i = 0; i < solo_dev->tw28_cnt; i++) {
solo_dev          624 drivers/media/pci/solo6x10/solo6x10-tw28.c 		if ((solo_dev->tw2865 & (1 << i)))
solo_dev          625 drivers/media/pci/solo6x10/solo6x10-tw28.c 			tw2865_setup(solo_dev, TW_CHIP_OFFSET_ADDR(i));
solo_dev          626 drivers/media/pci/solo6x10/solo6x10-tw28.c 		else if ((solo_dev->tw2864 & (1 << i)))
solo_dev          627 drivers/media/pci/solo6x10/solo6x10-tw28.c 			tw2864_setup(solo_dev, TW_CHIP_OFFSET_ADDR(i));
solo_dev          629 drivers/media/pci/solo6x10/solo6x10-tw28.c 			tw2815_setup(solo_dev, TW_CHIP_OFFSET_ADDR(i));
solo_dev          641 drivers/media/pci/solo6x10/solo6x10-tw28.c int tw28_get_video_status(struct solo_dev *solo_dev, u8 ch)
solo_dev          649 drivers/media/pci/solo6x10/solo6x10-tw28.c 	val = tw_readbyte(solo_dev, chip_num, TW286x_AV_STAT_ADDR,
solo_dev          658 drivers/media/pci/solo6x10/solo6x10-tw28.c u16 tw28_get_audio_status(struct solo_dev *solo_dev)
solo_dev          664 drivers/media/pci/solo6x10/solo6x10-tw28.c 	for (i = 0; i < solo_dev->tw28_cnt; i++) {
solo_dev          665 drivers/media/pci/solo6x10/solo6x10-tw28.c 		val = (tw_readbyte(solo_dev, i, TW286x_AV_STAT_ADDR,
solo_dev          674 drivers/media/pci/solo6x10/solo6x10-tw28.c bool tw28_has_sharpness(struct solo_dev *solo_dev, u8 ch)
solo_dev          676 drivers/media/pci/solo6x10/solo6x10-tw28.c 	return is_tw286x(solo_dev, ch / 4);
solo_dev          679 drivers/media/pci/solo6x10/solo6x10-tw28.c int tw28_set_ctrl_val(struct solo_dev *solo_dev, u32 ctrl, u8 ch,
solo_dev          695 drivers/media/pci/solo6x10/solo6x10-tw28.c 		if (is_tw286x(solo_dev, chip_num)) {
solo_dev          696 drivers/media/pci/solo6x10/solo6x10-tw28.c 			u8 v = solo_i2c_readbyte(solo_dev, SOLO_I2C_TW,
solo_dev          701 drivers/media/pci/solo6x10/solo6x10-tw28.c 			solo_i2c_writebyte(solo_dev, SOLO_I2C_TW,
solo_dev          710 drivers/media/pci/solo6x10/solo6x10-tw28.c 		if (is_tw286x(solo_dev, chip_num))
solo_dev          714 drivers/media/pci/solo6x10/solo6x10-tw28.c 		tw_writebyte(solo_dev, chip_num, TW286x_HUE_ADDR(ch),
solo_dev          721 drivers/media/pci/solo6x10/solo6x10-tw28.c 		if (is_tw286x(solo_dev, chip_num)) {
solo_dev          722 drivers/media/pci/solo6x10/solo6x10-tw28.c 			solo_i2c_writebyte(solo_dev, SOLO_I2C_TW,
solo_dev          726 drivers/media/pci/solo6x10/solo6x10-tw28.c 		tw_writebyte(solo_dev, chip_num, TW286x_SATURATIONV_ADDR(ch),
solo_dev          732 drivers/media/pci/solo6x10/solo6x10-tw28.c 		tw_writebyte(solo_dev, chip_num, TW286x_CONTRAST_ADDR(ch),
solo_dev          737 drivers/media/pci/solo6x10/solo6x10-tw28.c 		if (is_tw286x(solo_dev, chip_num))
solo_dev          741 drivers/media/pci/solo6x10/solo6x10-tw28.c 		tw_writebyte(solo_dev, chip_num, TW286x_BRIGHTNESS_ADDR(ch),
solo_dev          752 drivers/media/pci/solo6x10/solo6x10-tw28.c int tw28_get_ctrl_val(struct solo_dev *solo_dev, u32 ctrl, u8 ch,
solo_dev          764 drivers/media/pci/solo6x10/solo6x10-tw28.c 		if (is_tw286x(solo_dev, chip_num)) {
solo_dev          765 drivers/media/pci/solo6x10/solo6x10-tw28.c 			rval = solo_i2c_readbyte(solo_dev, SOLO_I2C_TW,
solo_dev          773 drivers/media/pci/solo6x10/solo6x10-tw28.c 		rval = tw_readbyte(solo_dev, chip_num, TW286x_HUE_ADDR(ch),
solo_dev          775 drivers/media/pci/solo6x10/solo6x10-tw28.c 		if (is_tw286x(solo_dev, chip_num))
solo_dev          781 drivers/media/pci/solo6x10/solo6x10-tw28.c 		*val = tw_readbyte(solo_dev, chip_num,
solo_dev          786 drivers/media/pci/solo6x10/solo6x10-tw28.c 		*val = tw_readbyte(solo_dev, chip_num,
solo_dev          791 drivers/media/pci/solo6x10/solo6x10-tw28.c 		rval = tw_readbyte(solo_dev, chip_num,
solo_dev          794 drivers/media/pci/solo6x10/solo6x10-tw28.c 		if (is_tw286x(solo_dev, chip_num))
solo_dev          812 drivers/media/pci/solo6x10/solo6x10-tw28.c void tw2815_Set_AudioOutVol(struct solo_dev *solo_dev, unsigned int u_val)
solo_dev          817 drivers/media/pci/solo6x10/solo6x10-tw28.c 	chip_num = (solo_dev->nr_chans - 1) / 4;
solo_dev          819 drivers/media/pci/solo6x10/solo6x10-tw28.c 	val = tw_readbyte(solo_dev, chip_num, TW286x_AUDIO_OUTPUT_VOL_ADDR,
solo_dev          824 drivers/media/pci/solo6x10/solo6x10-tw28.c 	tw_writebyte(solo_dev, chip_num, TW286x_AUDIO_OUTPUT_VOL_ADDR,
solo_dev          829 drivers/media/pci/solo6x10/solo6x10-tw28.c u8 tw28_get_audio_gain(struct solo_dev *solo_dev, u8 ch)
solo_dev          838 drivers/media/pci/solo6x10/solo6x10-tw28.c 	val = tw_readbyte(solo_dev, chip_num,
solo_dev          845 drivers/media/pci/solo6x10/solo6x10-tw28.c void tw28_set_audio_gain(struct solo_dev *solo_dev, u8 ch, u8 val)
solo_dev          854 drivers/media/pci/solo6x10/solo6x10-tw28.c 	old_val = tw_readbyte(solo_dev, chip_num,
solo_dev          861 drivers/media/pci/solo6x10/solo6x10-tw28.c 	tw_writebyte(solo_dev, chip_num, TW286x_AUDIO_INPUT_GAIN_ADDR(ch),
solo_dev           41 drivers/media/pci/solo6x10/solo6x10-tw28.h int solo_tw28_init(struct solo_dev *solo_dev);
solo_dev           43 drivers/media/pci/solo6x10/solo6x10-tw28.h int tw28_set_ctrl_val(struct solo_dev *solo_dev, u32 ctrl, u8 ch, s32 val);
solo_dev           44 drivers/media/pci/solo6x10/solo6x10-tw28.h int tw28_get_ctrl_val(struct solo_dev *solo_dev, u32 ctrl, u8 ch, s32 *val);
solo_dev           45 drivers/media/pci/solo6x10/solo6x10-tw28.h bool tw28_has_sharpness(struct solo_dev *solo_dev, u8 ch);
solo_dev           47 drivers/media/pci/solo6x10/solo6x10-tw28.h u8 tw28_get_audio_gain(struct solo_dev *solo_dev, u8 ch);
solo_dev           48 drivers/media/pci/solo6x10/solo6x10-tw28.h void tw28_set_audio_gain(struct solo_dev *solo_dev, u8 ch, u8 val);
solo_dev           49 drivers/media/pci/solo6x10/solo6x10-tw28.h int tw28_get_video_status(struct solo_dev *solo_dev, u8 ch);
solo_dev           95 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev           97 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	return (solo_dev->motion_mask >> solo_enc->ch) & 1;
solo_dev          102 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          108 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_reg_read(solo_dev, SOLO_VI_MOT_STATUS) & ch_mask) {
solo_dev          109 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_reg_write(solo_dev, SOLO_VI_MOT_CLEAR, ch_mask);
solo_dev          119 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          126 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_dev->motion_mask |= mask;
solo_dev          128 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_dev->motion_mask &= ~mask;
solo_dev          130 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_VI_MOT_CLEAR, mask);
solo_dev          132 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_VI_MOT_ADR,
solo_dev          133 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		       SOLO_VI_MOTION_EN(solo_dev->motion_mask) |
solo_dev          134 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		       (SOLO_MOTION_EXT_ADDR(solo_dev) >> 16));
solo_dev          141 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          146 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_enc->bw_weight = max(solo_dev->fps / solo_enc->interval, 1);
solo_dev          149 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_enc->width = solo_dev->video_hsize >> 1;
solo_dev          150 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_enc->height = solo_dev->video_vsize;
solo_dev          151 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		if (solo_dev->type == SOLO_DEV_6110) {
solo_dev          152 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			if (solo_dev->video_type == SOLO_VO_FMT_TYPE_NTSC) {
solo_dev          160 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			if (solo_dev->video_type == SOLO_VO_FMT_TYPE_NTSC) {
solo_dev          169 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_enc->width = solo_dev->video_hsize;
solo_dev          170 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_enc->height = solo_dev->video_vsize << 1;
solo_dev          172 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		if (solo_dev->type == SOLO_DEV_6110) {
solo_dev          173 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			if (solo_dev->video_type == SOLO_VO_FMT_TYPE_NTSC) {
solo_dev          181 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			if (solo_dev->video_type == SOLO_VO_FMT_TYPE_NTSC) {
solo_dev          194 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_dev->type == SOLO_DEV_6010) {
solo_dev          195 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		u16 fps = solo_dev->fps * 1000;
solo_dev          218 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	       jpeg_dqt[solo_g_jpeg_qp(solo_dev, solo_enc->ch)], DQT_LEN);
solo_dev          224 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          230 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_enc->bw_weight > solo_dev->enc_bw_remain)
solo_dev          233 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_dev->enc_bw_remain -= solo_enc->bw_weight;
solo_dev          236 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_reg_write(solo_dev, SOLO_CAP_CH_COMP_ENA_E(ch), 1);
solo_dev          239 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_CAP_CH_SCALE(ch), 0);
solo_dev          242 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_VE_CH_INTL(ch),
solo_dev          251 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_VE_CH_GOP(ch), solo_enc->gop);
solo_dev          252 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_VE_CH_QP(ch), solo_enc->qp);
solo_dev          253 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_CAP_CH_INTV(ch), interval);
solo_dev          256 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_VE_CH_GOP_E(ch), solo_enc->gop);
solo_dev          257 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_VE_CH_QP_E(ch), solo_enc->qp);
solo_dev          258 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_CAP_CH_INTV_E(ch), interval);
solo_dev          261 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_CAP_CH_SCALE(ch), solo_enc->mode);
solo_dev          268 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          270 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_dev->enc_bw_remain += solo_enc->bw_weight;
solo_dev          272 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_CAP_CH_SCALE(solo_enc->ch), 0);
solo_dev          273 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_reg_write(solo_dev, SOLO_CAP_CH_COMP_ENA_E(solo_enc->ch), 0);
solo_dev          276 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c static int enc_get_mpeg_dma(struct solo_dev *solo_dev, dma_addr_t dma,
solo_dev          281 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (off > SOLO_MP4E_EXT_SIZE(solo_dev))
solo_dev          285 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (off + size <= SOLO_MP4E_EXT_SIZE(solo_dev)) {
solo_dev          286 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		return solo_p2m_dma_t(solo_dev, 0, dma,
solo_dev          287 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 				      SOLO_MP4E_EXT_ADDR(solo_dev) + off, size,
solo_dev          292 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	ret = solo_p2m_dma_t(solo_dev, 0, dma,
solo_dev          293 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			     SOLO_MP4E_EXT_ADDR(solo_dev) + off,
solo_dev          294 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			     SOLO_MP4E_EXT_SIZE(solo_dev) - off, 0, 0);
solo_dev          297 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		ret = solo_p2m_dma_t(solo_dev, 0,
solo_dev          298 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			     dma + SOLO_MP4E_EXT_SIZE(solo_dev) - off,
solo_dev          299 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			     SOLO_MP4E_EXT_ADDR(solo_dev),
solo_dev          300 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			     size + off - SOLO_MP4E_EXT_SIZE(solo_dev), 0, 0);
solo_dev          312 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          354 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			ret = solo_p2m_dma_t(solo_dev, 0, dma, base + off,
solo_dev          359 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			ret = solo_p2m_dma_t(solo_dev, 0, dma + left, base,
solo_dev          377 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			ret = solo_p2m_dma_desc(solo_dev, solo_enc->desc_items,
solo_dev          389 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	return solo_p2m_dma_desc(solo_dev, solo_enc->desc_items,
solo_dev          453 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          466 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			     vop_jpeg_offset(vh) - SOLO_JPEG_EXT_ADDR(solo_dev),
solo_dev          467 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			     frame_size, SOLO_JPEG_EXT_ADDR(solo_dev),
solo_dev          468 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			     SOLO_JPEG_EXT_SIZE(solo_dev));
solo_dev          475 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          497 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	frame_off = (vop_mpeg_offset(vh) - SOLO_MP4E_EXT_ADDR(solo_dev) +
solo_dev          498 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		sizeof(*vh)) % SOLO_MP4E_EXT_SIZE(solo_dev);
solo_dev          502 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			SOLO_MP4E_EXT_ADDR(solo_dev),
solo_dev          503 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			SOLO_MP4E_EXT_SIZE(solo_dev));
solo_dev          573 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c void solo_enc_v4l2_isr(struct solo_dev *solo_dev)
solo_dev          575 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	wake_up_interruptible_all(&solo_dev->ring_thread_wait);
solo_dev          578 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c static void solo_handle_ring(struct solo_dev *solo_dev)
solo_dev          588 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		cur_q = solo_reg_read(solo_dev, SOLO_VE_STATE(11)) & 0xff;
solo_dev          589 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		if (cur_q == solo_dev->enc_idx)
solo_dev          592 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		mpeg_current = solo_reg_read(solo_dev,
solo_dev          593 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 					SOLO_VE_MPEG4_QUE(solo_dev->enc_idx));
solo_dev          594 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_dev->enc_idx = (solo_dev->enc_idx + 1) % MP4_QS;
solo_dev          605 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_enc = solo_dev->v4l2_enc[ch];
solo_dev          607 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			dev_err(&solo_dev->pdev->dev,
solo_dev          613 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		if (enc_get_mpeg_dma(solo_dev, solo_dev->vh_dma, off,
solo_dev          617 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		enc_buf.vh = solo_dev->vh_buf;
solo_dev          621 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			SOLO_MP4E_EXT_ADDR(solo_dev) + off)
solo_dev          635 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = data;
solo_dev          639 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	add_wait_queue(&solo_dev->ring_thread_wait, &wait);
solo_dev          646 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_handle_ring(solo_dev);
solo_dev          650 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	remove_wait_queue(&solo_dev->ring_thread_wait, &wait);
solo_dev          682 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c static int solo_ring_start(struct solo_dev *solo_dev)
solo_dev          684 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_dev->ring_thread = kthread_run(solo_ring_thread, solo_dev,
solo_dev          686 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (IS_ERR(solo_dev->ring_thread)) {
solo_dev          687 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		int err = PTR_ERR(solo_dev->ring_thread);
solo_dev          689 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_dev->ring_thread = NULL;
solo_dev          693 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_irq_on(solo_dev, SOLO_IRQ_ENCODER);
solo_dev          698 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c static void solo_ring_stop(struct solo_dev *solo_dev)
solo_dev          700 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_dev->ring_thread) {
solo_dev          701 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		kthread_stop(solo_dev->ring_thread);
solo_dev          702 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_dev->ring_thread = NULL;
solo_dev          705 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_irq_off(solo_dev, SOLO_IRQ_ENCODER);
solo_dev          767 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          773 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		 pci_name(solo_dev->pdev));
solo_dev          781 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          791 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (!tw28_get_video_status(solo_dev, solo_enc->ch))
solo_dev          818 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	int dev_type = solo_enc->solo_dev->type;
solo_dev          851 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          854 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_valid_pixfmt(pix->pixelformat, solo_dev->type))
solo_dev          857 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (pix->width < solo_dev->video_hsize ||
solo_dev          858 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	    pix->height < solo_dev->video_vsize << 1) {
solo_dev          860 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		pix->width = solo_dev->video_hsize >> 1;
solo_dev          861 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		pix->height = solo_dev->video_vsize;
solo_dev          864 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		pix->width = solo_dev->video_hsize;
solo_dev          865 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		pix->height = solo_dev->video_vsize << 1;
solo_dev          890 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          901 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (pix->width == solo_dev->video_hsize)
solo_dev          943 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          945 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_dev->video_type == SOLO_VO_FMT_TYPE_NTSC)
solo_dev          956 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	return solo_set_video_type(solo_enc->solo_dev, std & V4L2_STD_625_50);
solo_dev          963 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          965 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_valid_pixfmt(fsize->pixel_format, solo_dev->type))
solo_dev          970 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		fsize->discrete.width = solo_dev->video_hsize >> 1;
solo_dev          971 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		fsize->discrete.height = solo_dev->video_vsize;
solo_dev          974 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		fsize->discrete.width = solo_dev->video_hsize;
solo_dev          975 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		fsize->discrete.height = solo_dev->video_vsize << 1;
solo_dev          990 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev          992 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_valid_pixfmt(fintv->pixel_format, solo_dev->type))
solo_dev          996 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if ((fintv->width != solo_dev->video_hsize >> 1 ||
solo_dev          997 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	     fintv->height != solo_dev->video_vsize) &&
solo_dev          998 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	    (fintv->width != solo_dev->video_hsize ||
solo_dev          999 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	     fintv->height != solo_dev->video_vsize << 1))
solo_dev         1005 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	fintv->stepwise.min.denominator = solo_dev->fps;
solo_dev         1008 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	fintv->stepwise.max.denominator = solo_dev->fps;
solo_dev         1011 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	fintv->stepwise.step.denominator = solo_dev->fps;
solo_dev         1024 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	cp->timeperframe.denominator = solo_enc->solo_dev->fps;
solo_dev         1047 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	u8 fps = solo_enc->solo_dev->fps;
solo_dev         1061 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	struct solo_dev *solo_dev = solo_enc->solo_dev;
solo_dev         1070 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		return tw28_set_ctrl_val(solo_dev, ctrl->id, solo_enc->ch,
solo_dev         1074 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_reg_write(solo_dev, SOLO_VE_CH_GOP(solo_enc->ch), solo_enc->gop);
solo_dev         1075 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_reg_write(solo_dev, SOLO_VE_CH_GOP_E(solo_enc->ch), solo_enc->gop);
solo_dev         1079 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_reg_write(solo_dev, SOLO_VE_CH_QP(solo_enc->ch), solo_enc->qp);
solo_dev         1080 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_reg_write(solo_dev, SOLO_VE_CH_QP_E(solo_enc->ch), solo_enc->qp);
solo_dev         1086 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		return solo_set_motion_threshold(solo_dev, solo_enc->ch,
solo_dev         1093 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 				err = solo_set_motion_threshold(solo_dev, solo_enc->ch,
solo_dev         1096 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 				err = solo_set_motion_block(solo_dev, solo_enc->ch,
solo_dev         1105 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			return solo_set_motion_block(solo_dev, solo_enc->ch,
solo_dev         1209 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c static struct solo_enc_dev *solo_enc_alloc(struct solo_dev *solo_dev,
solo_dev         1230 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (tw28_has_sharpness(solo_dev, ch))
solo_dev         1234 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			V4L2_CID_MPEG_VIDEO_GOP_SIZE, 1, 255, 1, solo_dev->fps);
solo_dev         1252 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_enc->solo_dev = solo_dev;
solo_dev         1257 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_enc->fmt = (solo_dev->type == SOLO_DEV_6010) ?
solo_dev         1262 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_enc->gop = solo_dev->fps;
solo_dev         1276 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_enc->vidq.dev = &solo_dev->pdev->dev;
solo_dev         1289 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_enc->desc_items = pci_alloc_consistent(solo_dev->pdev,
solo_dev         1302 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_enc->vfd->v4l2_dev = &solo_dev->v4l2_dev;
solo_dev         1312 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		 "%s-enc (%i/%i)", SOLO6X10_NAME, solo_dev->vfd->num,
solo_dev         1320 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	pci_free_consistent(solo_enc->solo_dev->pdev,
solo_dev         1334 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	pci_free_consistent(solo_enc->solo_dev->pdev,
solo_dev         1342 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c int solo_enc_v4l2_init(struct solo_dev *solo_dev, unsigned nr)
solo_dev         1346 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	init_waitqueue_head(&solo_dev->ring_thread_wait);
solo_dev         1348 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_dev->vh_size = sizeof(vop_header);
solo_dev         1349 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_dev->vh_buf = pci_alloc_consistent(solo_dev->pdev,
solo_dev         1350 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 						solo_dev->vh_size,
solo_dev         1351 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 						&solo_dev->vh_dma);
solo_dev         1352 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_dev->vh_buf == NULL)
solo_dev         1355 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	for (i = 0; i < solo_dev->nr_chans; i++) {
solo_dev         1356 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_dev->v4l2_enc[i] = solo_enc_alloc(solo_dev, i, nr);
solo_dev         1357 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		if (IS_ERR(solo_dev->v4l2_enc[i]))
solo_dev         1361 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (i != solo_dev->nr_chans) {
solo_dev         1362 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		int ret = PTR_ERR(solo_dev->v4l2_enc[i]);
solo_dev         1365 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			solo_enc_free(solo_dev->v4l2_enc[i]);
solo_dev         1366 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		pci_free_consistent(solo_dev->pdev, solo_dev->vh_size,
solo_dev         1367 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 				    solo_dev->vh_buf, solo_dev->vh_dma);
solo_dev         1368 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_dev->vh_buf = NULL;
solo_dev         1372 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_dev->type == SOLO_DEV_6010)
solo_dev         1373 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_dev->enc_bw_remain = solo_dev->fps * 4 * 4;
solo_dev         1375 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_dev->enc_bw_remain = solo_dev->fps * 4 * 5;
solo_dev         1377 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	dev_info(&solo_dev->pdev->dev, "Encoders as /dev/video%d-%d\n",
solo_dev         1378 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		 solo_dev->v4l2_enc[0]->vfd->num,
solo_dev         1379 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		 solo_dev->v4l2_enc[solo_dev->nr_chans - 1]->vfd->num);
solo_dev         1381 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	return solo_ring_start(solo_dev);
solo_dev         1384 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c void solo_enc_v4l2_exit(struct solo_dev *solo_dev)
solo_dev         1388 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	solo_ring_stop(solo_dev);
solo_dev         1390 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	for (i = 0; i < solo_dev->nr_chans; i++)
solo_dev         1391 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		solo_enc_free(solo_dev->v4l2_enc[i]);
solo_dev         1393 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 	if (solo_dev->vh_buf)
solo_dev         1394 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 		pci_free_consistent(solo_dev->pdev, solo_dev->vh_size,
solo_dev         1395 drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c 			    solo_dev->vh_buf, solo_dev->vh_dma);
solo_dev           35 drivers/media/pci/solo6x10/solo6x10-v4l2.c static inline void erase_on(struct solo_dev *solo_dev)
solo_dev           37 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_reg_write(solo_dev, SOLO_VO_DISP_ERASE, SOLO_VO_DISP_ERASE_ON);
solo_dev           38 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->erasing = 1;
solo_dev           39 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->frame_blank = 0;
solo_dev           42 drivers/media/pci/solo6x10/solo6x10-v4l2.c static inline int erase_off(struct solo_dev *solo_dev)
solo_dev           44 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (!solo_dev->erasing)
solo_dev           48 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (!solo_dev->frame_blank)
solo_dev           49 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_reg_write(solo_dev, SOLO_VO_DISP_ERASE, 0);
solo_dev           51 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (solo_dev->frame_blank++ >= 8)
solo_dev           52 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_dev->erasing = 0;
solo_dev           57 drivers/media/pci/solo6x10/solo6x10-v4l2.c void solo_video_in_isr(struct solo_dev *solo_dev)
solo_dev           59 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	wake_up_interruptible_all(&solo_dev->disp_thread_wait);
solo_dev           62 drivers/media/pci/solo6x10/solo6x10-v4l2.c static void solo_win_setup(struct solo_dev *solo_dev, u8 ch,
solo_dev           65 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (ch >= solo_dev->nr_chans)
solo_dev           69 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_reg_write(solo_dev, SOLO_VI_WIN_CTRL0(ch),
solo_dev           75 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_reg_write(solo_dev, SOLO_VI_WIN_CTRL1(ch),
solo_dev           80 drivers/media/pci/solo6x10/solo6x10-v4l2.c static int solo_v4l2_ch_ext_4up(struct solo_dev *solo_dev, u8 idx, int on)
solo_dev           84 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (ch >= solo_dev->nr_chans)
solo_dev           91 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			solo_win_setup(solo_dev, i, solo_dev->video_hsize,
solo_dev           92 drivers/media/pci/solo6x10/solo6x10-v4l2.c 				       solo_vlines(solo_dev),
solo_dev           93 drivers/media/pci/solo6x10/solo6x10-v4l2.c 				       solo_dev->video_hsize,
solo_dev           94 drivers/media/pci/solo6x10/solo6x10-v4l2.c 				       solo_vlines(solo_dev), 0);
solo_dev           99 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_win_setup(solo_dev, ch, 0, 0, solo_dev->video_hsize / 2,
solo_dev          100 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		       solo_vlines(solo_dev) / 2, 3);
solo_dev          101 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_win_setup(solo_dev, ch + 1, solo_dev->video_hsize / 2, 0,
solo_dev          102 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		       solo_dev->video_hsize, solo_vlines(solo_dev) / 2, 3);
solo_dev          104 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_win_setup(solo_dev, ch + 2, 0, solo_vlines(solo_dev) / 2,
solo_dev          105 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		       solo_dev->video_hsize / 2, solo_vlines(solo_dev), 3);
solo_dev          106 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_win_setup(solo_dev, ch + 3, solo_dev->video_hsize / 2,
solo_dev          107 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		       solo_vlines(solo_dev) / 2, solo_dev->video_hsize,
solo_dev          108 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		       solo_vlines(solo_dev), 3);
solo_dev          113 drivers/media/pci/solo6x10/solo6x10-v4l2.c static int solo_v4l2_ch_ext_16up(struct solo_dev *solo_dev, int on)
solo_dev          119 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			solo_win_setup(solo_dev, i, solo_dev->video_hsize,
solo_dev          120 drivers/media/pci/solo6x10/solo6x10-v4l2.c 				       solo_vlines(solo_dev),
solo_dev          121 drivers/media/pci/solo6x10/solo6x10-v4l2.c 				       solo_dev->video_hsize,
solo_dev          122 drivers/media/pci/solo6x10/solo6x10-v4l2.c 				       solo_vlines(solo_dev), 0);
solo_dev          126 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	ysize = solo_vlines(solo_dev) / 4;
solo_dev          127 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	hsize = solo_dev->video_hsize / 4;
solo_dev          130 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_win_setup(solo_dev, i * 4, 0, sy, hsize,
solo_dev          132 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_win_setup(solo_dev, (i * 4) + 1, hsize, sy,
solo_dev          134 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_win_setup(solo_dev, (i * 4) + 2, hsize * 2, sy,
solo_dev          136 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_win_setup(solo_dev, (i * 4) + 3, hsize * 3, sy,
solo_dev          137 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			       solo_dev->video_hsize, sy + ysize, 5);
solo_dev          143 drivers/media/pci/solo6x10/solo6x10-v4l2.c static int solo_v4l2_ch(struct solo_dev *solo_dev, u8 ch, int on)
solo_dev          147 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (ch < solo_dev->nr_chans) {
solo_dev          148 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_win_setup(solo_dev, ch, on ? 0 : solo_dev->video_hsize,
solo_dev          149 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			       on ? 0 : solo_vlines(solo_dev),
solo_dev          150 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			       solo_dev->video_hsize, solo_vlines(solo_dev),
solo_dev          155 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (ch >= solo_dev->nr_chans + solo_dev->nr_ext)
solo_dev          158 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	ext_ch = ch - solo_dev->nr_chans;
solo_dev          162 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		return solo_v4l2_ch_ext_4up(solo_dev, ext_ch, on);
solo_dev          165 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	return solo_v4l2_ch_ext_16up(solo_dev, on);
solo_dev          168 drivers/media/pci/solo6x10/solo6x10-v4l2.c static int solo_v4l2_set_ch(struct solo_dev *solo_dev, u8 ch)
solo_dev          170 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (ch >= solo_dev->nr_chans + solo_dev->nr_ext)
solo_dev          173 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	erase_on(solo_dev);
solo_dev          175 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_v4l2_ch(solo_dev, solo_dev->cur_disp_ch, 0);
solo_dev          176 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_v4l2_ch(solo_dev, ch, 1);
solo_dev          178 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->cur_disp_ch = ch;
solo_dev          183 drivers/media/pci/solo6x10/solo6x10-v4l2.c static void solo_fillbuf(struct solo_dev *solo_dev,
solo_dev          196 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (erase_off(solo_dev)) {
solo_dev          198 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		int image_size = solo_image_size(solo_dev);
solo_dev          206 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		fdma_addr = SOLO_DISP_EXT_ADDR + (solo_dev->old_write *
solo_dev          207 drivers/media/pci/solo6x10/solo6x10-v4l2.c 				(SOLO_HW_BPL * solo_vlines(solo_dev)));
solo_dev          209 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		error = solo_p2m_dma_t(solo_dev, 0, addr, fdma_addr,
solo_dev          210 drivers/media/pci/solo6x10/solo6x10-v4l2.c 				       solo_bytesperline(solo_dev),
solo_dev          211 drivers/media/pci/solo6x10/solo6x10-v4l2.c 				       solo_vlines(solo_dev), SOLO_HW_BPL);
solo_dev          217 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			solo_vlines(solo_dev) * solo_bytesperline(solo_dev));
solo_dev          218 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		vbuf->sequence = solo_dev->sequence++;
solo_dev          225 drivers/media/pci/solo6x10/solo6x10-v4l2.c static void solo_thread_try(struct solo_dev *solo_dev)
solo_dev          235 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			solo_reg_read(solo_dev, SOLO_VI_STATUS0));
solo_dev          236 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		if (cur_write == solo_dev->old_write)
solo_dev          239 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		spin_lock(&solo_dev->slock);
solo_dev          241 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		if (list_empty(&solo_dev->vidq_active))
solo_dev          244 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		vb = list_first_entry(&solo_dev->vidq_active, struct solo_vb2_buf,
solo_dev          247 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_dev->old_write = cur_write;
solo_dev          250 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		spin_unlock(&solo_dev->slock);
solo_dev          252 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_fillbuf(solo_dev, &vb->vb.vb2_buf);
solo_dev          255 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	assert_spin_locked(&solo_dev->slock);
solo_dev          256 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	spin_unlock(&solo_dev->slock);
solo_dev          261 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = data;
solo_dev          265 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	add_wait_queue(&solo_dev->disp_thread_wait, &wait);
solo_dev          272 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_thread_try(solo_dev);
solo_dev          276 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	remove_wait_queue(&solo_dev->disp_thread_wait, &wait);
solo_dev          281 drivers/media/pci/solo6x10/solo6x10-v4l2.c static int solo_start_thread(struct solo_dev *solo_dev)
solo_dev          285 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->kthread = kthread_run(solo_thread, solo_dev, SOLO6X10_NAME "_disp");
solo_dev          287 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (IS_ERR(solo_dev->kthread)) {
solo_dev          288 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		ret = PTR_ERR(solo_dev->kthread);
solo_dev          289 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_dev->kthread = NULL;
solo_dev          292 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_irq_on(solo_dev, SOLO_IRQ_VIDEO_IN);
solo_dev          297 drivers/media/pci/solo6x10/solo6x10-v4l2.c static void solo_stop_thread(struct solo_dev *solo_dev)
solo_dev          299 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (!solo_dev->kthread)
solo_dev          302 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_irq_off(solo_dev, SOLO_IRQ_VIDEO_IN);
solo_dev          303 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	kthread_stop(solo_dev->kthread);
solo_dev          304 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->kthread = NULL;
solo_dev          311 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = vb2_get_drv_priv(q);
solo_dev          313 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	sizes[0] = solo_image_size(solo_dev);
solo_dev          324 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = vb2_get_drv_priv(q);
solo_dev          326 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->sequence = 0;
solo_dev          327 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	return solo_start_thread(solo_dev);
solo_dev          332 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = vb2_get_drv_priv(q);
solo_dev          334 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_stop_thread(solo_dev);
solo_dev          336 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	spin_lock(&solo_dev->slock);
solo_dev          337 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	while (!list_empty(&solo_dev->vidq_active)) {
solo_dev          339 drivers/media/pci/solo6x10/solo6x10-v4l2.c 				solo_dev->vidq_active.next,
solo_dev          345 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	spin_unlock(&solo_dev->slock);
solo_dev          346 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	INIT_LIST_HEAD(&solo_dev->vidq_active);
solo_dev          353 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = vb2_get_drv_priv(vq);
solo_dev          357 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	spin_lock(&solo_dev->slock);
solo_dev          358 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	list_add_tail(&solo_vb->list, &solo_dev->vidq_active);
solo_dev          359 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	spin_unlock(&solo_dev->slock);
solo_dev          360 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	wake_up_interruptible(&solo_dev->disp_thread_wait);
solo_dev          375 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = video_drvdata(file);
solo_dev          380 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		 pci_name(solo_dev->pdev));
solo_dev          384 drivers/media/pci/solo6x10/solo6x10-v4l2.c static int solo_enum_ext_input(struct solo_dev *solo_dev,
solo_dev          387 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	int ext = input->index - solo_dev->nr_chans;
solo_dev          390 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (ext >= solo_dev->nr_ext)
solo_dev          411 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = video_drvdata(file);
solo_dev          413 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (input->index >= solo_dev->nr_chans) {
solo_dev          414 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		int ret = solo_enum_ext_input(solo_dev, input);
solo_dev          423 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		if (!tw28_get_video_status(solo_dev, input->index))
solo_dev          428 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	input->std = solo_dev->vfd->tvnorms;
solo_dev          434 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = video_drvdata(file);
solo_dev          435 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	int ret = solo_v4l2_set_ch(solo_dev, index);
solo_dev          438 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		while (erase_off(solo_dev))
solo_dev          447 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = video_drvdata(file);
solo_dev          449 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	*index = solo_dev->cur_disp_ch;
solo_dev          467 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = video_drvdata(file);
solo_dev          469 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	int image_size = solo_image_size(solo_dev);
solo_dev          474 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	pix->width = solo_dev->video_hsize;
solo_dev          475 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	pix->height = solo_vlines(solo_dev);
solo_dev          486 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = video_drvdata(file);
solo_dev          488 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (vb2_is_busy(&solo_dev->vidq))
solo_dev          499 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = video_drvdata(file);
solo_dev          502 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	pix->width = solo_dev->video_hsize;
solo_dev          503 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	pix->height = solo_vlines(solo_dev);
solo_dev          506 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	pix->sizeimage = solo_image_size(solo_dev);
solo_dev          508 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	pix->bytesperline = solo_bytesperline(solo_dev);
solo_dev          515 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = video_drvdata(file);
solo_dev          517 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (solo_dev->video_type == SOLO_VO_FMT_TYPE_NTSC)
solo_dev          524 drivers/media/pci/solo6x10/solo6x10-v4l2.c int solo_set_video_type(struct solo_dev *solo_dev, bool is_50hz)
solo_dev          529 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (vb2_is_busy(&solo_dev->vidq))
solo_dev          531 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	for (i = 0; i < solo_dev->nr_chans; i++)
solo_dev          532 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		if (vb2_is_busy(&solo_dev->v4l2_enc[i]->vidq))
solo_dev          534 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->video_type = is_50hz ? SOLO_VO_FMT_TYPE_PAL :
solo_dev          537 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_disp_init(solo_dev);
solo_dev          538 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_enc_init(solo_dev);
solo_dev          539 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_tw28_init(solo_dev);
solo_dev          540 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	for (i = 0; i < solo_dev->nr_chans; i++)
solo_dev          541 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_update_mode(solo_dev->v4l2_enc[i]);
solo_dev          542 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	return solo_v4l2_set_ch(solo_dev, solo_dev->cur_disp_ch);
solo_dev          547 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev = video_drvdata(file);
solo_dev          549 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	return solo_set_video_type(solo_dev, std & V4L2_STD_625_50);
solo_dev          554 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	struct solo_dev *solo_dev =
solo_dev          555 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		container_of(ctrl->handler, struct solo_dev, disp_hdl);
solo_dev          560 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			solo_reg_write(solo_dev, SOLO_VI_MOTION_BORDER,
solo_dev          565 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			solo_reg_write(solo_dev, SOLO_VI_MOTION_BAR,
solo_dev          571 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			solo_reg_write(solo_dev, SOLO_VI_MOTION_BORDER, 0);
solo_dev          572 drivers/media/pci/solo6x10/solo6x10-v4l2.c 			solo_reg_write(solo_dev, SOLO_VI_MOTION_BAR, 0);
solo_dev          641 drivers/media/pci/solo6x10/solo6x10-v4l2.c int solo_v4l2_init(struct solo_dev *solo_dev, unsigned nr)
solo_dev          646 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	init_waitqueue_head(&solo_dev->disp_thread_wait);
solo_dev          647 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	spin_lock_init(&solo_dev->slock);
solo_dev          648 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	mutex_init(&solo_dev->lock);
solo_dev          649 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	INIT_LIST_HEAD(&solo_dev->vidq_active);
solo_dev          651 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vfd = video_device_alloc();
solo_dev          652 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (!solo_dev->vfd)
solo_dev          655 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	*solo_dev->vfd = solo_v4l2_template;
solo_dev          656 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vfd->v4l2_dev = &solo_dev->v4l2_dev;
solo_dev          657 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vfd->queue = &solo_dev->vidq;
solo_dev          658 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vfd->lock = &solo_dev->lock;
solo_dev          659 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	v4l2_ctrl_handler_init(&solo_dev->disp_hdl, 1);
solo_dev          660 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	v4l2_ctrl_new_custom(&solo_dev->disp_hdl, &solo_motion_trace_ctrl, NULL);
solo_dev          661 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (solo_dev->disp_hdl.error) {
solo_dev          662 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		ret = solo_dev->disp_hdl.error;
solo_dev          665 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vfd->ctrl_handler = &solo_dev->disp_hdl;
solo_dev          667 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	video_set_drvdata(solo_dev->vfd, solo_dev);
solo_dev          669 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vidq.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
solo_dev          670 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vidq.io_modes = VB2_MMAP | VB2_USERPTR | VB2_READ;
solo_dev          671 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vidq.ops = &solo_video_qops;
solo_dev          672 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vidq.mem_ops = &vb2_dma_contig_memops;
solo_dev          673 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vidq.drv_priv = solo_dev;
solo_dev          674 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vidq.timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC;
solo_dev          675 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vidq.gfp_flags = __GFP_DMA32 | __GFP_KSWAPD_RECLAIM;
solo_dev          676 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vidq.buf_struct_size = sizeof(struct solo_vb2_buf);
solo_dev          677 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vidq.lock = &solo_dev->lock;
solo_dev          678 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vidq.dev = &solo_dev->pdev->dev;
solo_dev          679 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	ret = vb2_queue_init(&solo_dev->vidq);
solo_dev          684 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	for (i = 0; i < solo_dev->nr_chans; i++) {
solo_dev          685 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		solo_v4l2_set_ch(solo_dev, i);
solo_dev          686 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		while (erase_off(solo_dev))
solo_dev          691 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_v4l2_set_ch(solo_dev, 0);
solo_dev          692 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	while (erase_off(solo_dev))
solo_dev          695 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	ret = video_register_device(solo_dev->vfd, VFL_TYPE_GRABBER, nr);
solo_dev          699 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	snprintf(solo_dev->vfd->name, sizeof(solo_dev->vfd->name), "%s (%i)",
solo_dev          700 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		 SOLO6X10_NAME, solo_dev->vfd->num);
solo_dev          702 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	dev_info(&solo_dev->pdev->dev, "Display as /dev/video%d with %d inputs (%d extended)\n",
solo_dev          703 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		 solo_dev->vfd->num,
solo_dev          704 drivers/media/pci/solo6x10/solo6x10-v4l2.c 		 solo_dev->nr_chans, solo_dev->nr_ext);
solo_dev          709 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	video_device_release(solo_dev->vfd);
solo_dev          710 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	v4l2_ctrl_handler_free(&solo_dev->disp_hdl);
solo_dev          711 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vfd = NULL;
solo_dev          715 drivers/media/pci/solo6x10/solo6x10-v4l2.c void solo_v4l2_exit(struct solo_dev *solo_dev)
solo_dev          717 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	if (solo_dev->vfd == NULL)
solo_dev          720 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	video_unregister_device(solo_dev->vfd);
solo_dev          721 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	v4l2_ctrl_handler_free(&solo_dev->disp_hdl);
solo_dev          722 drivers/media/pci/solo6x10/solo6x10-v4l2.c 	solo_dev->vfd = NULL;
solo_dev          140 drivers/media/pci/solo6x10/solo6x10.h 	struct solo_dev	*solo_dev;
solo_dev          275 drivers/media/pci/solo6x10/solo6x10.h static inline u32 solo_reg_read(struct solo_dev *solo_dev, int reg)
solo_dev          277 drivers/media/pci/solo6x10/solo6x10.h 	return readl(solo_dev->reg_base + reg);
solo_dev          280 drivers/media/pci/solo6x10/solo6x10.h static inline void solo_reg_write(struct solo_dev *solo_dev, int reg,
solo_dev          285 drivers/media/pci/solo6x10/solo6x10.h 	writel(data, solo_dev->reg_base + reg);
solo_dev          286 drivers/media/pci/solo6x10/solo6x10.h 	pci_read_config_word(solo_dev->pdev, PCI_STATUS, &val);
solo_dev          289 drivers/media/pci/solo6x10/solo6x10.h static inline void solo_irq_on(struct solo_dev *dev, u32 mask)
solo_dev          295 drivers/media/pci/solo6x10/solo6x10.h static inline void solo_irq_off(struct solo_dev *dev, u32 mask)
solo_dev          302 drivers/media/pci/solo6x10/solo6x10.h int solo_disp_init(struct solo_dev *solo_dev);
solo_dev          303 drivers/media/pci/solo6x10/solo6x10.h void solo_disp_exit(struct solo_dev *solo_dev);
solo_dev          305 drivers/media/pci/solo6x10/solo6x10.h int solo_gpio_init(struct solo_dev *solo_dev);
solo_dev          306 drivers/media/pci/solo6x10/solo6x10.h void solo_gpio_exit(struct solo_dev *solo_dev);
solo_dev          308 drivers/media/pci/solo6x10/solo6x10.h int solo_i2c_init(struct solo_dev *solo_dev);
solo_dev          309 drivers/media/pci/solo6x10/solo6x10.h void solo_i2c_exit(struct solo_dev *solo_dev);
solo_dev          311 drivers/media/pci/solo6x10/solo6x10.h int solo_p2m_init(struct solo_dev *solo_dev);
solo_dev          312 drivers/media/pci/solo6x10/solo6x10.h void solo_p2m_exit(struct solo_dev *solo_dev);
solo_dev          314 drivers/media/pci/solo6x10/solo6x10.h int solo_v4l2_init(struct solo_dev *solo_dev, unsigned nr);
solo_dev          315 drivers/media/pci/solo6x10/solo6x10.h void solo_v4l2_exit(struct solo_dev *solo_dev);
solo_dev          317 drivers/media/pci/solo6x10/solo6x10.h int solo_enc_init(struct solo_dev *solo_dev);
solo_dev          318 drivers/media/pci/solo6x10/solo6x10.h void solo_enc_exit(struct solo_dev *solo_dev);
solo_dev          320 drivers/media/pci/solo6x10/solo6x10.h int solo_enc_v4l2_init(struct solo_dev *solo_dev, unsigned nr);
solo_dev          321 drivers/media/pci/solo6x10/solo6x10.h void solo_enc_v4l2_exit(struct solo_dev *solo_dev);
solo_dev          323 drivers/media/pci/solo6x10/solo6x10.h int solo_g723_init(struct solo_dev *solo_dev);
solo_dev          324 drivers/media/pci/solo6x10/solo6x10.h void solo_g723_exit(struct solo_dev *solo_dev);
solo_dev          327 drivers/media/pci/solo6x10/solo6x10.h int solo_i2c_isr(struct solo_dev *solo_dev);
solo_dev          328 drivers/media/pci/solo6x10/solo6x10.h void solo_p2m_isr(struct solo_dev *solo_dev, int id);
solo_dev          329 drivers/media/pci/solo6x10/solo6x10.h void solo_p2m_error_isr(struct solo_dev *solo_dev);
solo_dev          330 drivers/media/pci/solo6x10/solo6x10.h void solo_enc_v4l2_isr(struct solo_dev *solo_dev);
solo_dev          331 drivers/media/pci/solo6x10/solo6x10.h void solo_g723_isr(struct solo_dev *solo_dev);
solo_dev          332 drivers/media/pci/solo6x10/solo6x10.h void solo_motion_isr(struct solo_dev *solo_dev);
solo_dev          333 drivers/media/pci/solo6x10/solo6x10.h void solo_video_in_isr(struct solo_dev *solo_dev);
solo_dev          336 drivers/media/pci/solo6x10/solo6x10.h u8 solo_i2c_readbyte(struct solo_dev *solo_dev, int id, u8 addr, u8 off);
solo_dev          337 drivers/media/pci/solo6x10/solo6x10.h void solo_i2c_writebyte(struct solo_dev *solo_dev, int id, u8 addr, u8 off,
solo_dev          341 drivers/media/pci/solo6x10/solo6x10.h int solo_p2m_dma_t(struct solo_dev *solo_dev, int wr,
solo_dev          344 drivers/media/pci/solo6x10/solo6x10.h int solo_p2m_dma(struct solo_dev *solo_dev, int wr,
solo_dev          350 drivers/media/pci/solo6x10/solo6x10.h int solo_p2m_dma_desc(struct solo_dev *solo_dev,
solo_dev          355 drivers/media/pci/solo6x10/solo6x10.h int solo_set_video_type(struct solo_dev *solo_dev, bool is_50hz);
solo_dev          359 drivers/media/pci/solo6x10/solo6x10.h int solo_set_motion_threshold(struct solo_dev *solo_dev, u8 ch, u16 val);
solo_dev          360 drivers/media/pci/solo6x10/solo6x10.h int solo_set_motion_block(struct solo_dev *solo_dev, u8 ch,
solo_dev          368 drivers/media/pci/solo6x10/solo6x10.h unsigned int solo_eeprom_ewen(struct solo_dev *solo_dev, int w_en);
solo_dev          369 drivers/media/pci/solo6x10/solo6x10.h __be16 solo_eeprom_read(struct solo_dev *solo_dev, int loc);
solo_dev          370 drivers/media/pci/solo6x10/solo6x10.h int solo_eeprom_write(struct solo_dev *solo_dev, int loc,
solo_dev          374 drivers/media/pci/solo6x10/solo6x10.h void solo_s_jpeg_qp(struct solo_dev *solo_dev, unsigned int ch,
solo_dev          376 drivers/media/pci/solo6x10/solo6x10.h int solo_g_jpeg_qp(struct solo_dev *solo_dev, unsigned int ch);