Re: DM1105: could not attach frontend 195d:1105

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 3 февраля 2010 00:07:36 Nameer Kazzaz wrote:
> Nameer Kazzaz wrote:
> > Igor M. Liplianin wrote:
> >> On 2 февраля 2010 17:21:46 Nameer Kazzaz wrote:
> >>> Hi Igor,
> >>>     What do you think ? if I can help you solve this, let me know
> >>> what I
> >>> can do.
> >>>
> >>> Thanks
> >>> Nameer
> >>>
> >>> Nameer Kazzaz wrote:
> >>>> Hi there,
> >>>> dmesg output with patched dm1105.c against current v4l-dvb 'modprob
> >>>> dm1105 card=4'
> >>>>
> >>>> dm1105 0000:05:0f.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
> >>>> DVB: registering new adapter (dm1105)
> >>>> dm1105 0000:05:0f.0: MAC dd49b0dc
> >>>> dm1105 0000:05:0f.0: could not attach frontend
> >>>> dm1105 0000:05:0f.0: PCI INT A disabled
> >>>>
> >>>> Thanks
> >>>> Nameer Kazzaz
> >>>>
> >>>> Igor M. Liplianin wrote:
> >>>>> On 20 ?????? 2010 23:20:20 paul10@xxxxxxxxxxxx wrote:
> >>>>>> Igor wrote:
> >>>>>>> Oh, that is wrong. It is registers addresses, Never touch this.
> >>>>>>>
> >>>>>>> Let's look on that part of code:
> >>>>>>>
> >>>>>>> /* GPIO's for LNB power control */
> >>>>>>> #define DM1105_LNB_MASK                         0x00000000 //
> >>>>>>> later in
> >>>>>>
> >>>>>> code write it to
> >>>>>>
> >>>>>>> DM1105_GPIOCTR, all GPIO's as OUT
> >>>>>>> #define DM1105_LNB_OFF                          0x00020000 //
> >>>>>>> later in
> >>>>>>
> >>>>>> code write it to
> >>>>>>
> >>>>>>> DM1105_GPIOVAL, set GPIO17 to HIGH
> >>>>>>>
> >>>>>>> But you have not to change this.
> >>>>>>> Right way is to write another entry in cards structure and so on.
> >>>>>>> Better leave it to me.
> >>>>>>>
> >>>>>>> Regards
> >>>>>>> Igor
> >>>>>>
> >>>>>> Thanks for all your help, I understand better now.  I have moved to
> >>>>>> code
> >>>>>> like that at the bottom.  It still doesn't work, but feels a lot
> >>>>>> closer.
> >>>>>>
> >>>>>> Before I keep playing with values, I want to check I'm on the right
> >>>>>> track.
> >>>>>> Does it look right?  Specific questions:
> >>>>>> 1. I see there is a hw_init function.  Should I be using that?  I
> >>>>>> put the
> >>>>>> logic into fe_attach because there was already card-specific
> >>>>>> logic in
> >>>>>> there.  But this feels like hw initialisation.
> >>>>>>
> >>>>>> 2. Should I set the control to input or output?  I'm assuming input
> >>>>>> = 1.
> >>>>>>
> >>>>>> 3. Would pin 15 be numbered from the left or right - is it 0x4, or
> >>>>>> 0x2000?
> >>>>>>
> >>>>>> Thanks,
> >>>>>>
> >>>>>> Paul
> >>>>>>
> >>>>>> *** dm1105.c.old        2010-01-13 16:15:00.000000000 +1100
> >>>>>> --- dm1105.c    2010-01-21 08:13:14.000000000 +1100
> >>>>>> ***************
> >>>>>> *** 51,56 ****
> >>>>>> --- 51,57 ----
> >>>>>>   #define DM1105_BOARD_DVBWORLD_2002    1
> >>>>>>   #define DM1105_BOARD_DVBWORLD_2004    2
> >>>>>>   #define DM1105_BOARD_AXESS_DM05               3
> >>>>>> + #define DM1105_BOARD_UNBRANDED                4
> >>>>>>
> >>>>>>   /* ----------------------------------------------- */
> >>>>>>   /*
> >>>>>> ***************
> >>>>>> *** 171,176 ****
> >>>>>> --- 172,181 ----
> >>>>>>   #define DM05_LNB_13V                          0x00020000
> >>>>>>   #define DM05_LNB_18V                          0x00030000
> >>>>>>
> >>>>>> + /* GPIO's for demod reset for unbranded 195d:1105 */
> >>>>>> + #define UNBRANDED_DEMOD_MASK                  0x00008000
> >>>>>> + #define UNBRANDED_DEMOD_RESET                 0x00008000
> >>>>>> +
> >>>>>>   static unsigned int card[]  = {[0 ... 3] = UNSET };
> >>>>>>   module_param_array(card,  int, NULL, 0444);
> >>>>>>   MODULE_PARM_DESC(card, "card type");
> >>>>>> ***************
> >>>>>> *** 206,211 ****
> >>>>>> --- 211,219 ----
> >>>>>>         [DM1105_BOARD_AXESS_DM05] = {
> >>>>>>                 .name           = "Axess/EasyTv DM05",
> >>>>>>         },
> >>>>>> +       [DM1105_BOARD_UNBRANDED] = {
> >>>>>> +               .name           = "Unbranded 195d:1105",
> >>>>>> +         },
> >>>>>>   };
> >>>>>>
> >>>>>>   static const struct dm1105_subid dm1105_subids[] = {
> >>>>>> ***************
> >>>>>> *** 229,234 ****
> >>>>>> --- 237,246 ----
> >>>>>>                 .subvendor = 0x195d,
> >>>>>>                 .subdevice = 0x1105,
> >>>>>>                 .card      = DM1105_BOARD_AXESS_DM05,
> >>>>>> +       }, {
> >>>>>> +               .subvendor = 0x195d,
> >>>>>> +               .subdevice = 0x1105,
> >>>>>> +               .card      = DM1105_BOARD_UNBRANDED,
> >>>>>>         },
> >>>>>>   };
> >>>>>>
> >>>>>> ***************
> >>>>>> *** 698,703 ****
> >>>>>> --- 710,727 ----
> >>>>>>                         dm1105dvb->fe->ops.set_voltage =
> >>>>>> dm1105dvb_set_voltage;
> >>>>>>
> >>>>>>                 break;
> >>>>>> +       case DM1105_BOARD_UNBRANDED:
> >>>>>> +                 printk(KERN_ERR "Attaching as board_unbranded\n");
> >>>>>> +               outl(UNBRANDED_DEMOD_MASK,
> >>>>>> dm_io_mem(DM1105_GPIOCTR));
> >>>>>> +               outl(UNBRANDED_DEMOD_RESET ,
> >>>>>> dm_io_mem(DM1105_GPIOVAL));
> >>>>>> +               dm1105dvb->fe = dvb_attach(
> >>>>>> +                       si21xx_attach, &serit_config,
> >>>>>> +                       &dm1105dvb->i2c_adap);
> >>>>>> +                       if (dm1105dvb->fe)
> >>>>>> +                               dm1105dvb->fe->ops.set_voltage =
> >>>>>> +                                       dm1105dvb_set_voltage;
> >>>>>> +
> >>>>>> +               break;
> >>>>>>         case DM1105_BOARD_DVBWORLD_2002:
> >>>>>>         case DM1105_BOARD_AXESS_DM05:
> >>>>>>         default:
> >>>>>
> >>>>> Some things are missed, like keep GPIO15 high in set_voltage
> >>>>> function.
> >>>>> Try attached patch against current v4l-dvb tree with modprobe option
> >>>>> card=4
> >>>>>     modprobe dm1105 card=4
> >>
> >> Hi Nameer,
> >> You can modify sended by me patch to guess GPIO pin. Simply try all
> >> of them, it is only 17. Just replace all appearances DM1105_GPIO(15)
> >> with number you want.
> >
> > Ok I will do that.
> >
> > Thanks
> > Nameer
>
> Hi Igor,
>     I tried all DM1105_GPIO(0) to DM1105_GPIO(17), same error. Any Idea ?
>
> Nameer
Hi

I have some ideas, for example, to add to driver i2c_scan function.

-- 
Igor M. Liplianin
Microsoft Windows Free Zone - Linux used for all Computing Tasks
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux