10-26-2016, 10:47 AM
Hello,
I tried to compile the v4l-dvb (DVB-T) drivers for PINE64 (ARM64 running Debian jessie with custom kernel 3.10.104-1-pine64-longsleep #103). Currently the PINE64 kernel is still at 3.10 kernel, because of the SoC compatibility. I did follow the manual explanation for ubuntu at https://help.ubuntu.com/community/DVB-T_%28USB%29
PINE64 board specifications are:
http://linux-sunxi.org/Pine64
- SoC A64 @ 1152MHz
- DRAM 2GiB DDR3L @ 672MHz
- USB 2 x USB 2.0
- HDMI port
My storage is on a 64 GB micro-SD card.
The DVB-T USB dongle is a "RTL-SDR Blog R820T2 RTL2832U 1PPM TCXO SMA Software Defined Radio" from
http://www.rtl-sdr.com/buy-rtl-sdr-dvb-t-dongles/
After I compiled all drivers, I tried to load them with modprobe (I also tried to optionally rmmod all the other ir_* modules, which might be interfering) :
# modprobe rtl2832
# modprobe dvb_usb_rtl28xxu
# dmesg report is:
[59570.134994] usbcore: registered new interface driver dvb_usb_rtl28xxu
[59995.218466] lirc_dev: module unloaded
[60052.126759] usbcore: deregistering interface driver dvb_usb_rtl28xxu
[60070.533355] usb 1-1: dvb_usb_v2: found a 'Realtek RTL2832U reference design' in warm state
[60070.598372] usb 1-1: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
[60070.608807] dvbdev: DVB: registering new adapter (Realtek RTL2832U reference design)
[60070.621918] rtl2832 2-0010: Range 0: selector for 0 in window
[60070.628377] rtl2832: probe of 2-0010 failed with error -22
[60070.644011] usbcore: registered new interface driver dvb_usb_rtl28xxu
[60249.342718] usbcore: deregistering interface driver dvb_usb_rtl28xxu
[60304.611609] WARNING: You are using an experimental version of the media stack.
As the driver is backported to an older kernel, it doesn't offer
enough quality for its usage in production.
Use it with care.
Latest git patches (needed if you report a bug to linux-media@vger.kernel.org):
bd676c0c04ec94bd830b9192e2c33f2c4532278d [media] v4l2-flash-led-class: remove a now unused var
079933dbcb02132cc48ba052882fe0a9e3b0b762 [media] v4l: flash led class: Fix of_node release in probe() error path
c762ff1f7e3b09293c22ce62135ef550c1b3327c [media] coda: fix the error path in coda_probe()
[60304.702195] dvb_usb_rtl28xxu: `' invalid for parameter `rtl2832'
[60364.122409] usb 1-1: dvb_usb_v2: found a 'Realtek RTL2832U reference design' in warm state
[60364.192481] usb 1-1: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
[60364.209402] dvbdev: DVB: registering new adapter (Realtek RTL2832U reference design)
[60364.228000] rtl2832 2-0010: Range 0: selector for 0 in window
[60364.240827] rtl2832: probe of 2-0010 failed with error -22
[60364.262389] usbcore: registered new interface driver dvb_usb_rtl28xxu
[60681.746137] ehci_irq: highspeed device disconnect
[60681.756537] usb 1-1: USB disconnect, device number 3
[60688.754716] ehci_irq: highspeed device connect
[60688.981979] usb 2-1: new high-speed USB device number 2 using sunxi-ehci
[60689.158238] usb 2-1: dvb_usb_v2: found a 'Realtek RTL2832U reference design' in warm state
[60689.228550] usb 2-1: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
[60689.244639] dvbdev: DVB: registering new adapter (Realtek RTL2832U reference design)
[60689.262071] rtl2832 2-0010: Range 0: selector for 0 in window
[60689.274417] rtl2832: probe of 2-0010 failed with error -22
# lsusb -v
Bus 002 Device 002: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0bda Realtek Semiconductor Corp.
idProduct 0x2838 RTL2838 DVB-T
bcdDevice 1.00
iManufacturer 1 Realtek
iProduct 2 RTL2838UHIDIR
iSerial 3 00000001
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 34
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 4 USB2.0-Bulk&Iso
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 5 Bulk-In, Interface
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 5 Bulk-In, Interface
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 2
Device Status: 0x0000
(Bus Powered)
# lsmod
Module Size Used by
dvb_usb_rtl28xxu 25651 0
rtl2832 17781 0
dvb_usb_v2 17915 1 dvb_usb_rtl28xxu
dvb_core 90288 2 rtl2832,dvb_usb_v2
w1_gpio 12739 0
wire 23744 1 w1_gpio
cedar_ve 17368 0
ss 33083 0
mali 199851 0
8723bs 1365012 0
cfg80211 374207 1 8723bs
The end result is that the DVB-T device doesn't get successfully recognised, it has also failed running w_scan and exits with the error main:3916: FATAL: ***** NO USEABLE TERRESTRIAL CARD FOUND. *****
This error has also been submited to Linux kernel bugtracker - https://bugzilla.kernel.org/show_bug.cgi?id=183501
Regards,
Jan
I tried to compile the v4l-dvb (DVB-T) drivers for PINE64 (ARM64 running Debian jessie with custom kernel 3.10.104-1-pine64-longsleep #103). Currently the PINE64 kernel is still at 3.10 kernel, because of the SoC compatibility. I did follow the manual explanation for ubuntu at https://help.ubuntu.com/community/DVB-T_%28USB%29
PINE64 board specifications are:
http://linux-sunxi.org/Pine64
- SoC A64 @ 1152MHz
- DRAM 2GiB DDR3L @ 672MHz
- USB 2 x USB 2.0
- HDMI port
My storage is on a 64 GB micro-SD card.
The DVB-T USB dongle is a "RTL-SDR Blog R820T2 RTL2832U 1PPM TCXO SMA Software Defined Radio" from
http://www.rtl-sdr.com/buy-rtl-sdr-dvb-t-dongles/
After I compiled all drivers, I tried to load them with modprobe (I also tried to optionally rmmod all the other ir_* modules, which might be interfering) :
# modprobe rtl2832
# modprobe dvb_usb_rtl28xxu
# dmesg report is:
[59570.134994] usbcore: registered new interface driver dvb_usb_rtl28xxu
[59995.218466] lirc_dev: module unloaded
[60052.126759] usbcore: deregistering interface driver dvb_usb_rtl28xxu
[60070.533355] usb 1-1: dvb_usb_v2: found a 'Realtek RTL2832U reference design' in warm state
[60070.598372] usb 1-1: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
[60070.608807] dvbdev: DVB: registering new adapter (Realtek RTL2832U reference design)
[60070.621918] rtl2832 2-0010: Range 0: selector for 0 in window
[60070.628377] rtl2832: probe of 2-0010 failed with error -22
[60070.644011] usbcore: registered new interface driver dvb_usb_rtl28xxu
[60249.342718] usbcore: deregistering interface driver dvb_usb_rtl28xxu
[60304.611609] WARNING: You are using an experimental version of the media stack.
As the driver is backported to an older kernel, it doesn't offer
enough quality for its usage in production.
Use it with care.
Latest git patches (needed if you report a bug to linux-media@vger.kernel.org):
bd676c0c04ec94bd830b9192e2c33f2c4532278d [media] v4l2-flash-led-class: remove a now unused var
079933dbcb02132cc48ba052882fe0a9e3b0b762 [media] v4l: flash led class: Fix of_node release in probe() error path
c762ff1f7e3b09293c22ce62135ef550c1b3327c [media] coda: fix the error path in coda_probe()
[60304.702195] dvb_usb_rtl28xxu: `' invalid for parameter `rtl2832'
[60364.122409] usb 1-1: dvb_usb_v2: found a 'Realtek RTL2832U reference design' in warm state
[60364.192481] usb 1-1: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
[60364.209402] dvbdev: DVB: registering new adapter (Realtek RTL2832U reference design)
[60364.228000] rtl2832 2-0010: Range 0: selector for 0 in window
[60364.240827] rtl2832: probe of 2-0010 failed with error -22
[60364.262389] usbcore: registered new interface driver dvb_usb_rtl28xxu
[60681.746137] ehci_irq: highspeed device disconnect
[60681.756537] usb 1-1: USB disconnect, device number 3
[60688.754716] ehci_irq: highspeed device connect
[60688.981979] usb 2-1: new high-speed USB device number 2 using sunxi-ehci
[60689.158238] usb 2-1: dvb_usb_v2: found a 'Realtek RTL2832U reference design' in warm state
[60689.228550] usb 2-1: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
[60689.244639] dvbdev: DVB: registering new adapter (Realtek RTL2832U reference design)
[60689.262071] rtl2832 2-0010: Range 0: selector for 0 in window
[60689.274417] rtl2832: probe of 2-0010 failed with error -22
# lsusb -v
Bus 002 Device 002: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0bda Realtek Semiconductor Corp.
idProduct 0x2838 RTL2838 DVB-T
bcdDevice 1.00
iManufacturer 1 Realtek
iProduct 2 RTL2838UHIDIR
iSerial 3 00000001
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 34
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 4 USB2.0-Bulk&Iso
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 5 Bulk-In, Interface
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 5 Bulk-In, Interface
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 2
Device Status: 0x0000
(Bus Powered)
# lsmod
Module Size Used by
dvb_usb_rtl28xxu 25651 0
rtl2832 17781 0
dvb_usb_v2 17915 1 dvb_usb_rtl28xxu
dvb_core 90288 2 rtl2832,dvb_usb_v2
w1_gpio 12739 0
wire 23744 1 w1_gpio
cedar_ve 17368 0
ss 33083 0
mali 199851 0
8723bs 1365012 0
cfg80211 374207 1 8723bs
The end result is that the DVB-T device doesn't get successfully recognised, it has also failed running w_scan and exits with the error main:3916: FATAL: ***** NO USEABLE TERRESTRIAL CARD FOUND. *****
This error has also been submited to Linux kernel bugtracker - https://bugzilla.kernel.org/show_bug.cgi?id=183501
Regards,
Jan