1. 07 1月, 2012 6 次提交
  2. 06 1月, 2012 25 次提交
  3. 05 1月, 2012 9 次提交
    • M
      [media] Don't test for ops->info.type inside drivers · 6225f18b
      Mauro Carvalho Chehab 提交于
      Now, ops->info.type is handled inside the dvb_frontend
      core, only for DVBv3 calls, and according with the
      delivery system. So, drivers should not care or use it,
      otherwise, it may have issues with DVBv5 calls.
      
      The drivers that were still using it were detected via
      this small temporary hack:
      
      --- a/include/linux/dvb/frontend.h
      +++ b/include/linux/dvb/frontend.h
      @@ -29,13 +29,16 @@
       #include <linux/types.h>
      
       typedef enum fe_type {
      +#if defined(__DVB_CORE__) || !defined (__KERNEL__)
              FE_QPSK,
              FE_QAM,
              FE_OFDM,
              FE_ATSC
      +#else
      +FE_FOOO
      +#endif
       } fe_type_t;
      
      -
       typedef enum fe_caps {
              FE_IS_STUPID                    = 0,
              FE_CAN_INVERSION_AUTO           = 0x1,
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      6225f18b
    • M
      [media] drxk: Add support for parallel mode and prints mpeg mode · 534e0481
      Mauro Carvalho Chehab 提交于
      While the driver has support for both serial and parallel mode,
      There's was way to select serial mode via configuration. Add
      a config option for that, while keeping the default in serial mode.
      
      Also, at debug mode, it will now print a message when mpeg is
      enabled/disabled, and showing if parallel or serial mode were
      selected, helping developers to double-check if the DRX-K is at
      the right mode.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      534e0481
    • M
      0d3e6fe7
    • M
      [media] dvb: Remove ops->info.type from frontends · 7581e61d
      Mauro Carvalho Chehab 提交于
      Now that this field is deprecated, and core generates it for
      DVBv3 calls, remove it from the drivers.
      
      It also adds .delsys on the few drivers where this were missed.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      7581e61d
    • M
      [media] dvb: get rid of fepriv->parameters_in · e399ce77
      Mauro Carvalho Chehab 提交于
      This var were used during DVBv3 times, in order to keep a copy
      of the parameters used by the events. This is not needed anymore,
      as the parameters are now dynamically generated from the DVBv5
      structure.
      
      So, just get rid of it. That means that a DVBv5 pure call won't
      use anymore any DVBv3 parameters.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      e399ce77
    • M
      [media] dvb-core: Fix ISDB-T defaults · a520ca97
      Mauro Carvalho Chehab 提交于
      using -1 for ISDB-T parameters do the wrong thing. Fix it.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      a520ca97
    • M
      [media] dvb_frontend: Fix DVBv3 emulation · 04be0f76
      Mauro Carvalho Chehab 提交于
      For frontends with ISDB-T, DVB-T2, CMDBTH, etc, some code is
      needed, in order to provide emulation. Add such code, and check
      if the desired delivery system is supported by the frontend.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      04be0f76
    • M
      [media] dvb_frontend: Don't use ops->info.type anymore · 5bfaadde
      Mauro Carvalho Chehab 提交于
      Get rid of using ops->info.type defined on DVB drivers,
      as it doesn't apply anymore.
      
      Currently, one driver (cxd2820) supports more than one different
      info.type, as it can be used for DVB-T/T2 and DVB-C. There are more
      drivers like that to come. So, the same frontend will have
      
      different DVBv3 types, depending on the current delivery system.
      
      This breaks the existing logic at dvb_frontend, that assumes that
      just one delivery system DVBv3 type is supported by all delsys.
      
      In order to easy the DVBv3->DVBv5 conversion, an ancillary function
      that maps DVBv3 delivery systems into DVBv5 were added.
      
      Also, on all places, except for the event logic, the DVBv5 cache
      will be used to check parameters, instead of the DVBv5 copy.
      
      This patch simplifies the cache sync logic, and warrants that the
      cache will be in a clear state at DVB frontend register. This way,
      ops->info.type will be filled to reflect the first delivery system,
      providing backward compatibility support for it.
      
      For example, in the cases like cxd2820, where the delivery systems
      are defined as:
              .delsys = { SYS_DVBT, SYS_DVBT2, SYS_DVBC_ANNEX_A },
      
      A pure DVBv3 will be able to use both DVB-T and DVB-T2, as, at
      DVB cache clear, the ops->info.type will be equal to FE_OFDM.
      
      However, DVB-C won't be visible. A quick workaround would be to
      do a DVBv5 call to set the delivery system to SYS_DVBC_ANNEX_A.
      
      After such call, ops->info.type will be equal to FE_QAM, and a
      DVBv3 application will see the frontend as a DVB-C one.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      5bfaadde
    • M
      [media] dvb: move dvb_set_frontend logic into a separate routine · 9682cea2
      Mauro Carvalho Chehab 提交于
      This change is there in order to prepare the code to avoid calling
       dvb_frontend_ioctl_legacy() from FE_SET_PROPERTY.
      
      A call to dvb_frontend_ioctl_legacy() would require to update the
      DVBv3 cache without need, mangling calls for newer delivery system
      without any reason.
      
      No functional changes here.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      9682cea2