DVBSky T9580: Difference between revisions

From LinuxTVWiki
Jump to navigation Jump to search
 
(15 intermediate revisions by 3 users not shown)
Line 16: Line 16:
* Bridge : [[Conexant]] PCIe A/V Decoder [[Conexant_CX23885/7/8|CX23885-15Z]] PFAC6621B 1249CN
* Bridge : [[Conexant]] PCIe A/V Decoder [[Conexant_CX23885/7/8|CX23885-15Z]] PFAC6621B 1249CN
* DVB-T2/C demodulator : [[Silicon_Labs_si2168|Si2168]]-A30
* DVB-T2/C demodulator : [[Silicon_Labs_si2168|Si2168]]-A30
* DVB-T2/C tuner : [[Silicon_Labs_si2158|Si2158]]-A20
* DVB-T2/C tuner : [[Silicon_Labs_Si2157|Si2158]]-A20
* DVB-S2 demodulator : Montage M88DS3103
* DVB-S2 demodulator : Montage M88DS3103
* DVB-S2 tuner : Montage TS2022
* DVB-S2 tuner : Montage TS2022
* '''Mystique SaTeCaBiX''' is more or less the same card
* PCI ID 4254:9580 (same for the Mystique card)
* PCI ID 4254:9580 (same for the Mystique card)
<br/><br/><br/>
<br/>
* Name: T9850 Ver. 3 (there's no version 2)
* Bridge : SMI PCIe
* DVB-T2/C demodulator : [[Silicon_Labs_si2168|Si2168]]-B40
* DVB-T2/C tuner : [[Silicon_Labs_Si2157|Si2157]]-A30
* DVB-S2 demodulator : Montage M88DS3103
* DVB-S2 tuner : Montage TS2022
* PCI ID 4254:5580
<br/><br/>


==Driver and firmware==
==Driver and firmware==
* See [[DVBSky]] wiki page. Execute build_{x86|x64}_dvbc.sh for DVB-C driver! Firmware: dvb-fe-ds3103.fw needed for this driver.


* Following firmware files are needed for version 1: dvb-demod-m88ds3103.fw, dvb-demod-si2168-a30-01.fw and dvb-tuner-si2158-a20-01.fw.
* Open source driver is being developed.
* And for version 3: dvb-demod-m88ds3103.fw, dvb-demod-si2168-b40-01.fw
** Patch for media tree has been suggested: [http://www.mail-archive.com/linux-media@vger.kernel.org/msg78182.html]
** Following firmware files are needed: dvb-demod-m88ds3103.fw, dvb-demod-si2168-30-01.fw and dvb-tuner-si2158-20-01.fw. All can be found from OpenELEC firmware tree [https://github.com/OpenELEC/dvb-firmware/tree/master/firmware].
* All can be found from OpenELEC firmware tree [https://github.com/OpenELEC/dvb-firmware/tree/master/firmware].
* As an alternative, you can get the firmware from the producer's site: http://www.dvbsky.net/Support_linux.html
* Place the firmware files under /lib/firmware


==Making it Work (Open source) ==
==Making it Work ==


The driver is included in Linux kernels since 3.18 (ver 1) and 3.19 (ver 3). For older kernels you can use the [[media_build]].
The driver is not currently in media_tree yet, but the following steps can be followed to install the driver if you have a fairly recent kernel and necessary build tools installed. This takes a while as the whole media_tree is cloned...


dmesg output when version 1 board is detected:
<pre>
git clone git://linuxtv.org/media_build.git
cd media_build
./build --main-git
cd media
wget --no-check-certificate -O t9580.patch \
https://patchwork.linuxtv.org/patch/25199/raw/ \
https://patchwork.linuxtv.org/patch/25319/raw/ https://patchwork.linuxtv.org/patch/25320/raw/ \
https://patchwork.linuxtv.org/patch/25324/raw/ https://patchwork.linuxtv.org/patch/25321/raw/ \
https://patchwork.linuxtv.org/patch/25323/raw/ https://patchwork.linuxtv.org/patch/25322/raw/
patch -p1 < t9580.patch
make -C ../v4l
sudo make -C .. install
</pre>

That's it. Download the firmwares mentioned in the previous chapter and place them in /lib/firmware, reboot (or reload appropriate modules) and it should work.

dmesg output:


<pre>
<pre>
Line 85: Line 76:
</pre>
</pre>


==DVBSky T9580 v3==
==Making it Work (Closed source) ==
This version uses a different kernel module - smipcie. Here's the dmesg output from a 4.3 kernel:

Currently the closed source driver can be downloaded from [http://www.dvbsky.net/Support.html DVBSky website]. Driver is available for kernels 3.5-3.13.

Receival of DVB-S, DVB-S2, DVB-T, DVB-T2 and DVB-C have been confirmed working.

===Revision history===

Cable Working for Ubuntu 12.04

====Jan 2014====
Upgraded Ubuntu 12.04 to kernel 3.11.1
and used the '''media_build_bst_130806''' from dvbsky support
compiled it as in the manual .
Cable driver loaded and tested, works fine with tvheadend and XBMC.
i use oscam and smargo for encrypted channels.
more info pe63@quicknet.nl

will test it with Ubuntu 13.04 and 13.10

Update 25jan2014

Ubuntu 12.04 kernel 3.8.4 working<br/>
Ubuntu 12.04 kernel 3.11.1 working<br/>
Ubuntu 12.04 kernel 3.12.1 working<br/>
Ubuntu 12.04 kernel 3.13.0 not tested<br/>

Ubuntu 13.04 kernel 3.11.1 working<br/>
Ubuntu 13.04 kernel 3.12.1 working<br/>
Ubuntu 13.04 kernel 3.13.0 fails to compile<br/>

====Febr 2014====
With newest drivers and Ubuntu 13.10 kernel - 3.13.2 it compiles good and after<br/>
sudo rm -rf /lib/modules/`uname -r`/kernel/drivers/media/<br/>
sudo make install<br/>
It loads alright, i assume all lower versions will work too<br/>

for howto and downloads http://www.dvbsky.net/Support.html<br/>

<br/>
<br/>

lspci output for this card is:

05:00.0 Multimedia video controller [0400]: Conexant Systems, Inc. CX23885 PCI Video and Audio Decoder [14f1:8852] (rev 04)
Subsystem: Device [4254:9580]
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 14
Region 0: Memory at f7800000 (64-bit, non-prefetchable)
Capabilities: [40] Express (v1) Endpoint, MSI 00
DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us
ExtTag- AttnBtn- AttnInd- PwrInd- RBE- FLReset-
DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+
MaxPayload 128 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 <2us, L1 <4us
ClockPM- Surprise- LLActRep- BwNot-
LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
Capabilities: [80] Power Management version 2
Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold-)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [90] Vital Product Data
Product Name: "
End
Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+
Address: 0000000000000000 Data: 0000
Capabilities: [100 v1] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES- TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
AERCap: First Error Pointer: 00, GenCap- CGenEn- ChkCap- ChkEn-
Capabilities: [200 v1] Virtual Channel
Caps: LPEVC=0 RefClk=100ns PATEntryBits=1
Arb: Fixed+ WRR32+ WRR64+ WRR128-
Ctrl: ArbSelect=WRR64
Status: InProgress-
Port Arbitration Table [240] <?>
VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
Arb: Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=01
Status: NegoPending- InProgress-
Kernel driver in use: cx23885

<br/>
<br/>
dmesg output for the card (Ubuntu, kernel 3.13):


<pre>
<pre>
[220720.495204] SMI PCIe driver 0000:03:00.0: card detected: DVBSky T9580 V3
[ 348.651632] cx2341x: Unknown symbol v4l2_ctrl_handler_init_class (err 0)
[220720.588098] DVB: registering new adapter (SMI_DVB)
[ 455.388612] cx23885 driver version 0.0.3 loaded
[220720.590320] i2c i2c-4: Added multiplexed i2c bus 6
[ 455.388923] CORE cx23885[0]: subsystem: 4254:9580, board: DVBSKY T9580 [card=45,autodetected]
[220720.590325] si2168 4-0064: Silicon Labs Si2168 successfully attached
[ 455.622579] cx25840 11-0044: cx23885 A/V decoder found @ 0x88 (cx23885[0])
[220720.594971] si2157 6-0060: Silicon Labs Si2147/2148/2157/2158 successfully attached
[ 456.254639] cx25840 11-0044: loaded v4l-cx23885-avcore-01.fw firmware (16382 bytes)
[220720.594979] SMI PCIe driver 0000:03:00.0: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)...
[ 456.271678] cx23885_dvb_register() allocating 1 frontend(s)
[220720.601255] SMI PCIe driver 0000:03:00.0: DVBSky SMI PCIe MAC= 00:18:33:34:85:51
[ 456.271680] cx23885[0]: cx23885 based dvb card
[220720.601321] DVB: registering new adapter (SMI_DVB)
[ 456.273690] M88DS3103 tuner read stops = 0.
[220720.610573] i2c i2c-5: Added multiplexed i2c bus 7
[ 456.274144] DS3000 chip version: d0 attached.
[220720.692837] ts2020 7-0060: Montage Technology TS2022 successfully identified
[ 456.274961] TS202x chip version[1]: c0 attached.
[220720.692857] SMI PCIe driver 0000:03:00.0: DVB: registering adapter 1 frontend 0 (Montage Technology M88DS3103)...
[ 456.295354] TS202x chip version[2]: c3 attached.
[220720.699209] SMI PCIe driver 0000:03:00.0: DVBSky SMI PCIe MAC= 00:18:33:54:85:52
[ 456.342806] m88ds3103_load_firmware: Waiting for firmware upload (dvb-fe-ds3103.fw)...
[220720.699217] Registered IR keymap rc-dvbsky
[ 456.342835] m88ds3103_load_firmware: Waiting for firmware upload(2)...
[220720.699277] input: IR (DVBSky T9580 V3) as /devices/pci0000:00/0000:00:05.0/0000:03:00.0/rc/rc0/input19
[ 457.257896] DVB: registering new adapter (cx23885[0])
[220720.699312] rc0: IR (DVBSky T9580 V3) as /devices/pci0000:00/0000:00:05.0/0000:03:00.0/rc/rc0
[ 457.257899] cx23885 0000:02:00.0: DVB: registering adapter 0 frontend 0 (Montage DS3103/TS2022)...
[220742.932523] si2168 4-0064: found a 'Silicon Labs Si2168-B40'
[ 457.286481] DVBSKY PCIe MAC= 00:17:42:54:09:82
[220742.932569] si2168 4-0064: downloading firmware from file 'dvb-demod-si2168-b40-01.fw'
[ 457.286485] cx23885_dvb_register() allocating 1 frontend(s)
[220744.573071] si2168 4-0064: firmware version: 4.0.11
[ 457.286498] cx23885[0]: cx23885 based dvb card
[220744.596881] si2157 6-0060: found a 'Silicon Labs Si2157-A30'
[ 457.288508] DVB: registering new adapter (cx23885[0])
[220744.631006] si2157 6-0060: firmware version: 3.0.5
[ 457.288516] cx23885 0000:02:00.0: DVB: registering adapter 1 frontend 0 (Sit2 DVB-T2/C)...
[ 457.318127] DVBSKY PCIe MAC= 00:18:42:54:09:83
[ 457.318134] cx23885_dev_checkrevision() Hardware revision = 0xa5
[ 457.318140] cx23885[0]/0: found at 0000:02:00.0, rev: 4, irq: 16, latency: 0, mmio: 0xf7a00000
[ 457.341543] Registered IR keymap rc-dvbsky
[ 457.341632] input: cx23885 IR (DVBSKY T9580) as /devices/pci0000:00/0000:00:1c.0/0000:02:00.0/rc/rc0/input21
[ 457.345268] rc0: cx23885 IR (DVBSKY T9580) as /devices/pci0000:00/0000:00:1c.0/0000:02:00.0/rc/rc0
[ 457.346954] IR NEC protocol handler initialized
[ 457.347134] IR RC5(x) protocol handler initialized
[ 457.348940] IR RC6 protocol handler initialized
[ 457.350151] IR JVC protocol handler initialized
[ 457.351072] IR Sony protocol handler initialized
[ 457.352658] input: MCE IR Keyboard/Mouse (cx23885) as /devices/virtual/input/input22
[ 457.353775] lirc_dev: IR Remote Control driver registered, major 250
[ 457.354339] IR MCE Keyboard/mouse protocol handler initialized
[ 457.355386] rc rc0: lirc_dev: driver ir-lirc-codec (cx23885) registered at minor = 0
[ 457.355390] IR LIRC bridge handler initialized
[ 457.355392] IR SANYO protocol handler initialized
</pre>
</pre>



Latest revision as of 08:38, 4 March 2016

A combined DVB-T/DVB-T2 or DVB-C or DVB-S/DVB-S2 PCIe card from DVBSky.

The card is identical to Mystique SaTeCaBiX.

Overview/Features

  • PCI-e x1 low profile card (includes standard profile backplate)
  • Single Tuner for DVB-S/DVB-S2
  • Single Tuner for DVB-T/DVB-T2/DVB-C
  • IR Receiver
  • Remote Controller

Technical Details

  • Name: T9850/5950 Ver. 1.0a 121106
  • Bridge : Conexant PCIe A/V Decoder CX23885-15Z PFAC6621B 1249CN
  • DVB-T2/C demodulator : Si2168-A30
  • DVB-T2/C tuner : Si2158-A20
  • DVB-S2 demodulator : Montage M88DS3103
  • DVB-S2 tuner : Montage TS2022
  • PCI ID 4254:9580 (same for the Mystique card)


  • Name: T9850 Ver. 3 (there's no version 2)
  • Bridge : SMI PCIe
  • DVB-T2/C demodulator : Si2168-B40
  • DVB-T2/C tuner : Si2157-A30
  • DVB-S2 demodulator : Montage M88DS3103
  • DVB-S2 tuner : Montage TS2022
  • PCI ID 4254:5580



Driver and firmware

  • Following firmware files are needed for version 1: dvb-demod-m88ds3103.fw, dvb-demod-si2168-a30-01.fw and dvb-tuner-si2158-a20-01.fw.
  • And for version 3: dvb-demod-m88ds3103.fw, dvb-demod-si2168-b40-01.fw
  • All can be found from OpenELEC firmware tree [1].
  • As an alternative, you can get the firmware from the producer's site: http://www.dvbsky.net/Support_linux.html
  • Place the firmware files under /lib/firmware

Making it Work

The driver is included in Linux kernels since 3.18 (ver 1) and 3.19 (ver 3). For older kernels you can use the media_build.

dmesg output when version 1 board is detected:

[39628.129977] cx23885 driver version 0.0.3 loaded
[39628.130057] CORE cx23885[0]: subsystem: 4254:9580, board: DVBSky T9580 [card=45,autodetected]
[39628.358270] cx25840 2-0044: cx23885 A/V decoder found @ 0x88 (cx23885[0])
[39628.991041] cx25840 2-0044: loaded v4l-cx23885-avcore-01.fw firmware (16382 bytes)
[39629.006791] cx23885_dvb_register() allocating 1 frontend(s)
[39629.006793] cx23885[0]: cx23885 based dvb card
[39629.010119] i2c i2c-1: Added multiplexed i2c bus 12
[39629.116211] m88ts2022 12-0060: m88ts2022: Montage M88TS2022 successfully identified
[39629.116217] DVB: registering new adapter (cx23885[0])
[39629.116220] cx23885 0000:02:00.0: DVB: registering adapter 0 frontend 0 (Montage M88DS3103)...
[39629.144175] DVBSky T9580 port 1 MAC address: 00:17:42:54:09:82
[39629.144177] cx23885_dvb_register() allocating 1 frontend(s)
[39629.144178] cx23885[0]: cx23885 based dvb card
[39629.145080] i2c i2c-0: Added multiplexed i2c bus 13
[39629.145083] si2168 0-0064: si2168: Silicon Labs Si2168 successfully attached
[39629.147038] si2157 13-0060: si2157: Silicon Labs Si2157/Si2158 successfully attached
[39629.147043] DVB: registering new adapter (cx23885[0])
[39629.147045] cx23885 0000:02:00.0: DVB: registering adapter 1 frontend 0 (Silicon Labs Si2168)...
[39629.174892] DVBSky T9580 port 2 MAC address: 00:18:42:54:09:83
[39629.174896] cx23885_dev_checkrevision() Hardware revision = 0xa5
[39629.174901] cx23885[0]/0: found at 0000:02:00.0, rev: 4, irq: 16, latency: 0, mmio: 0xf7a00000
[39646.479572] si2168 0-0064: si2168: found a 'Silicon Labs Si2168' in cold state
[39646.479596] si2168 0-0064: si2168: downloading firmware from file 'dvb-demod-si2168-a30-01.fw'
[39649.538399] si2168 0-0064: si2168: found a 'Silicon Labs Si2168' in warm state
[39649.546988] si2157 13-0060: si2157: found a 'Silicon Labs Si2157/Si2158' in cold state
[39649.547002] si2157 13-0060: si2157: downloading firmware from file 'dvb-tuner-si2158-a20-01.fw'
[39655.010407] i2c i2c-1: m88ds3103: downloading firmware from file 'dvb-demod-m88ds3103.fw'
[39655.925117] i2c i2c-1: m88ds3103: found a 'Montage M88DS3103' in warm state
[39655.925120] i2c i2c-1: m88ds3103: firmware version 3.B

DVBSky T9580 v3

This version uses a different kernel module - smipcie. Here's the dmesg output from a 4.3 kernel:

[220720.495204] SMI PCIe driver 0000:03:00.0: card detected: DVBSky T9580 V3
[220720.588098] DVB: registering new adapter (SMI_DVB)
[220720.590320] i2c i2c-4: Added multiplexed i2c bus 6
[220720.590325] si2168 4-0064: Silicon Labs Si2168 successfully attached
[220720.594971] si2157 6-0060: Silicon Labs Si2147/2148/2157/2158 successfully attached
[220720.594979] SMI PCIe driver 0000:03:00.0: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)...
[220720.601255] SMI PCIe driver 0000:03:00.0: DVBSky SMI PCIe MAC= 00:18:33:34:85:51
[220720.601321] DVB: registering new adapter (SMI_DVB)
[220720.610573] i2c i2c-5: Added multiplexed i2c bus 7
[220720.692837] ts2020 7-0060: Montage Technology TS2022 successfully identified
[220720.692857] SMI PCIe driver 0000:03:00.0: DVB: registering adapter 1 frontend 0 (Montage Technology M88DS3103)...
[220720.699209] SMI PCIe driver 0000:03:00.0: DVBSky SMI PCIe MAC= 00:18:33:54:85:52
[220720.699217] Registered IR keymap rc-dvbsky
[220720.699277] input: IR (DVBSky T9580 V3) as /devices/pci0000:00/0000:00:05.0/0000:03:00.0/rc/rc0/input19
[220720.699312] rc0: IR (DVBSky T9580 V3) as /devices/pci0000:00/0000:00:05.0/0000:03:00.0/rc/rc0
[220742.932523] si2168 4-0064: found a 'Silicon Labs Si2168-B40'
[220742.932569] si2168 4-0064: downloading firmware from file 'dvb-demod-si2168-b40-01.fw'
[220744.573071] si2168 4-0064: firmware version: 4.0.11
[220744.596881] si2157 6-0060: found a 'Silicon Labs Si2157-A30'
[220744.631006] si2157 6-0060: firmware version: 3.0.5

External Links