Re: RFC - xc5000 init_fw option is broken for HVR-950q

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

 



On Tue, Dec 16, 2008 at 11:29 PM, Devin Heitmueller
<devin.heitmueller@xxxxxxxxx> wrote:
> On Tue, Dec 16, 2008 at 11:22 PM, Michael Krufky <mkrufky@xxxxxxxxxxx> wrote:
>> On Tue, Dec 16, 2008 at 11:06 PM, Michael Krufky <mkrufky@xxxxxxxxxxx> wrote:
>>> Devin,
>>>
>>> On Tue, Dec 16, 2008 at 10:31 PM, Devin Heitmueller
>>> <devin.heitmueller@xxxxxxxxx> wrote:
>>>> It looks like because the reset callback is set *after* the
>>>> dvb_attach(xc5000...), the if the init_fw option is set the firmware
>>>> load will fail (saying "xc5000: no tuner reset callback function,
>>>> fatal")
>>>>
>>>> We need to be setting the callback *before* the dvb_attach() to handle
>>>> this case.
>>>>
>>>> Let me know if anybody sees anything wrong with this proposed patch,
>>>> otherwise I will submit a pull request.
>>>>
>>>> Thanks,
>>>>
>>>> Devin
>>>>
>>>> diff -r 95d2c94ec371 linux/drivers/media/video/au0828/au0828-dvb.c
>>>> --- a/linux/drivers/media/video/au0828/au0828-dvb.c     Tue Dec 16
>>>> 21:35:23 2008 -0500
>>>> +++ b/linux/drivers/media/video/au0828/au0828-dvb.c     Tue Dec 16
>>>> 22:27:57 2008 -0500
>>>> @@ -382,6 +382,9 @@
>>>>
>>>>        dprintk(1, "%s()\n", __func__);
>>>>
>>>> +       /* define general-purpose callback pointer */
>>>> +       dvb->frontend->callback = au0828_tuner_callback;
>>>> +
>>>>        /* init frontend */
>>>>        switch (dev->board) {
>>>>        case AU0828_BOARD_HAUPPAUGE_HVR850:
>>>> @@ -431,8 +434,6 @@
>>>>                       __func__);
>>>>                return -1;
>>>>        }
>>>> -       /* define general-purpose callback pointer */
>>>> -       dvb->frontend->callback = au0828_tuner_callback;
>>>>
>>>>        /* register everything */
>>>>
>>>> --
>>>> Devin J. Heitmueller
>>>> http://www.devinheitmueller.com
>>>> AIM: devinheitmueller
>>>
>>
>> Devin and I  (mostly Devin, actually) just realized that
>> "dvb->frontend = NULL until after the demod is attached.  The line
>> needs to be between the two dvb_attach() calls."
>>
>> So, I think we should leave the callback assignment where it is, and
>> just get rid of the init_fw parameter for the xc5000 driver.
>>
>> I added this init_fw option in the first place, and we really dont
>> need it there anymore.
>>
>> -Mike
>>
>
> Updated patch attached which removes the init_fw option entirely.
>
> Devin
>

Agreed.

Acked-by: Michael Krufky <mkrufky@xxxxxxxxxxx>

_______________________________________________
linux-dvb mailing list
linux-dvb@xxxxxxxxxxx
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

[Index of Archives]     [Linux Media]     [Video 4 Linux]     [Asterisk]     [Samba]     [Xorg]     [Xfree86]     [Linux USB]

  Powered by Linux