Page 1 of 1

Linux drivers under ARM

PostPosted: Mon Jan 11, 2021 11:19 pm
by Trupik
Hello,
have someone tested compilation of linux drivers for TBS PCI-e TV runer cars for ARM based system? If yes - what result? Some problems? Tips?

Re: Linux drivers under ARM

PostPosted: Tue Jan 12, 2021 10:25 am
by steven
hi sir

we have tested a lot of ARM board such as RPI, and some marvel , freescable ARM which works well
viewtopic.php?f=86&t=25151
where you want to use ?

Thanks

Kind Regards

steven

Re: Linux drivers under ARM

PostPosted: Tue Jan 12, 2021 11:42 pm
by Trupik
Hi,
thanks 4 reply. I know this thread, but it's about USB devices. I'm thinking about TV to LAN streaming server based on ROCKPro64 or NanoPi M4v2 (booth based on RK3399) and PCIe card TBS6205 (T2) or TBS6905 (S2). Booth boards have PCIe.
Is there any difference between USB and PCIe based tuners?

Thank you,
T.

Re: Linux drivers under ARM

PostPosted: Thu Jan 14, 2021 2:54 pm
by steven
Hi Sir

For PCIE we are not sure ,for streaming maybe you can check our MOIPro-AMD with tuner card inside ,more better : )

Thanks

Kind regards

steven

Re: Linux drivers under ARM

PostPosted: Thu Jan 14, 2021 4:39 pm
by Trupik
Hello,
thanks for reply.MOIPro looks very nice, for hotel or office building. I want solution for small home (3TV's + PC), where device like MOIPro can be little bit overkill. I have booth TV tuners already home, now i'm waiting for RockPro board with PCIe, so i try to make some tests ;)

Re: Linux drivers under ARM

PostPosted: Sat Mar 27, 2021 2:16 am
by Trupik
Hello again!

after long time, all parts are together :)
My first problem:
Code: Select All Code
root@rockpro64:~# lspci
00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd RK3399 PCI Express Root Port
01:00.0 Multimedia controller: TBS Technologies DVB-S2 4 Tuner PCIe Card
root@rockpro64:~#

DVB-T tuner (6205) is displayed like DVB-S2 tuner...?!?

And drivers compilation is buggy too :(

Re: Linux drivers under ARM

PostPosted: Mon Mar 29, 2021 10:43 am
by steven
your package maybe not the latest one , this is our latest log

04:01.0 PCI bridge: Pericom Semiconductor PI7C9X2G304 EL/SL PCIe2 3-Port/4-Lane Packet Switch (rev 05)
04:02.0 PCI bridge: Pericom Semiconductor PI7C9X2G304 EL/SL PCIe2 3-Port/4-Lane Packet Switch (rev 05)
05:00.0 Multimedia controller: TBS Technologies DVB Tuner PCIe Card
06:00.0 Multimedia controller: TBS Technologies DVB Tuner PCIe Card


Thanks

kind Regards

Re: Linux drivers under ARM

PostPosted: Wed Mar 31, 2021 1:22 am
by Trupik
Hey!
Success! RPi package looks like useless with Rockchip based devies (standard offline package is x86 only), so i tried to build new drivers from sources. It's not easy, under ARM, but with big help of Google I was able to build my own driver 8-)

Some info for other people:
HW setup:
  • Pine 64 RockPro64, 4GB RAM, 6core RK3399, PCIe x4,...
  • 32GB eMMC
  • Tuner TBS 6205 (PCI based quad DVB-T/T2/C)
  • Noname 12@4A wall adaptor

SW setup:
  • Armbian Buster 21.02.3 - for Rockpro64 kernel 5.10.21
  • Open Source drivers

* - Armbian with 4.x kernel isn't able to boot with this TV tuner in slot.. :shock:

Building process is very simillar to "standard" process described in Git Wiki.

In my case step "make -j4" failed with two errors about missing file rkisp1-config.h. This file isn't in media_build/linux/include/uapi/linux, but in /home/scritch/tbsdtv/media/include/uapi/linux/

Tried to copy this file to right folder with:
cp media/include/uapi/linux/rkisp1-config.h media_build/linux/include/uapi/linux
but without succes (I dont know why this failed) - so i copy this file step by step like cp media/include/uapi/linux/rkisp1-config.h ../ to the "/" folder and from here again step by step to right folder.

From now - command "make -j4" can finish his job without error :mrgreen:

NOTE: compiling is soo sloooow and CPU get soo hot! Don't forget about cooling!

Code: Select All Code
root@rockpro64:~# lspci -v
00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd RK3399 PCI Express RootPort (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0, IRQ 78
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
        I/O behind bridge: 00000000-00000fff
        Memory behind bridge: fa000000-fa0fffff
        Prefetchable memory behind bridge: 00000000-000fffff
        Capabilities: [80] Power Management version 3
        Capabilities: [90] MSI: Enable+ Count=1/1 Maskable+ 64bit+
        Capabilities: [b0] MSI-X: Enable- Count=1 Masked-
        Capabilities: [c0] Express Root Port (Slot+), MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [274] Transaction Processing Hints
        Kernel driver in use: pcieport

01:00.0 Multimedia controller: TBS Technologies DVB-S2 4 Tuner PCIe Card
        Subsystem: TBS Technologies (wrong ID) DVB Tuner PCIe Card (TBS6205 DVB-T2/T/C Quad TV Tuner PCIe Card)
        Flags: bus master, fast devsel, latency 0, IRQ 94
        Memory at fa000000 (32-bit, non-prefetchable) [size=256K]
        Capabilities: [50] Power Management version 3
        Capabilities: [70] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [90] Express Endpoint, MSI 00
        Capabilities: [100] Device Serial Number 00-00-00-00-00-00-00-00
        Kernel driver in use: TBSECP3 driver
        Kernel modules: tbsecp3

root@rockpro64:~#


From now i have nice, powerfull (but energy efficient) TV -> LAN straming server for my living home. TV Headend based. With much better image quality compared to my previous USB-based tuners server. Power consumption in idle is less than 7W (minimum what can my wall plug measure), 8-10W with one FHD channel streaming.

Sorry for ground picture - short cables :oops:

Re: Linux drivers under ARM

PostPosted: Wed Apr 07, 2021 8:43 pm
by crazycat
Tested on similar setup, just disable ROCKCHIP_ISP1 in build config (make menuconfig).
P.S. current media_build support 4.4+ kernels.