You are not logged in.

#1 2019-02-09 19:27:05

mz
Member
Registered: 2015-07-11
Posts: 14

[SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

[EDIT] Forums for other distributions are reporting a similar problem with many devices. The common dmesg entry is:

usb 2-2: couldn't get decoder output pad for V4L I/O

It seems to be a problem in the kernel related to building a media graph.

Corresponding RedHat bug: https://bugzilla.redhat.com/show_bug.cgi?id=1669359

[Original post follows]

It works fine on 4.19.11-arch1-1-ARCH but only partially initializes on 4.20. Here is a dmesg:

[607812.674787] usb 2-2: new high-speed USB device number 2 using xhci_hcd
[607812.819882] usb 2-2: New USB device found, idVendor=2040, idProduct=b123, bcdDevice=40.01
[607812.819888] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[607812.819891] usb 2-2: Product: Hauppauge Device
[607812.819894] usb 2-2: Manufacturer: Hauppauge
[607812.819897] usb 2-2: SerialNumber: 4036046040
[607812.869683] media: Linux media interface: v0.10
[607812.898948] videodev: Linux video capture interface: v2.00
[607812.941971] cx231xx 2-2:1.1: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:b123) with 7 interfaces
[607812.942391] cx231xx 2-2:1.1: Identified as Hauppauge WinTV-HVR-955Q (111401) (card=21)
[607812.943687] i2c i2c-13: Added multiplexed i2c bus 15
[607812.943729] i2c i2c-13: Added multiplexed i2c bus 16
[607813.130032] cx25840 12-0044: cx23102 A/V decoder found @ 0x88 (cx231xx #0-0)
[607815.507781] cx25840 12-0044: loaded v4l-cx231xx-avcore-01.fw firmware (16382 bytes)
[607815.608723] tveeprom: Hauppauge model 111401, rev E3I6, serial# 4036046040
[607815.608726] tveeprom: MAC address is 00:0d:fe:91:2c:d8
[607815.608728] tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4)
[607815.608730] tveeprom: TV standards NTSC(M) ATSC/DVB Digital (eeprom 0x88)
[607815.608731] tveeprom: audio processor is CX23102 (idx 47)
[607815.608732] tveeprom: decoder processor is CX23102 (idx 46)
[607815.608733] tveeprom: has no radio, has IR receiver, has no IR transmitter
[607815.608738] cx231xx 2-2:1.1: v4l2 driver version 0.0.3
[607815.695732] cx231xx 2-2:1.1: Unknown tuner type configuring SIF
[607815.738856] cx231xx 2-2:1.1: Registered video device video0 [v4l2]
[607815.738987] cx231xx 2-2:1.1: Registered VBI device vbi0
[607815.738994] cx231xx 2-2:1.1: video EndPoint Addr 0x84, Alternate settings: 5
[607815.738998] cx231xx 2-2:1.1: VBI EndPoint Addr 0x85, Alternate settings: 2
[607815.739002] cx231xx 2-2:1.1: sliced CC EndPoint Addr 0x86, Alternate settings: 2
[607815.739006] cx231xx 2-2:1.1: TS EndPoint Addr 0x81, Alternate settings: 6
[607815.739019] usb 2-2: couldn't get decoder output pad for V4L I/O
[607815.739022] cx231xx 2-2:1.1: V4L2 device vbi0 deregistered
[607815.739176] cx231xx 2-2:1.1: V4L2 device video0 deregistered
[607815.739695] cx231xx: probe of 2-2:1.1 failed with error -22
[607815.739796] usbcore: registered new interface driver cx231xx

and there is no dvb device:
$ ls -l /dev/dvb
ls: cannot access '/dev/dvb': No such file or directory

Last edited by mz (2019-03-30 18:56:32)

Offline

#2 2019-02-09 20:25:38

seth
Member
Registered: 2012-09-03
Posts: 12,332

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

I'm gonna say https://github.com/torvalds/linux/commi … 58f98ba27d broke it.
Can you build a kernel w/ that patch reversed and see whether it's fixed?

Offline

#3 2019-02-09 20:43:25

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

OK, but it's been 5 or 10 years since I bothered to build a kernel. Should I start from github sources or is there a more arch-centric way?

Offline

#4 2019-02-09 20:58:21

loqs
Member
Registered: 2014-03-06
Posts: 8,475

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

You could use the PKGBUILD for the linux package or the linux-git PKGBUILD from AUR.
If you do not want to use a PKGBUILD the git repo hosted on kernel.org or its github mirror.
kernel.org also provides a tarball that is now unsigned from although then you would need to also download the commit separately to revert it.

Offline

#5 2019-02-09 21:25:51

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

Building now from github source tag v4.20 with the patch reverted.

Offline

#6 2019-02-09 22:12:49

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

Reverting that one patch makes current source uncompilable. I guess this is a job for git-bisect, unless you have a better idea.

Offline

#7 2019-02-10 01:07:30

loqs
Member
Registered: 2014-03-06
Posts: 8,475

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

What was the build error?

Offline

#8 2019-02-10 01:35:54

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

I don't recall exactly, but other code depended on the new function, which was now gone, and I had no interest in going down that rabbit hole.

Offline

#9 2019-02-10 01:46:32

loqs
Member
Registered: 2014-03-06
Posts: 8,475

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

Apart from the bisect you could try https://github.com/torvalds/linux/commi … fb4a3ef097 the parent of the commit seth indicated.
If that works and then applying the suspected commit fails that would prove it is the cause.

Offline

#10 2019-02-10 01:59:59

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

I'll try that first; much faster if the guess is correct.

Offline

#11 2019-02-10 02:20:45

loqs
Member
Registered: 2014-03-06
Posts: 8,475

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

If the commit still has the issue you can use that as your git bisect bad.

Offline

#12 2019-02-10 18:53:08

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

It looks like c1a37dd5e87dc6a4c37e5fc68d7b26fb4a3ef097 is bad so I will go backwards from there.

Offline

#13 2019-02-10 22:58:35

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

I think I am going to need some advice on finding out where to look for a good commit. Here is what I have done in git:

git clone https://github.com/torvalds/linux.git
cd linux
git checkout tags/v4.20 -b 4.20-debug

this, I am assuming, should get me the 4.20 branch (I could be wrong about that) but 'git log' is confusing since the commit times jump around and there is no apparent 'This is the start of 4.20' comment.

Offline

#14 2019-02-10 23:58:34

loqs
Member
Registered: 2014-03-06
Posts: 8,475

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

Should good not be v4.19 84df9525b0c27f3ebc2ebb1864fa62a97fdedb7d as you are experiencing the issue on 4.20?

Offline

#15 2019-02-12 02:24:27

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

seth: It turns out that your original assessment was correct. My initial tests were faulty because of mistakes I made with git. After I corrected my own ignorance git-bisect led right back here:

9d6d20e652c0d304f98de30d51805658f98ba27d is the first bad commit
commit 9d6d20e652c0d304f98de30d51805658f98ba27d
Author: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Date:   Tue Jul 31 09:22:40 2018 -0400

    media: v4l2-mc: switch it to use the new approach to setup pipelines
   
    Instead of relying on a static map for pids, use the new sig_type
    "taint" type to setup the pipelines with the same tipe between
    different entities.
   
    Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>

:040000 040000 59f811ec123cd341d1a2eb373cc3021a0cf7cbd0 440c12300f10877a82afebc1288955285b0e2701 M      drivers
:040000 040000 b351d0b1dff6731f79230d01d9d566efff69df21 fbfb9dee968c8869752063f8b1033c97fa34a35d M      include


Submitted bug 202565 to bugzilla.kernel.org

Last edited by mz (2019-02-12 02:41:11)

Offline

#16 2019-02-12 22:04:28

loqs
Member
Registered: 2014-03-06
Posts: 8,475

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

I would suggest checking 5.0-rc6 to see if it the issue has already been fixed.  If not before the release of 5.0 which will see developers busy with the next release consider
emailing linux-media@vger.kernel.org with a CC to the author of the commit as well as the Acked-by.

Last edited by loqs (2019-02-12 22:06:29)

Offline

#17 2019-02-13 02:52:22

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

Thanks for the idea; the bug is still present in 5.0-rc6. I will update bugzilla and send some emails.

Offline

#18 2019-02-14 01:54:02

slick517d
Member
Registered: 2013-01-15
Posts: 18

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

Try disabling MEDIA_CONTROLLER in config and recompiling the kernel. Worked for me on another kernel 5.0.0-rc1.

# CONFIG_MEDIA_CONTROLLER is not set

The patches dated 1-15 here may fix this in the future where MEDIA_CONTROLLER can be enabled again.

https://patchwork.linuxtv.org/project/l … itter=7220

Last edited by slick517d (2019-02-14 02:00:07)

Offline

#19 2019-02-14 03:33:17

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

There is a similar patch referenced in https://bugzilla.kernel.org/show_bug.cgi?id=202565 now. I tried it with 5.0-rc6 and it works. I don't know who adjudicates which patch makes it into the baseline but I guess I'll just wait and see since the solution is known.

Offline

#20 2019-02-14 17:53:21

slick517d
Member
Registered: 2013-01-15
Posts: 18

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

mz wrote:

There is a similar patch referenced in https://bugzilla.kernel.org/show_bug.cgi?id=202565 now. I tried it with 5.0-rc6 and it works. I don't know who adjudicates which patch makes it into the baseline but I guess I'll just wait and see since the solution is known.

Glad it works for you. I applied the 2 patches I posted above from the V4L team (linuxtv.org) and it works well. They are the main contributors to the linux kernel for media. Pretty much everything they do makes it to the kernel. I applied the patches and reversed the disabling in .config I had done 4 months ago. I noticed today in the AUR 5.0.0-rc6 config the had only had one line enabled involving the MEDIA_CONTROLLER and my original disabling involved two lines but I also scan in Satellites with my dvb devices:

CONFIG_MEDIA_CONTROLLER=y
CONFIG_MEDIA_CONTROLLER_DVB=y

I have followed the V4L development kernel for years because I am heavy into the satellite FTA and ATSC streams. Their kernel has all of the latest bug fixes / improvements before it is submitted to the linux kernel team. But it is also merged with another kernel that the dvb and OTA modules are patched that allows blindscan and a lot more features. I also maintain a gitlab repo where I have ported this kernel for a raspberry pi 2/3/3b+.

I use a program called updateDVB to do a Spectrum scan / Tuning / Streaming and launching vlc to play a stream. Here are a few pics showing what can be done with the kernel:

https://drive.google.com/file/d/1mkdjD8 … sp=sharing

Ray

Last edited by slick517d (2019-02-14 17:53:58)

Offline

#21 2019-03-21 14:45:48

slick517d
Member
Registered: 2013-01-15
Posts: 18

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

In case you have missed it The V4l patch made it upstream and is in the latest 5.1-rc1 kernel but it  looks like it may have been there since 5.0.0-rc7:

https://git.kernel.org/pub/scm/linux/ke … 8dc83b79ce

Interesting that the final patch only involves drivers/media/i2c/cx25840/cx25840-core.c and not drivers/media/usb/cx231xx/cx231xx-video.c

Offline

#22 2019-03-21 14:51:43

loqs
Member
Registered: 2014-03-06
Posts: 8,475

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

Offline

#23 2019-03-30 18:55:15

mz
Member
Registered: 2015-07-11
Posts: 14

Re: [SOLVED] Kernel 4.20.* does not register WinTV-HVR-955Q as dvb device

Verified fixed in 5.0.5-arch1-1-ARCH.

Last edited by mz (2019-03-30 18:56:45)

Offline

Board footer

Powered by FluxBB