Hauppauge DualHD not found on Vero4K

Do you mind if we pick this up in a couple of weeks when we make 4.9 available for testing (I’ll start a thread on this forum)?

Not at all :-). Thanks for everything.

1 Like

I’ve added this to 4.9 – a couple of hunks didn’t apply but I was able to resolve these issues, but unfortunately it doesn’t quite build.

drivers/media/usb/em28xx/em28xx-cards.c: In function ‘em28xx_init_dev’:
drivers/media/usb/em28xx/em28xx-cards.c:3378:16: error: ‘struct em28xx’ has no member named ‘intf’
   dev_info(&dev->intf->dev,
                ^
./include/linux/device.h:1197:46: note: in definition of macro ‘dev_info’
 #define dev_info(dev, fmt, arg...) _dev_info(dev, fmt, ##arg)
                                              ^
drivers/media/usb/em28xx/em28xx-cards.c:3381:16: error: ‘struct em28xx’ has no member named ‘intf’
   dev_info(&dev->intf->dev, "chip ID is %s\n", chip_name);
                ^
./include/linux/device.h:1197:46: note: in definition of macro ‘dev_info’
 #define dev_info(dev, fmt, arg...) _dev_info(dev, fmt, ##arg)
                                              ^
drivers/media/usb/em28xx/em28xx-cards.c: In function ‘em28xx_duplicate_dev’:
drivers/media/usb/em28xx/em28xx-cards.c:3448:17: error: ‘struct em28xx’ has no member named ‘intf’
    dev_warn(&dev->intf->dev, ": Supports only %i em28xx boards.\n",
                 ^
In file included from ./include/linux/i2c.h:30:0,
                 from drivers/media/usb/em28xx/em28xx-cards.c:30:
drivers/media/usb/em28xx/em28xx-cards.c: In function ‘em28xx_usb_probe’:
drivers/media/usb/em28xx/em28xx-cards.c:3820:17: error: ‘struct em28xx’ has no member named ‘intf’
    dev_info(&dev->intf->dev, "dvb ts2 set to %s mode.\n",
                 ^
./include/linux/device.h:1197:46: note: in definition of macro ‘dev_info’
 #define dev_info(dev, fmt, arg...) _dev_info(dev, fmt, ##arg)
                                              ^
drivers/media/usb/em28xx/em28xx-cards.c: In function ‘em28xx_usb_disconnect’:
drivers/media/usb/em28xx/em28xx-cards.c:3891:16: error: ‘struct em28xx’ has no member named ‘intf’
   dev_info(&dev->intf->dev, "Disconnecting secondary device\n");

Will go back to it after initial 4.9 release.

Sam

Ahhh, bugger. Fixed, sorry for that. Also some more compilation issues with the NTSC variant. Now it builds for me, but it is still untested, sorry.

No problem. I’ve sent you a link to our latest 4.9 drop – currently in rebase hell…

Hello Kicker Tom,
just found your article yesterday. I’m sharing the same problem. I got an Dreambox DM920 with Linux 3.14 kernel. Everything you’ve discribed is quite the same to me. The only thing I don’t have is a another arm Linux device with higher kernel like your RPi3B+. So I come to my question: Is it possible you can send me your patched driver which worked for you or how you’ve done it to make it work. ( my knowledge about Linux is quite low as I’m just a user) Thank you in advance…

Hello,
yes, I can send you my kernel module in the evening, when I get back home. However, if you are not in a rush, I sent my changes to Sam for integration in next kernel version. So as soon as the 4.9 kernel is released (hopefully soon), everything should work out of the box again.

Thank you very much. I’m not on the run, so take you all time you need…

Here are the modules I am using:
https://www.transfernow.net/PUOUM2022020
No idea if the dreambox is the same architecture as vero4k+ or if the kernel is the same. I have the files in /lib/modules/3.14.29-156-osmc/kernel/drivers/backport - do a backup of the old files first, run depmod afterwards and load the module (or reboot).
If the architecture or kernel is different, you will need to rebuild them. That will be quite a bit more involved, and if you don’t have much experience with that, I would recommend waiting for official update or contacting your vendor. I can send you my patched sources, but I have no idea if and where you can find kernel for dreambox and how to build it…

Hello,
thank you for your sending. Unfortunately - that is my fault not to mention - your Vero4K+ is an AMLogic S905D Quad Core 1.6GHz 64-bit ARMv4 device and the DM920 is 32-bit armfh, so the driver doesn’t fit. No idea how to compile the source on the Dream. Nethertheless it was just a try and now I’ve to wait for a new kernel…
Thanks again

Unless DreamBox have provided you with kernel sources and a toolchain, you may be out of luck…

Then my binaries are of no use to you. Also, my note that a new kernel should come soon was related to vero, not your dream. I can send you patched sources, but you would need original kernel sources and toolchain. Your best bet would be to contact the dream manufacturer (after all, they are obligated to provide kernel sources by law for GPL licensed linux kernel, but after a quick search on https://dreambox.de, I haven’t found any link for download, best bet would be to write them), or alternatively look around the internet, I would guess someone already got the sources and started doing some hacking (e.g. I found
opendreambox · GitHub, which looks like it might be even the original firmware after all).

This is all very technical and that so this might sound a stupid question. Does this mean the tuner stick will work out of the box with the Vero 4k+ once it has the 4.9 kernel? Thanks.

There are serveral images for the dreambox available for years, f.e. OpenATV, which was originally iniciated to get the dream-clones work. Unfortunately OpenAtv themselfs are not very “open” with their sources and feeds. So theoretically I can do it. But looking around on the net I found nothing next to my needs. What is dicussed around GitHub is somewhat for “freaks”. To understand evrything delivered there, my Linux-experience is too low. I knew that you are talking about the Vero-kernel being upgraded, but for the dream there should be something similar coming in the near future - hopefully. I have to look around in my neighbourhood to find someone with armfh-hardware which could run debian. Again, thanks a lot.

Yes, that is the plan.

1 Like

Well, if you are thinking about compiling the module for the dreambox, then you don’t need armhf hardware, you can cross-compile for armhf on any linux PC. Bigger issue is that it might be difficult to build working driver without proper kernel configuration or sources matching your kernel…

Thanks for the reply! I’ll keep my eye out

Hello KickerTom,

I hope you’re still well and not been hit by corona in any way…

It’s quiet a while working around with crosscompiling on different installations. But at all nothing works really well, depending on my rare knowledge on linux. So I forgot this target a bit. Now, as I got the time because of corona, I got Debian buster running on my dreambox. So I want to give it another try of compiling the source directly for the armhf platform. Therefor it would be quiet helpful if you could send me the source for em28xx , em28xx-dvb - if that would be possible after 1 year of silence? Thank you very much in advance. Stay healthy…

best regards

Well, everything is possible :-), but I am unsure what are you asking me to do. The files you mention are not my creation, I just merged some changes from newer version of linux (version running on Raspberry Pi) into Vero kernel sources. So you can check the files in either raspberry pi (kernel I used was Linux osmc 4.14.78-4-osmc), or in new vero 4.9 kernel. Also, the two files mentioned are not enough to get the thing running. there are more changes in more files needed.
You wrote you have debian buster running on the dreambox. Which kernel version do you have? Is there a newer version of debian for dreambox? If you manage to get newer kernel, the driver should be there by default, saving you a lot of work…

FYI, support for VID:PID 2040:8265 was introduced in kernel 4.17: Linux Kernel Driver DataBase: CONFIG_VIDEO_EM28XX: Empia EM28xx USB devices support