DiSEqC handling in S2API
While adapting VDR to the S2API driver, I saw that there are also facilities to handle DiSEqC via the new API, like DTV_VOLTAGE and DTV_TONE. However, I can't seem to find out how the "legacy" FE_DISEQC_SEND_BURST and FE_DISEQC_SEND_MASTER_CMD could be handled with S2API.
Is this not implemented?
Klaus
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 6 lines · Klaus Schmidinger
While adapting VDR to the S2API driver, I saw that there are also facilities to handle DiSEqC via the new API, like
DTV_VOLTAGEandDTV_TONE. However, I can't seem to find out how the "legacy"FE_DISEQC_SEND_BURSTandFE_DISEQC_SEND_MASTER_CMDcould be handled with S2API.
Is this not implemented?
LNB control works perfectly with the old api.
Imho DTV_VOLTAGE and DTV_TONE should be removed.
They duplicate existing functions and do not offer any advantage. Just my 2 cents.
Oliver
Signature · 8 lines
---------------------------------------------------------------- VDR Remote Plugin 0.4.0: http://www.escape-edv.de/endriss/vdr/ ---------------------------------------------------------------- _______________________________________________ linux-dvb mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 11 lines · Oliver Endriss
Quoted 6 lines · Klaus Schmidinger
While adapting VDR to the S2API driver, I saw that there are also facilities to handle DiSEqC via the new API, like
DTV_VOLTAGEandDTV_TONE. However, I can't seem to find out how the "legacy"FE_DISEQC_SEND_BURSTandFE_DISEQC_SEND_MASTER_CMDcould be handled with S2API.
Is this not implemented?LNB control works perfectly with the old api.
ImhoDTV_VOLTAGEandDTV_TONEshould be removed.
They duplicate existing functions and do not offer any advantage.
Thanks, so I'll leave this with the "old" API.
Klaus
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
[linux-dvb] Terratec Cinergy S2 PCI HD S2API ( Liplianin's tree ) fixes
In reply to Oliver EndrissHi,
attached there are 2 patches. One which corrects MANTIS_VP_1041_DVB_S2 and the second one solves the following bug :
memory: 0xdffff000, mmio: 0xffffc2000035a000
found a VP-1041 PCI DSS/DVB-S/DVB-S2 device on (01:06.0),
Mantis Rev 1 [153b:1179], irq: 16, latency: 64
memory: 0xdffff000, mmio: 0xffffc2000035a000
MAC Address=[00:08:ca:1c:d5:e6]mantis_alloc_buffers (0): DMA=0x6d810000 cpu=0xffff88006d810000 size=65536 mantis_alloc_buffers (0): RISC=0x6e8fa000 cpu=0xffff88006e8fa000 size=1000
DVB: registering new adapter (Mantis dvb adapter)stb0899_attach: Attaching STB0899mantis_frontend_init (0): found STB0899 DVB-S/DVB-S2 frontend @0x68stb6100_attach: Attaching STB6100
DVB: registering adapter 0 frontend 0 (STB0899 Multistandard)... mantis_ca_init (0): Registering EN50221 devicemantis_ca_init (0): Registered EN50221 device
BUG: unable to handle kernel NULL pointer dereference at 0000000000000000 IP: [<ffffffff80231ca0>] 0xffffffff80231ca0 PGD 6d805067 PUD 6d8f1067 PMD 0 Oops: 0000 [1] PREEMPT SMP CPU 1 Modules linked in: mantis(+) lnbp21 mb86a16 stb6100 tda10021 tda10023
stb0899 stv0299 dvb_core autofs4 container pci_slot sbs video output battery sbshc af_packet ac it87 hwmon_vid powernow_k8 cpufreq_userspace cpufreq_powersave cpufreq_ondemand freq_table arc4 ecb snd_hda_intel snd_pcm_oss snd_mixer_oss snd_pcm snd_page_alloc snd_hwdep snd_seq_dummy snd_seq_oss zd1211rw psmouse snd_seq_midi snd_rawmidi evdev serio_raw mac80211 k8temp snd_seq_midi_event shpchp usbhid snd_seq pci_hotplug cfg80211 hid snd_timer snd_seq_device i2c_core snd soundcore wmi parport_pc parport button ohci1394 ieee1394 forcedeth ehci_hcd ohci_hcd usbcore thermal processor fan
Pid: 9, comm: events/1 Not tainted 2.6.27 #1
RIP: 0010:[<ffffffff80231ca0>] [<ffffffff80231ca0>] 0xffffffff80231ca0 RSP: 0018:ffff88006fbbfe20 EFLAGS: 00010082 RAX: 0000000000000000 RBX: ffff88006d31c058 RCX: 0000000000000000 RDX: 0000000000000001 RSI: 0000000000000003 RDI: ffff88006d31c058 RBP: ffff88006fbbfe50 R08: ffffffffffffffe8 R09: ffff88000102ce00 R10: 0000004a93e37af4 R11: ffffffff804e8fa7 R12: 0000000000000001 R13: 0000000000000001 R14: ffff88006d31c060 R15: 0000000000000000 FS: 00007f8874a416e0(0000) GS:ffff88006f802780(0000) knlGS:0000000000000000 CS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b CR2: 0000000000000000 CR3: 000000006e8d5000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process events/1 (pid: 9, threadinfo ffff88006fbbe000, task ffff88006fb73600) Stack: 0000000300000000 ffff88006d31c058 0000000000000000 0000000000000001 0000000000000286 0000000000000003 ffff88006fbbfe90 ffffffff802324ce ffff88006f802908 ffff88006d31c038 ffff88006d31c030 ffffffffa0262fc3 Call Trace: [<ffffffff802324ce>] 0xffffffff802324ce [<ffffffffa0262fc3>] ? 0xffffffffa0262fc3 [<ffffffff8024ab06>] 0xffffffff8024ab06 [<ffffffff8024ac82>] ? 0xffffffff8024ac82 [<ffffffff8024e082>] ? 0xffffffff8024e082 [<ffffffff8024ab92>] ? 0xffffffff8024ab92 [<ffffffff8024dd3f>] ? 0xffffffff8024dd3f [<ffffffff802397ba>] ? 0xffffffff802397ba [<ffffffff802125e9>] ? 0xffffffff802125e9 [<ffffffff8024dcf8>] ? 0xffffffff8024dcf8 [<ffffffff802125df>] ? 0xffffffff802125df Code: c9 c3 55 48 89 e5 41 57 4d 89 c7 41 56 4c 8d 77 08
<3>mantis_hif_init (0): Adapter(0) Initializing Mantis Host Interface 41 55 41 54 41 89 d4 53 48 83 ec 08 89 75 d4 89 4d d0 48 8b 47 08 4c 8d 40 e8 <49> 8b 40 18 48 8d 58 e8 eb 2d 45 8b 28 4c 89 f9 8b 55 d0 8b 75 RIP [<ffffffff80231ca0>] 0xffffffff80231ca0
RSP <ffff88006fbbfe20>
CR2: 0000000000000000
---[ end trace e8c4dfd3500996f1 ]---
note: events/1[9] exited with preempt_count 1
Both patches are taken from Manu Abraham's multiproto mantis tree and just aplied to Igor Liplianin's S2API tree.
mfg
Edgar (gimli) Hucek
linux/drivers/media/dvb/mantis/mantis_vp1041.h +1 -1
@@ -27,7 +27,7 @@#include "stb6100.h" #include "lnbp21.h" -#define MANTIS_VP_1041_DVB_S2 0x0031 +#define MANTIS_VP_1041_DVB_S2 0x1179#define TECHNISAT_SKYSTAR_HD2_1 0x0001// Subsystem: Device 1ae4:0003 #define TECHNISAT_SKYSTAR_HD2_2 0x0003
linux/drivers/media/dvb/mantis/mantis_ca.c +6 -0
@@ -160,6 +160,12 @@ ca->en50221.poll_slot_status = mantis_slot_status; ca->en50221.data = ca; +mutex_init (&ca->ca_lock); + +init_waitqueue_head (&ca->hif_data_wq); +init_waitqueue_head (&ca->hif_opdone_wq); +init_waitqueue_head (&ca->hif_write_wq); +dprintk (verbose,MANTIS_ERROR ,1 ,"Registering EN50221 device" );if ((result =dvb_ca_en50221_init (dvb_adapter, &ca->en50221, ca_flags,1 )) !=0 ) {dprintk (verbose,MANTIS_ERROR ,1 ,"EN50221: Initialization failed" );
linux/drivers/media/dvb/mantis/mantis_hif.c +16 -3
@@ -75,6 +92,7 @@u32 hif_addr =0 , data, count =4 ;dprintk (verbose,MANTIS_DEBUG ,1 ,"Adapter(%d) Slot(0): Request HIF Mem Read" , mantis->num); +mutex_lock (&ca->ca_lock); hif_addr &= ~MANTIS_GPIF_PCMCIAREG ; hif_addr &= ~MANTIS_GPIF_PCMCIAIOM ; hif_addr |=MANTIS_HIF_STATUS ;
@@ -87,9 +105,11 @@if (mantis_hif_sbuf_opdone_wait (ca) !=0 ) {dprintk (verbose,MANTIS_ERROR ,1 ,"Adapter(%d) Slot(0): GPIF Smart Buffer operation failed" , mantis->num); +mutex_unlock (&ca->ca_lock);return -EREMOTEIO ; } data =mmread (MANTIS_GPIF_DIN ); +mutex_unlock (&ca->ca_lock);dprintk (verbose,MANTIS_DEBUG ,1 ,"Mem Read: 0x%02x" , data);return (data >>24 ) &0xff ; }
@@ -101,6 +121,7 @@u32 hif_addr =0 ;dprintk (verbose,MANTIS_DEBUG ,1 ,"Adapter(%d) Slot(0): Request HIF Mem Write" , mantis->num); +mutex_lock (&ca->ca_lock); hif_addr &= ~MANTIS_GPIF_HIFRDWRN ; hif_addr &= ~MANTIS_GPIF_PCMCIAREG ; hif_addr &= ~MANTIS_GPIF_PCMCIAIOM ;
@@ -113,9 +134,11 @@if (mantis_hif_write_wait (ca) !=0 ) {dprintk (verbose,MANTIS_ERROR ,1 ,"Adapter(%d) Slot(0): HIF Smart Buffer operation failed" , mantis->num); +mutex_unlock (&ca->ca_lock);return -EREMOTEIO ; }dprintk (verbose,MANTIS_DEBUG ,1 ,"Mem Write: (0x%02x to 0x%02x)" , data, addr); +mutex_unlock (&ca->ca_lock);return 0 ; }
@@ -126,6 +149,7 @@u32 data, hif_addr =0 ;dprintk (verbose,MANTIS_DEBUG ,1 ,"Adapter(%d) Slot(0): Request HIF I/O Read" , mantis->num); +mutex_lock (&ca->ca_lock); hif_addr &= ~MANTIS_GPIF_PCMCIAREG ; hif_addr |=MANTIS_GPIF_PCMCIAIOM ; hif_addr |=MANTIS_HIF_STATUS ;
@@ -138,11 +162,13 @@if (mantis_hif_sbuf_opdone_wait (ca) !=0 ) {dprintk (verbose,MANTIS_ERROR ,1 ,"Adapter(%d) Slot(0): HIF Smart Buffer operation failed" , mantis->num); +mutex_unlock (&ca->ca_lock);return -EREMOTEIO ; } data =mmread (MANTIS_GPIF_DIN );dprintk (verbose,MANTIS_DEBUG ,1 ,"I/O Read: 0x%02x" , data);udelay (50 ); +mutex_unlock (&ca->ca_lock);return (u8 ) data; }
@@ -153,6 +179,7 @@u32 hif_addr =0 ;dprintk (verbose,MANTIS_DEBUG ,1 ,"Adapter(%d) Slot(0): Request HIF I/O Write" , mantis->num); +mutex_lock (&ca->ca_lock); hif_addr &= ~MANTIS_GPIF_PCMCIAREG ; hif_addr &= ~MANTIS_GPIF_HIFRDWRN ; hif_addr |=MANTIS_GPIF_PCMCIAIOM ;
@@ -164,9 +191,11 @@if (mantis_hif_write_wait (ca) !=0 ) {dprintk (verbose,MANTIS_ERROR ,1 ,"Adapter(%d) Slot(0): HIF Smart Buffer operation failed" , mantis->num); +mutex_unlock (&ca->ca_lock);return -EREMOTEIO ; }dprintk (verbose,MANTIS_DEBUG ,1 ,"I/O Write: (0x%02x to 0x%02x)" , data, addr); +mutex_unlock (&ca->ca_lock);udelay (50 );return 0 ;
@@ -180,10 +209,8 @@ slot[0 ].slave_cfg =0x70773028 ;dprintk (verbose,MANTIS_ERROR ,1 ,"Adapter(%d) Initializing Mantis Host Interface" , mantis->num); -init_waitqueue_head (&ca->hif_data_wq); -init_waitqueue_head (&ca->hif_opdone_wq); -init_waitqueue_head (&ca->hif_write_wq); +mutex_lock (&ca->ca_lock); irqcfg =mmread (MANTIS_GPIF_IRQCFG ); irqcfg =MANTIS_MASK_BRRDY | MANTIS_MASK_WRACK |
@@ -193,6 +220,7 @@MANTIS_MASK_OVFLW ;mmwrite (irqcfg,MANTIS_GPIF_IRQCFG ); +mutex_unlock (&ca->ca_lock);return 0 ; }
@@ -203,7 +231,9 @@u32 irqcfg;dprintk (verbose,MANTIS_ERROR ,1 ,"Adapter(%d) Exiting Mantis Host Interface" , mantis->num); +mutex_lock (&ca->ca_lock); irqcfg =mmread (MANTIS_GPIF_IRQCFG ); irqcfg &= ~MANTIS_MASK_BRRDY ;mmwrite (irqcfg,MANTIS_GPIF_IRQCFG ); +mutex_unlock (&ca->ca_lock); }
linux/drivers/media/dvb/mantis/mantis_link.h +2 -0
@@ -21,6 +21,7 @@#ifndef __MANTIS_LINK_H#define __MANTIS_LINK_H +#include <linux/mutex.h> #include <linux/workqueue.h> #include "dvb_ca_en50221.h"
@@ -61,6 +62,7 @@void *ca_priv;struct dvb_ca_en50221 en50221; +struct mutex ca_lock; };/* CA */
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Re: [linux-dvb] Terratec Cinergy S2 PCI HD S2API ( Liplianin's tree ) fixes
Quoted 3 lines
Hi,
attached there are 2 patches. One which corrects
MANTIS_VP_1041_DVB_S2
No, MANTIS_VP_1041_DVB_S2 = 0x0031 was correct already for the Azurewave AD-SP400 so your first patch breaks the driver for that card. You need to create another define for the Terratec Cinergy S2 because it has a different subsystem id.
Quoted 3 lines
and
the second one solves the following bug :
.....
Quoted 3 lines
Both patches are taken from Manu Abraham's multiproto mantis tree and just aplied to Igor Liplianin's S2API tree.
The second one only I think.
Quoted 4 lines
mfg
Edgar (gimli) Hucek
Hans
Signature · 8 lines
Release early, release often. Psssst! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger _______________________________________________ linux-dvb mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Re: [linux-dvb] Terratec Cinergy S2 PCI HD S2API ( Liplianin's tree ) fixes
Hi,
sorry to break it. Attached is a corrected patch which adds support for the Terratec card and corrects MANTIS_VP_1041_DVB_S2.
cu
Edgar (gimli) Hucek
Quoted 30 lines
Quoted 3 lines
Hi,
attached there are 2 patches. One which corrects
MANTIS_VP_1041_DVB_S2No,
MANTIS_VP_1041_DVB_S2=0x0031was correct already for the Azurewave AD-SP400
so your first patch breaks the driver for that card. You need to create another define for the
Terratec Cinergy S2 because it has a different subsystem id.Quoted 3 lines
and
the second one solves the following bug :.....
Quoted 4 lines
Both patches are taken from Manu Abraham's multiproto mantis tree and just
aplied to Igor Liplianin's S2API tree.The second one only I think.
Quoted 4 lines
mfg
Edgar (gimli) Hucek
Hans
--
Release early, release often.
Quoted 10 lines
Psssst! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen:
http://www.gmx.net/de/go/multimessenger_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
linux/drivers/media/dvb/mantis/mantis_core.c +1 -0
@@ -91,6 +91,7 @@ mantis->hwconfig = &vp1034_mantis_config;break ;case MANTIS_VP_1041_DVB_S2 :// VP-1041 +case TERRATEC_CINERGY_PCI_HD :case TECHNISAT_SKYSTAR_HD2_1 :case TECHNISAT_SKYSTAR_HD2_2 : mantis->hwconfig = &vp1041_mantis_config;
linux/drivers/media/dvb/mantis/mantis_dvb.c +1 -0
@@ -229,6 +229,7 @@ }break ;case MANTIS_VP_1041_DVB_S2 : +case TERRATEC_CINERGY_PCI_HD :case TECHNISAT_SKYSTAR_HD2_1 :case TECHNISAT_SKYSTAR_HD2_2 : mantis->fe =stb0899_attach (&vp1041_config, &mantis->adapter);
linux/drivers/media/dvb/mantis/mantis_vp1041.h +2 -1
@@ -27,7 +27,8 @@#include "stb6100.h" #include "lnbp21.h" -#define MANTIS_VP_1041_DVB_S2 0x1179 +#define MANTIS_VP_1041_DVB_S2 0x0031 +#define TERRATEC_CINERGY_PCI_HD 0x1179#define TECHNISAT_SKYSTAR_HD2_1 0x0001// Subsystem: Device 1ae4:0003 #define TECHNISAT_SKYSTAR_HD2_2 0x0003
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Re: [linux-dvb] Terratec Cinergy S2 PCI HD S2API ( Liplianin's tree ) fixes
Quoted 10 lines
Quoted 10 lines
Quoted 3 lines
Hi,
attached there are 2 patches. One which corrects
MANTIS_VP_1041_DVB_S2No,
MANTIS_VP_1041_DVB_S2=0x0031was correct already for the Azurewave AD-SP400
so your first patch breaks the driver for that card. You need to create another define for the
Terratec Cinergy S2 because it has a different subsystem id.
Quoted 8 lines
Hi,
sorry to break it. Attached is a corrected patch which adds support for the Terratec card and corrects
MANTIS_VP_1041_DVB_S2.cu
Edgar (gimli) Hucek
Thanks for the quick update. That's better -- I checked and it works again with the Azurewave AD-SP400.
Hans
Signature · 9 lines
Release early, release often. Sensationsangebot verlängert: GMX FreeDSL - Telefonanschluss + DSL für nur 16,37 Euro/mtl.!* http://dsl.gmx.de/?ac=OM.AD.PD003K1308T4569a _______________________________________________ linux-dvb mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb