1. 21 Jan, 2012 22 commits
  2. 18 Jan, 2012 17 commits
  3. 17 Jan, 2012 1 commit
    • Mauro Carvalho Chehab's avatar
      [media] dvb_frontend: Don't call get_frontend() if idle · 51dcb19a
      Mauro Carvalho Chehab authored
      If the frontend is in idle state, don't call get_frontend.
      
      Calling get_frontend() when the device is not tuned may
      result in wrong parameters to be returned to the
      userspace.
      
      I was tempted to not call get_frontend() at all, except
      inside the dvb frontend thread, but this won't work for
      all cases. The ISDB-T specs (ABNT NBR 15601 and ARIB
      STD-B31) allow the broadcaster to dynamically change the
      channel specs at runtime. That means that an ISDB-T optimized
      application may want/need to monitor the TMCC tables, decoded
      at the frontends via get_frontend call.
      
      So, let's do the simpler change here.
      
      Eventually, the logic could be changed to work only if
      the device is tuned and has lock, but, even so, the
      lock is also standard-dependent. For ISDB-T, the right
      lock to wait is that the demod has TMCC lock. So, drivers
      may need to implement some logic to detect if the get_frontend
      info was retrieved or not.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
      51dcb19a