• Michael Krufky's avatar
    V4L/DVB (3359): Redesign tuners struct for maximum flexibility · 7b0ac9cd
    Michael Krufky authored
    - Tunertype struct redefined to allow one or more tuner_params structs
      per tuner definition, one for each video standard.
    - Each tuner_params struct has an element containing an arbitrary
      amount of tuner_ranges.
      (this is needed for dvb tuners - to be handled later)
    - A tuner_range may be referenced by multiple tuner_params structs.
      There are many duplicates in here. Reusing tuner_range structs,
      rather than defining new ones for each tuner, will cut down on
      memory usage, and is preferred when possible.
    - tunertype struct contains an element, has_tda988x.
      We must set this for all tunertypes that contain a tda988x
      chip, and then we can remove this setting from the various
      card structs.
    - Improves tuners array memory usage efficiency.
    - Right now, all tuners are using the first tuner_params[] array element
      for analog mode. In the future, we will be merging similar tuner
      definitions together, such that each tuner definition will have a
      tuner_params struct for each available video standard. At that point,
      the tuner_params[] array element will be chosen based on the video
      standard in use.
    Signed-off-by: default avatarMichael Krufky <mkrufky@m1k.net>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
    7b0ac9cd
tuner.h 8.19 KB