[mythtv-users] Getting it to Work > Hauppauge WinTV-quadHD (DVB-T/T2/C)

Stephen Worthington stephen_agent at jsw.gen.nz
Thu Nov 10 02:23:49 UTC 2016


On Thu, 10 Nov 2016 08:36:19 +1100, you wrote:

>On Tue, Nov 1, 2016 at 5:21 PM, Glen Adamson <glengilesa at gmail.com> wrote:
>
>> Thank you, I have emailed Hauppauge and enclosed the kern.log file to them
>> and to you.
>>
>> The kernel log has a line that includes "warning: unknown hauppauge model
>> #166201". The one I ordered was #01609.
>>
>> Glen
>>
>> I emailed Hauppauge with the following:
><<<<<<<<<<< QUOTE >>>>>>>>>>>
>
>...
>
>Computer: HP i5 Compaq 8100 64bit.
>
>OS: mythbuntu 16.04.
>
>Kernel: 4.8.5-040805-generic.
>
>Application: MythTV 0.28.
>
>Country: Australia DVB/T2/C.
>
>
>
>Installed the PCIe board.
>
>Copied the firmware dvb-demod-si2168-b40-01.fw to /lib/firmware/ and
>installed kernel 4.8 to get the required driver.
>
>
>Your Linux Support shows the lspci output to be as follows:
>
><quote>
>lspci -v
>04:00.0 Multimedia video controller: Conexant Systems, Inc. CX23887/8 PCIe
>Broadcast Audio and Video Decoder with 3D Comb (rev 04)
>Subsystem: Hauppauge computer works Inc. Device 6a18
>Flags: bus master, fast devsel, latency 0, IRQ 19
>Memory at fd200000 (64-bit, non-prefetchable) [size=2M]
>Capabilities: <access denied>
>Kernel driver in use: cx23885
>05:00.0 Multimedia video controller: Conexant Systems, Inc. CX23887/8 PCIe
>Broadcast Audio and Video Decoder with 3D Comb (rev 04)
>Subsystem: Hauppauge computer works Inc. Device 6a18
>Flags: bus master, fast devsel, latency 0, IRQ 16
>Memory at fd000000 (64-bit, non-prefetchable) [size=2M]
>Capabilities: <access denied>
>Kernel driver in use: cx23885
>
></quote>
>
>But my lspci system output is:
><quote>
>lspci -v
>
>1a:00.0 Multimedia video controller: Conexant Systems, Inc. CX23885 PCI
>Video and Audio Decoder (rev 03)
>
>    Subsystem: Hauppauge computer works Inc. CX23885 PCI Video and Audio
>Decoder
>
>    Flags: bus master, fast devsel, latency 0, IRQ 17
>
>    Memory at f0800000 (64-bit, non-prefetchable) [size=2M]
>
>    Capabilities: <access denied>
>
>    Kernel driver in use: cx23885
>
>    Kernel modules: cx23885
>
>1b:00.0 Multimedia video controller: Conexant Systems, Inc. CX23885 PCI
>Video and Audio Decoder (rev 03)
>
>    Subsystem: Hauppauge computer works Inc. CX23885 PCI Video and Audio
>Decoder
>
>    Flags: bus master, fast devsel, latency 0, IRQ 18
>
>    Memory at f0600000 (64-bit, non-prefetchable) [size=2M]
>
>    Capabilities: <access denied>
>
>    Kernel driver in use: cx23885
>
>    Kernel modules: cx23885
>
></quote>
>
>I expected version (rev 04) but I got (rev 03) above and note that
>Linux Support
>chip PI7C9X2G304 is NOT listed below:
><quote>
>
>lsmod
>Module    Size     Used by
>si2157    16384   4
>si2168    20480   4
>cx23885 176128 1
>...
></quote>
>
>...
>
><<<<<<<<<<< /QUOTE >>>>>>>>>>>
>
>
>and have received the following one line reply:
>
>"At this time we have only tested kernel 4.4. Have you tried the patch
>attached? "
>
>
>The patch is attached.
>
>
>Installing the patch is well outside my understanding of Linux,  I need
>explicit step by step help to achieve a change to the kernel.
>
>Should I revert back to kernel 4.4 as the very first action?
>
>
>Glen

The patch looks pretty straightforward - it just adds the new code for
your card (ATSC and DVB-T version), rather than changing any old code.
So it is not unlikely to work with later kernels.  It would certainly
be worth trying with your current kernel's source code.  If that does
not work, then you can change to the 4.4.15 kernel that patch file was
made for.

The patch is not really on the kernel itself, it is for the Video for
Linux code (V4L), which is also available as a separate set of source
code and can be compiled (and patched) and installed on top of an
existing kernel - all the V4L drivers installed by the original kernel
install are deleted and replaced by the new V4L drivers.  It is
possible that the patch has already been incorporated into the later
V4L code, so it would be worth downloading a recent version and
checking that.  The instructions for V4L are here:

https://www.linuxtv.org/wiki/index.php/How_to_Obtain,_Build_and_Install_V4L-DVB_Device_Drivers

The first thing I would try would be seeing if the recent V4L code has
the patch already, and if it does not, seeing if the patch can be
applied to that and then compiling and installing just the new V4L,
rather than doing a complete kernel compile.  It takes long enough to
do a V4L compile - a complete kernel takes ages, even when doing it on
a fast SSD with a fast multicore CPU.

If just patching V4L is not possible, then you can try patching a full
kernel.  There are various guides for applying patches to kernels. For
Ubuntu, the "official" guide to building a kernel is here:

https://help.ubuntu.com/community/Kernel/Compile

You will need to apply the patch file to the source code before
building it (kernel or V4L).  That is done with a patch command like
this:

cd /the/correct/directory
patch <quad_atsc_dvbt_4.4.15.patch

You may need to use a -p option on the patch command to get the levels
of directory to match (see man patch).  In which case it would look
something like this:

cd /the/correct/directory
patch -p1 <quad_atsc_dvbt_4.4.15.patch

The patch command will tell you if it has any problems applying the
patch.  If it says the patch is OK, it is still best to check the file
locations where the patch was done to see if it looks OK, the first
time you try the patch.  Then go on with the build and install
procedure.


More information about the mythtv-users mailing list