From patchwork Sat Apr 4 04:17:51 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: mp3geek X-Patchwork-Id: 16289 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n344G92u009202 for ; Sat, 4 Apr 2009 04:17:56 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750946AbZDDERy (ORCPT ); Sat, 4 Apr 2009 00:17:54 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1750909AbZDDERy (ORCPT ); Sat, 4 Apr 2009 00:17:54 -0400 Received: from rv-out-0506.google.com ([209.85.198.229]:32133 "EHLO rv-out-0506.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750829AbZDDERx (ORCPT ); Sat, 4 Apr 2009 00:17:53 -0400 Received: by rv-out-0506.google.com with SMTP id f9so1454914rvb.1 for ; Fri, 03 Apr 2009 21:17:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=Jp7KtYfc68L4JVzYcm7ARzOW/Ijb19hoMmWxJkgJKCA=; b=TwLUiVxXdlA9yq57rPBgrw3DvvCw6qOMTndRahTTyvldzcB2Fc9GqamJ+B/C4rgr4K PgkKUfwN/klYIKBY+62jjQc3j2bZsIZ4uldTWE/sFF3+SfeGc/rJr/rSGy2arN5bf704 8kJMnjJKS00ueXEAhj1r0DVSn+JTJ153SEK/g= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=Q3Idsab/jU38Vw14RCmU7mk3UJz3DoP36dx7gAV7KLIM5KyNclR1UDmh//wz0U9E5/ 2GuBYUSN/4mA2DzAjodBTfVuQkyBTRrzI7F2y+ZBMdykH6C2qyXuH5MZysaEkhOok3NS 6c7rVHDi8CezBwMHPRXip3gByz5+Gj0/W0fdE= MIME-Version: 1.0 Received: by 10.142.84.11 with SMTP id h11mr521093wfb.337.1238818671359; Fri, 03 Apr 2009 21:17:51 -0700 (PDT) In-Reply-To: <200904031836.19523.liplianin@tut.by> References: <200904031836.19523.liplianin@tut.by> Date: Sat, 4 Apr 2009 17:17:51 +1300 Message-ID: Subject: Re: SDMC DM1105N not being detected From: mp3geek To: "Igor M. Liplianin" Cc: linux-media@vger.kernel.org Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Shows up now, but doesnt load the frontend :/ DVB: registering new adapter (dm1105) dm1105 0000:00:08.0: MAC ff:ff:ff:ff:ff:ff dm1105 0000:00:08.0: could not attach frontend 00:08.0 Ethernet controller: Unknown device 195d:1105 (rev 10) Subsystem: Unknown device 195d:1105 Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR- I wrote code to support card with subsystem/device 195d/1105, but no one reported success, so I > decided to not include it in commit :( > > It was more then one year ago > > http://liplianin.at.tut.by/dvblipl.tar.bz2 > > http://liplianin.at.tut.by/ds110en.html > -- > Igor M. Liplianin > Microsoft Windows Free Zone - Linux used for all Computing Tasks > diff -Naur s2-liplianin-org/linux/drivers/media/dvb/dm1105/dm1105.c s2-liplianin/linux/drivers/media/dvb/dm1105/dm1105.c --- s2-liplianin-org/linux/drivers/media/dvb/dm1105/dm1105.c 2009-04-04 15:25:28.000000000 +1300 +++ s2-liplianin/linux/drivers/media/dvb/dm1105/dm1105.c 2009-04-04 16:59:20.000000000 +1300 @@ -54,12 +54,21 @@ #ifndef PCI_DEVICE_ID_DM1105 #define PCI_DEVICE_ID_DM1105 0x036f #endif +#ifndef PCI_DEVICE_ID_DM1105S +#define PCI_DEVICE_ID_DM1105S 0x1105 +#endif +#ifndef PCI_VENDOR_ID_AXESS +#define PCI_VENDOR_ID_AXESS 0x195d +#endif #ifndef PCI_DEVICE_ID_DW2002 #define PCI_DEVICE_ID_DW2002 0x2002 #endif #ifndef PCI_DEVICE_ID_DW2004 #define PCI_DEVICE_ID_DW2004 0x2004 #endif +#ifndef PCI_DEVICE_ID_DM05 +#define PCI_DEVICE_ID_DM05 0x1105 +#endif /* ----------------------------------------------- */ /* sdmc dm1105 registers */ @@ -150,6 +159,11 @@ #define DM1105_LNB_13V 0x00010100 #define DM1105_LNB_18V 0x00000100 +/* GPIO's for LNB power control for Axess DM05 - EXPERIMENTAL!*/ +#define DM05_LNB_MASK 0xfffffffc +#define DM05_LNB_13V 0x3fffd +#define DM05_LNB_18V 0x3fffc + static int ir_debug; module_param(ir_debug, int, 0644); MODULE_PARM_DESC(ir_debug, "enable debugging information for IR decoding"); @@ -316,7 +330,8 @@ static int dm1105dvb_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t voltage) { struct dm1105dvb *dm1105dvb = frontend_to_dm1105dvb(fe); - + switch (dm1105dvb->pdev->subsystem_device){ + case PCI_DEVICE_ID_DW2002: if (voltage == SEC_VOLTAGE_18) { outl(DM1105_LNB_MASK, dm_io_mem(DM1105_GPIOCTR)); outl(DM1105_LNB_18V, dm_io_mem(DM1105_GPIOVAL)); @@ -325,7 +340,19 @@ outl(DM1105_LNB_MASK, dm_io_mem(DM1105_GPIOCTR)); outl(DM1105_LNB_13V, dm_io_mem(DM1105_GPIOVAL)); } - + break; + + case PCI_DEVICE_ID_DM05: + if (voltage == SEC_VOLTAGE_18) { + outl(DM05_LNB_MASK, dm_io_mem(DM1105_GPIOCTR)); + outl(DM05_LNB_18V, dm_io_mem(DM1105_GPIOVAL)); + }else { + /*LNB ON-13V by default!*/ + outl(DM05_LNB_MASK, dm_io_mem(DM1105_GPIOCTR)); + outl(DM05_LNB_13V, dm_io_mem(DM1105_GPIOVAL)); + } + break; + } return 0; } @@ -632,6 +659,7 @@ dm1105dvb_set_voltage; } break; + case PCI_DEVICE_ID_DW2004: dm1105dvb->fe = dvb_attach( cx24116_attach, &serit_sp2633_config, @@ -870,6 +898,11 @@ .subvendor = PCI_ANY_ID, .subdevice = PCI_DEVICE_ID_DW2004, }, { + .vendor = PCI_VENDOR_ID_AXESS, + .device = PCI_DEVICE_ID_DM1105S, + .subvendor = PCI_ANY_ID, + .subdevice = PCI_DEVICE_ID_DM05, + }, { /* empty */ }, };