bttv bug with ImpactVCB #64405
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Expired
|
Undecided
|
Unassigned |
Bug Description
The Hauppauge ImpactVCB #64405 is a 4 channel 878A-based video capture board with no tuner, 3 RCA composite inputs, and an S-Video input.
Lucid Lynx and the past several releases of the bttv driver have a bug where this board does not fully work as auto-detected.
Because this board has the same PCI ID [0070:13eb] that the WinTV series of cards uses, the bttv driver auto-detects it as a WinTV board (card=10), and uses the MUXSEL settings: MUXSEL(2, 0, 1,1)
When these MUXSEL values are used for a 4-channel board, it means that one of the 878's inputs cannot not be selected, because a mux setting of 3 is not possible. In the case of the ImpactVCB #64405, the result is that one of the composite inputs cannot be selected, and a degraded echo of the S-Video input (if present) will be selected instead.
There is a work-around. The commands
sudo modprobe -r bttv
sudo modprobe bttv card=82
will treat this board as an Osprey 100/150, which is a functional equivalent.
However, this work-around has the following drawbacks:
1) It requires manual intervention.
2) It is non-intuitive, and requires user research to discover.
3) The composite channels are ordered differently than under Hauppauge's WinTV2000 app, which means that composite channels would move around on a dual-boot Windows/Ubuntu system.
Proposed Solution:
The bttv source code has already solved a similar problem for another ImpactVCB variant, the #64900, which has 4 BNC connections, and no S-Video.
A new card type was defined (BTTV_BOARD_
Then the hauppauge_eeprom() routine was modified to switch over to the alternate BTTV_BOARD_
1) The board is originally auto-detected as a BTTV_BOARD_
2) The tv.model read from the EEPROM is 64900.
My proposed solution is to simply extend this approach to the #64405 variant.
The attached code is a modification of 2.6.35 source code, which has been back-ported for testing against a 2.6.32 kernel.
It defines a new card type, BTTV_BOARD_
1) The board is originally auto-detected as a BTTV_BOARD_
2) The tv.model read from the EEPROM is 64405.
ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: linux-image-
Regression: No
Reproducible: Yes
ProcVersionSign
Uname: Linux 2.6.32-24-generic i686
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.21.
Architecture: i386
AudioDevicesInUse:
USER PID ACCESS COMMAND
/dev/snd/
/dev/snd/
CRDA: Error: [Errno 2] No such file or directory
Card0.Amixer.info:
Card hw:0 'SB'/'HDA ATI SB at 0xdfffc000 irq 16'
Mixer name : 'Analog Devices AD1983'
Components : 'HDA:11d41983,
Controls : 26
Simple ctrls : 15
Card1.Amixer.info:
Card hw:1 'Bt878'/'Brooktree Bt878 at 0xd8000000, irq 22'
Mixer name : 'Bt87x'
Components : ''
Controls : 3
Simple ctrls : 5
Date: Thu Sep 16 15:30:01 2010
HibernationDevice: RESUME=
InstallationMedia: Ubuntu 10.04 LTS "Lucid Lynx" - Release i386 (20100429)
IwConfig:
lo no wireless extensions.
eth0 no wireless extensions.
MachineType: Dell Inc. OptiPlex 320
ProcCmdLine: BOOT_IMAGE=
ProcEnviron:
LANG=en_US.utf8
SHELL=/bin/bash
RelatedPackageV
RfKill:
SourcePackage: linux
dmi.bios.date: 06/17/2009
dmi.bios.vendor: Dell Inc.
dmi.bios.version: 1.1.12
dmi.board.name: 0TY915
dmi.board.vendor: Dell Inc.
dmi.chassis.type: 7
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.
dmi.product.name: OptiPlex 320
dmi.sys.vendor: Dell Inc.
Hi Sean,
If you could also please test the latest upstream kernel available that would be great. It will allow additional upstream developers to examine the issue. Refer to https:/ /wiki.ubuntu. com/KernelMainl ineBuilds . Once you've tested the upstream kernel, please remove the 'needs- upstream- testing' tag. This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs- upstream- testing' text. Please let us know your results.
Thanks in advance.
[This is an automated message. Apologies if it has reached you inappropriately; please just reply to this message indicating so.]