public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: Steve Cookson <it@sca-uk.com>
To: Hans Verkuil <hverkuil@xs4all.nl>,
	Linux Media Mailing List <linux-media@vger.kernel.org>
Cc: stoth@kernellabs.com
Subject: Re: [PATCH] cx23885: add support for Hauppauge ImpactVCB-e
Date: Thu, 17 Apr 2014 22:07:07 +0100	[thread overview]
Message-ID: <5350427B.8040909@sca-uk.com> (raw)
In-Reply-To: <534BE92F.3010501@xs4all.nl>

Hi Guys,

I've been playing around with this on my Kubuntu 13.10.  Apart from the 
issue that you know I have of the altera-stapl.ko file arriving in the 
wrong directory, I think it's a good basis for moving forwards.  What is 
the process for including this in the Linux TV baseline?

I feel there are some things that could be done to make it even nicer, 
but it doesn't alter the fact that it still needs a bit of TLC.  The 
depth of colour could be better.

Can I add a patch to the patch?  How would that go?  I've added a 
suggested modification that would make life easier for me (scroll down 
for my mod on 640x480).   But really it would probably be more 
appropriate to make the change card specific to avoid regression 
problems for existing setups.

I also have a workaround for the s-video problem I reported earlier with 
this card.  I'll see if it could be incorporated here too.

Have a good long weekend.

Regards

Steve.

On 14/04/14 14:57, Hans Verkuil wrote:
> This patch adds support for the Hauppauge ImpactVCB-e card to cx23885.
>
> Tested with Composite input and S-Video.
>
> While I do get audio it is very choppy. It is not clear whether that is
> a general cx23885 driver problem or specific to this board. If it is specific
> to the board, then I might have missed something.
>
> Steven (Toth, not Cookson ;-) ), do you have an idea what it might be?
>
> Regards,
>
> 	Hans
>
> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
> ---
>   drivers/media/pci/cx23885/cx23885-cards.c | 30 +++++++++++++++++++++++++++++-
>   drivers/media/pci/cx23885/cx23885-video.c |  1 +
>   drivers/media/pci/cx23885/cx23885.h       |  1 +
>   3 files changed, 31 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/pci/cx23885/cx23885-cards.c b/drivers/media/pci/cx23885/cx23885-cards.c
> index 79f20c8..49a3711 100644
> --- a/drivers/media/pci/cx23885/cx23885-cards.c
> +++ b/drivers/media/pci/cx23885/cx23885-cards.c
> @@ -649,7 +649,25 @@ struct cx23885_board cx23885_boards[] = {
>   				  CX25840_NONE1_CH3,
>   			.amux   = CX25840_AUDIO6,
>   		} },
> -	}
> +	},
> +	[CX23885_BOARD_HAUPPAUGE_IMPACTVCBE] = {
> +		.name		= "Hauppauge ImpactVCB-e",
> +		.porta		= CX23885_ANALOG_VIDEO,
> +		.input          = {{
> +			.type   = CX23885_VMUX_COMPOSITE1,
> +			.vmux   = CX25840_VIN7_CH3 |
> +				  CX25840_VIN4_CH2 |
> +				  CX25840_VIN6_CH1,
> +			.amux   = CX25840_AUDIO7,
> +		}, {
> +			.type   = CX23885_VMUX_SVIDEO,
> +			.vmux   = CX25840_VIN7_CH3 |
> +				  CX25840_VIN4_CH2 |
> +				  CX25840_VIN8_CH1 |
> +				  CX25840_SVIDEO_ON,
> +			.amux   = CX25840_AUDIO7,
> +		} },
> +	},
>   };
>   const unsigned int cx23885_bcount = ARRAY_SIZE(cx23885_boards);
>   
> @@ -897,6 +915,10 @@ struct cx23885_subid cx23885_subids[] = {
>   		.subvendor = 0x1461,
>   		.subdevice = 0xd939,
>   		.card      = CX23885_BOARD_AVERMEDIA_HC81R,
> +	}, {
> +		.subvendor = 0x0070,
> +		.subdevice = 0x7133,
> +		.card      = CX23885_BOARD_HAUPPAUGE_IMPACTVCBE,
>   	},
>   };
>   const unsigned int cx23885_idcount = ARRAY_SIZE(cx23885_subids);
> @@ -977,6 +999,9 @@ static void hauppauge_eeprom(struct cx23885_dev *dev, u8 *eeprom_data)
>   	case 71009:
>   		/* WinTV-HVR1200 (PCIe, Retail, full height)
>   		 * DVB-T and basic analog */
> +	case 71100:
> +		/* WinTV-ImpactVCB-e (PCIe, Retail, half height)
> +		 * Basic analog */
>   	case 71359:
>   		/* WinTV-HVR1200 (PCIe, OEM, half height)
>   		 * DVB-T and basic analog */
> @@ -1701,6 +1726,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
>   	case CX23885_BOARD_HAUPPAUGE_HVR1850:
>   	case CX23885_BOARD_HAUPPAUGE_HVR1290:
>   	case CX23885_BOARD_HAUPPAUGE_HVR4400:
> +	case CX23885_BOARD_HAUPPAUGE_IMPACTVCBE:
>   		if (dev->i2c_bus[0].i2c_rc == 0)
>   			hauppauge_eeprom(dev, eeprom+0xc0);
>   		break;
> @@ -1807,6 +1833,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
>   	case CX23885_BOARD_HAUPPAUGE_HVR1200:
>   	case CX23885_BOARD_HAUPPAUGE_HVR1700:
>   	case CX23885_BOARD_HAUPPAUGE_HVR1400:
> +	case CX23885_BOARD_HAUPPAUGE_IMPACTVCBE:
>   	case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
>   	case CX23885_BOARD_LEADTEK_WINFAST_PXPVR2200:
>   	case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000:
> @@ -1835,6 +1862,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
>   			break;
>   	case CX23885_BOARD_HAUPPAUGE_HVR1250:
>   	case CX23885_BOARD_HAUPPAUGE_HVR1800:
> +	case CX23885_BOARD_HAUPPAUGE_IMPACTVCBE:
>   	case CX23885_BOARD_HAUPPAUGE_HVR1800lp:
>   	case CX23885_BOARD_HAUPPAUGE_HVR1700:
>   	case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
> diff --git a/drivers/media/pci/cx23885/cx23885-video.c b/drivers/media/pci/cx23885/cx23885-video.c
> index 7891f34..976fe5d 100644
> --- a/drivers/media/pci/cx23885/cx23885-video.c
> +++ b/drivers/media/pci/cx23885/cx23885-video.c
> @@ -507,6 +507,7 @@ static int cx23885_video_mux(struct cx23885_dev *dev, unsigned int input)
>   	if ((dev->board == CX23885_BOARD_HAUPPAUGE_HVR1800) ||
>   		(dev->board == CX23885_BOARD_MPX885) ||
>   		(dev->board == CX23885_BOARD_HAUPPAUGE_HVR1250) ||
> +		(dev->board == CX23885_BOARD_HAUPPAUGE_IMPACTVCBE) ||
>   		(dev->board == CX23885_BOARD_HAUPPAUGE_HVR1255) ||
>   		(dev->board == CX23885_BOARD_HAUPPAUGE_HVR1255_22111) ||
>   		(dev->board == CX23885_BOARD_HAUPPAUGE_HVR1850) ||

@@ -886,8 +887,8 @@ static int video_open(struct file *file)
      fh->dev      = dev;
      fh->radio    = radio;
      fh->type     = type;
-    fh->width    = 320;
-    fh->height   = 240;
+    fh->width    = 640;
+    fh->height   = 480;
      fh->fmt      = format_by_fourcc(V4L2_PIX_FMT_YUYV);

      videobuf_queue_sg_init(&fh->vidq, &cx23885_video_qops,

> diff --git a/drivers/media/pci/cx23885/cx23885.h b/drivers/media/pci/cx23885/cx23885.h
> index 0fa4048..6a4b20e 100644
> --- a/drivers/media/pci/cx23885/cx23885.h
> +++ b/drivers/media/pci/cx23885/cx23885.h
> @@ -96,6 +96,7 @@
>   #define CX23885_BOARD_TBS_6981                 40
>   #define CX23885_BOARD_TBS_6980                 41
>   #define CX23885_BOARD_LEADTEK_WINFAST_PXPVR2200 42
> +#define CX23885_BOARD_HAUPPAUGE_IMPACTVCBE     43
>   
>   #define GPIO_0 0x00000001
>   #define GPIO_1 0x00000002


      parent reply	other threads:[~2014-04-17 21:07 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-14 13:57 [PATCH] cx23885: add support for Hauppauge ImpactVCB-e Hans Verkuil
2014-04-14 14:22 ` Steven Toth
2014-04-15 10:41 ` it-support
2014-04-15 10:43   ` Hans Verkuil
2014-04-17 21:07 ` Steve Cookson [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5350427B.8040909@sca-uk.com \
    --to=it@sca-uk.com \
    --cc=hverkuil@xs4all.nl \
    --cc=linux-media@vger.kernel.org \
    --cc=stoth@kernellabs.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox