oe-alliance / oe-alliance-plugins

required oe-alliance plugins
Other
37 stars 138 forks source link

GigaBlue UHD QUAD 4K blindscan not working with GIGA DVB-S2X NIM (TS3L10) #657

Open crusty-dave opened 1 year ago

crusty-dave commented 1 year ago

The blindscan plugin isn't working with the add-on tuner for the GigaBlue UHD QUAD 4K receiver. Note that this is on C-band as well as Ku-band. I am running OpenATV 7.1 (12/28/2022).

I am willing to debug it, but I am not sure how start? First I want to build the existing code and add some debug logging.

1) How do I build the code on my Ubuntu 20.04 LTS laptop?

NIM Socket 8:
        Type: DVB-S2X
        Name: GIGA DVB-S2X NIM (TS3L10)
        Has_Outputs: no
        Frontend_Device: 8
        I2C_Device: 4
NIM Socket 9:
        Type: DVB-S2X
        Name: GIGA DVB-S2X NIM (TS3L10)
        Has_Outputs: no
        Frontend_Device: 9
        I2C_Device: 4

There is also the following exception when performing blindscan on C-band, I suspect that this is in the gigablue_blindscan driver:

Jan  8 20:12:46 gbquad4k kern.warn kernel: [250675.765404] dvb dvb.0: DVB: adapter 0 frontend 0 symbol rate 0 out of range (1000000..45000000)

Jan  8 20:13:34 gbquad4k kern.crit kernel: [250723.337281] BUG: unsupported FP instruction in kernel mode
Jan  8 20:13:34 gbquad4k kern.emerg kernel: [250723.342873] Internal error: Oops - undefined instruction: 0 [#2] SMP ARM
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.349667] Modules linked in: dvb(O) nexus(PO) xfs libcrc32c ext2
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.356017] CPU: 0 PID: 10379 Comm: gigablue_blinds Tainted: P      D    O    4.1.20-1.9 #1
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.364463] Hardware name: Broadcom STB (Flattened Device Tree)
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.370475] task: dce76640 ti: dc306000 task.ti: dc306000
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.375973] PC is at vfp_reload_hw+0x30/0x44
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.380335] LR is at __und_usr_fault_32+0x0/0x8
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.384957] pc : [<c000abb8>]    lr : [<c0013e40>]    psr: a00b0013
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.384957] sp : dc307fb0  ip : be8cca00  fp : 00000000
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.396618] r10: dc3061f8  r9 : c0013e9c  r8 : d68289a4
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.401934] r7 : 00000001  r6 : d6828000  r5 : bf228b88  r4 : d61340f8
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.408554] r3 : c0987054  r2 : b6fb132c  r1 : dbad7180  r0 : f421070d
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.415176] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.422405] Control: 30c5387d  Table: 09f1a980  DAC: fffffffd
Jan  8 20:13:34 gbquad4k kern.emerg kernel: [250723.428243] Process gigablue_blinds (pid: 10379, stack limit = 0xdc306210)
Jan  8 20:13:34 gbquad4k kern.emerg kernel: [250723.435212] Stack: (0xdc307fb0 to 0xdc308000)
Jan  8 20:13:34 gbquad4k kern.emerg kernel: [250723.439660] 7fa0:                                     be8cca00 be8cc980 00000028 0000000c
Jan  8 20:13:34 gbquad4k kern.emerg kernel: [250723.447932] 7fc0: 00000028 be8cca00 be8cc9cf be8cc980 be8cc9a8 00000009 00000000 be8cc9fc
Jan  8 20:13:34 gbquad4k kern.emerg kernel: [250723.456205] 7fe0: be8cca00 be8cc980 b6fa2f64 b6fb132c 800b0010 ffffffff 00000000 00000000
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.464484] [<c000abb8>] (vfp_reload_hw) from [<0000000c>] (0xc)
Jan  8 20:13:34 gbquad4k kern.emerg kernel: [250723.470585] Code: 128aa080 e89a0162 e3110102 0a000003 (eee96a10) 
Jan  8 20:13:34 gbquad4k kern.warn kernel: [250723.476775] ---[ end trace 4b5d4d18c1ce1d63 ]---
Jan  8 20:13:36 gbquad4k kern.warn kernel: [250725.625276] dvb dvb.0: DVB: adapter 0 frontend 0 symbol rate 0 out of range (1000000..45000000)

Is the source for the GigaBlue driver available or is is proprietary?

atvcaptain commented 1 year ago

I can ask the new driver engineer

crusty-dave commented 1 year ago

Thanks, I should have also pointed out that the exception is from C-band blind-scan with the embedded FBC tuner.

Type: DVB-S2X
Name: DVB-S2X NIM(45308X FBC)

Attempting any blind-scan with the add-on tuner never starts.

That is what I need to debug.

Huevos commented 1 year ago

As far as I know there has never been binary support from the manufacturers for any FBC tuner, and that is assuming the hardware is even capable. https://github.com/oe-alliance/oe-alliance-plugins/blob/master/Blindscan/src/plugin.py#L82

crusty-dave commented 1 year ago

It sometimes seems to work with the FBC tuner, perhaps because it is skipping it and going directly to the TS3L10?

However, please ignore the FBC issue, I want to debug the GIGA DVB-S2X NIM (TS3L10) tuner, which is not FBC.

How do I build the plug-in? I would like to only build the plug-in and not the entire STB image (if possible).

A pointer to a URL describing the process is all that I require. A web search yielded confusing results.

crusty-dave commented 1 year ago

I would like to help with blind-scan, but I need build instructions first. I guess it is a closed community... :(

jbleyel commented 1 year ago

You need nothing special if you want to debug the plugin because it’s python only.