Kernel modules missing for the PCTV 292e DVB stick

No. I could never get it to work unfortunately. At least not reliably.
I contacted PCTV three times but no response. I’ll see if I can find an early DKMS driver and backport, but I’m not sure how promising this will be to be honest.

Sam

Sigh, too bad. Are there any news on the 4.x kernel upgrade AMlogic reportedly worked on? Do you have any hope for that upgrade in the foreseeable future?

There’s a 4.9 branch here, but a few things don’t work: GitHub - osmc/vero3-linux at 4.9.

It’s probably going to be easier and quicker for us to fix the DVB issues than wait for AMLogic.

Cheers

Sam

Hi there,

Any progress with this fix?

Thanks and happy new year

Some, yes, but we haven’t been testing it on a stick by stick basis

Sam

Thanks for the update.

Looking forward to having a fix soon.

Thanks for all the work.

Progress with 3.14.29-96-osmc: the USB interface gets loaded…

[  195.830266] usb 1-2: new high-speed USB device number 2 using xhci-hcd
[  195.970725] usb 1-2: New USB device found, idVendor=2013, idProduct=025f
[  195.970737] usb 1-2: New USB device strings: Mfr=3, Product=1, SerialNumber=2
[  195.970742] usb 1-2: Product: PCTV 292e
[  195.970747] usb 1-2: Manufacturer: PCTV
[  195.970752] usb 1-2: SerialNumber: MYSERIALHERE
[  196.014963] em28xx 1-2:1.0: New device PCTV PCTV 292e @ 480 Mbps (2013:025f, interface 0, class 0)
[  196.014976] em28xx 1-2:1.0: DVB interface 0 found: isoc
[  196.015066] em28xx 1-2:1.0: chip ID is em28178
[  198.006896] em28xx 1-2:1.0: EEPROM ID = 26 00 01 00, EEPROM hash = 0xa81bf604
[  198.006907] em28xx 1-2:1.0: EEPROM info:
[  198.006913] em28xx 1-2:1.0: 	microcode start address = 0x0004, boot configuration = 0x01
[  198.013130] em28xx 1-2:1.0: 	AC97 audio (5 sample rates)
[  198.013143] em28xx 1-2:1.0: 	500mA max power
[  198.013150] em28xx 1-2:1.0: 	Table at offset 0x27, strings=0x146a, 0x1888, 0x0a7e
[  198.013352] em28xx 1-2:1.0: Identified as PCTV tripleStick (292e) (card=94)
[  198.013361] em28xx 1-2:1.0: dvb set to isoc mode.
[  198.013509] usbcore: registered new interface driver em28xx
[  198.054628] em28xx 1-2:1.0: Registering input extension
[  198.054877] rc rc0: 1-2:1.0 IR as /devices/c9000000.dwc3/xhci-hcd.0.auto/usb1/1-2/1-2:1.0/rc/rc0
[  198.110223] Registered IR keymap rc-pinnacle-pctv-hd
[  198.110739] input: 1-2:1.0 IR as /devices/c9000000.dwc3/xhci-hcd.0.auto/usb1/1-2/1-2:1.0/rc/rc0/input2
[  198.110893] em28xx 1-2:1.0: Input extension successfully initalized
[  198.110902] em28xx: Registered (Em28xx Input Extension) extension

Yet the demodulator (Silicon Labs Si2168-40) and tuner (Silicon Labs Si2157-30) are still missing…

Firmware needed, I would think.

Nope, all installed. It’s just not recognized (see above for how it should look like).

I see.

Hi @sam_nazarko,

since there is progress on this very chip family (see above), I’m wondering how that came about. You clearly added back the em28xx USB interface since you removed/downgraded it after your previous attempt. Which upstream kernel or source tree version did you use as the base for your latest media_build backports that ended up in kernel 3.14.29-96-osmc? Since the 292e is correctly identified now it means that its dependencies are satisfied as well, and indeed, at least the si2157 kernel module is installed on my Vero.

However, the current config lacks the necessary CONFIG_DVB_SI2168 entry to include the demodulator (the sources are there). So it could potentially be as easy as adding that to support this stick :thinking:

It’s great to see you got a handle on those DVB backports now. Thanks for all the effort you put into this so far. Hopefully we can go that extra mile (probably just a millimeter?) to close the gap on this one as well.

Cheers

I don’t think this module is available in the current media tree sources. There are new trees available but they have problems, as we found before.

There were a couple of modules that had building problems, but I don’t believe this applied to CONFIG_DVB_SI2168

Hm, not sure I understand. What exactly are you referring to by “this module”? Also which version exactly do you mean by the “current” media tree? And do you mean “media tree” (upstream LinuxTV 4VL DVB) or “media build” (4VL backports)? The current upstream media tree does contain all required drivers for the 292e.

If I look into what I presume is your media build tree the three modules in question are part of it. That’s why it appears to me as a missing config issue, not one of principle module availability.

That said, I’m still wondering which version of the media tree you managed to integrate in the 3.14.29-96-osmc as the USB interface is now clearly working again. It would be very helpful if you could point me to it. Ideally I would be able to reproduce your media build tree and go from there - for debugging and testing purposes.

Thanks in advance

Update: the current media build config also doesn’t enable the CONFIG_VIDEO_EM28XX_DVB extension despite its general availability as indicated by the “is not set” marker (via make oldconfig I presume). I think that’s why the latest dmesg doesn’t include the line em28xx 1-2:1.0: Binding DVB extension as it did earlier. That might also explain why the demodulator/tuner modules aren’t loaded. But then again, for this to work CONFIG_DVB_SI2168=m needs to be added first.

This version was completely broken

Might do the trick. Won’t rebuild just yet as meson-ir is still broken

Sam

Thanks Sam!

Any reason for not adding CONFIG_DVB_SI2168=m despite your belief that it didn’t cause build issues?

Cheers

It’s not present in this media tree.

If by “this media tree” you refer to vero3-linux:media_build/linux/linux-media.tar.bz2 then I can only say that that tarball does contain all source code files for the SI2168 which are build by drivers/media/dvb-frontends/Makefile (via CONFIG_DVB_SI2168) and the config setting is in turn defined in drivers/media/dvb-frontends/Kconfig (as DVB_SI2168).

What am I missing?

Update: CONFIG_VIDEO_EM28XX_DVB you just added might select CONFIG_DVB_SI2168 as well (if MEDIA_SUBDRV_AUTOSELECT is enabled), as defined in drivers/media/usb/em28xx/Kconfig. Nevertheless, CONFIG_DVB_SI2168 should still be present on its own.

Cheers

Working on meson-ir still, then I will give it a bump and build/

Nice one!

Thanks