>Moikka!
>
>On 08/07/2014 12:31 PM, nibble.max wrote:
>>>> @@ -523,6 +508,17 @@ static int m88ds3103_set_frontend(struct dvb_frontend 
>>>> *fe)
>>>>    
>>>>            priv->delivery_system = c->delivery_system;
>>>>    
>>>> +  if (priv->cfg->start_ctrl) {
>>>> +          for (len = 0; len < 30 ; len++) {
>>>> +                  m88ds3103_read_status(fe, &status);
>>>> +                  if (status & FE_HAS_LOCK) {
>>>> +                          priv->cfg->start_ctrl(fe);
>>>> +                          break;
>>>> +                  }
>>>> +                  msleep(20);
>>>> +          }
>>>> +  }
>>>> +
>>>
>>> What is idea of that start_ctrl logic? It looks ugly. Why it is needed?
>>> What is wrong with default DVB-core implementation? You should not need
>>> to poll demod lock here and then call streaming control callback from
>>> USB driver. If you implement .streaming_ctrl() callback to DVB USB
>>> driver, it is called automatically for you.
>> It is nothing with streaming_ctrl of DVB USB driver.
>> It relates with the hardware chip problem.
>> The m88ds3103 will not output ts clock when it powers up at the first time.
>> It starts to output ts clock as soon as it locks the signal.
>> But the slave fifo of Cypress usb chip really need this clock to work.
>> If there is no this clock, the salve fifo will stop.
>> start_ctrl logic is used to restart the salve fifo when the ts clock is 
>> valid.
>
>OK. Then we have to find out some solution... Is there anyone who has a
>nice idea how to signal USB interface driver when demod gains a lock?
>Sure USB driver could poll read_status() too, but it does not sound good
>solution neither.
>
>How about overriding FE .read_status() callback. It is called all the
>time by DVB-core when frontend is open. Hook .read_status() to USB
>interface driver, then call original .read_status() (implemented by
>m88ds3103 driver), and after each call check if status is LOCKED or NOT
>LOCKED. When status changes from NOT LOCKED to LOCKED call that board
>specific routine which restarts TS FIFO. No change for demod driver
>needed at all.
>
It sounds a good idea.
Try to remove start_ctrl() and set_voltage() callback from demod driver
and send the patch for m88ds3103 later.
>regards
>Antto
>
>-- 
>http://palosaari.fi/

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to