1. 22 7月, 2014 1 次提交
  2. 23 4月, 2014 1 次提交
  3. 25 3月, 2014 1 次提交
    • A
      [media] e4000: make VIDEO_V4L2 dependency optional · 320c6387
      Antti Palosaari 提交于
      That tuner driver is mainly for DVB API, but there is some V4L2 API
      controls for SDR usage. Make driver compile conditional so that V4L2
      is not mandatory. Without the V4L2 support driver is build as a DVB
      only, without SDR controls.
      
      Fixes following errors reported by kbuild test robot:
      ERROR: "v4l2_ctrl_auto_cluster" [drivers/media/tuners/e4000.ko] undefined!
      ERROR: "v4l2_ctrl_new_std" [drivers/media/tuners/e4000.ko] undefined!
      ERROR: "v4l2_ctrl_handler_init_class" [drivers/media/tuners/e4000.ko] undefined!
      ERROR: "v4l2_ctrl_handler_free" [drivers/media/tuners/e4000.ko] undefined!
      Reported-by: Nkbuild test robot <fengguang.wu@intel.com>
      Cc: Hans Verkuil <hverkuil@xs4all.nl>
      Signed-off-by: NAntti Palosaari <crope@iki.fi>
      Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
      320c6387
  4. 14 3月, 2014 2 次提交
  5. 19 12月, 2013 1 次提交
  6. 20 6月, 2013 1 次提交
    • M
      [media] Fix build when drivers are builtin and frontend modules · bb69ee27
      Mauro Carvalho Chehab 提交于
      There are a large number of reports that the media build is
      not compiling when some drivers are compiled as builtin, while
      the needed frontends are compiled as module.
      
      On the last one of such reports:
      	From: kbuild test robot <fengguang.wu@intel.com>
      	Subject: saa7134-dvb.c:undefined reference to `zl10039_attach'
      
      The .config file has:
      
      	CONFIG_VIDEO_SAA7134=y
      	CONFIG_VIDEO_SAA7134_DVB=y
      	# CONFIG_MEDIA_ATTACH is not set
      	CONFIG_DVB_ZL10039=m
      
      And it produces all those errors:
      
         drivers/built-in.o: In function `set_type':
         tuner-core.c:(.text+0x2f263e): undefined reference to `tea5767_attach'
         tuner-core.c:(.text+0x2f273e): undefined reference to `tda9887_attach'
         drivers/built-in.o: In function `tuner_probe':
         tuner-core.c:(.text+0x2f2d20): undefined reference to `tea5767_autodetection'
         drivers/built-in.o: In function `av7110_attach':
         av7110.c:(.text+0x330bda): undefined reference to `ves1x93_attach'
         av7110.c:(.text+0x330bf7): undefined reference to `stv0299_attach'
         av7110.c:(.text+0x330c63): undefined reference to `tda8083_attach'
         av7110.c:(.text+0x330d09): undefined reference to `ves1x93_attach'
         av7110.c:(.text+0x330d33): undefined reference to `tda8083_attach'
         av7110.c:(.text+0x330d5d): undefined reference to `stv0297_attach'
         av7110.c:(.text+0x330dbe): undefined reference to `stv0299_attach'
         drivers/built-in.o: In function `tuner_attach_dtt7520x':
         ngene-cards.c:(.text+0x3381cb): undefined reference to `dvb_pll_attach'
         drivers/built-in.o: In function `demod_attach_lg330x':
         ngene-cards.c:(.text+0x33828a): undefined reference to `lgdt330x_attach'
         drivers/built-in.o: In function `demod_attach_stv0900':
         ngene-cards.c:(.text+0x3383d5): undefined reference to `stv090x_attach'
         drivers/built-in.o: In function `cineS2_probe':
         ngene-cards.c:(.text+0x338b7f): undefined reference to `drxk_attach'
         drivers/built-in.o: In function `configure_tda827x_fe':
         saa7134-dvb.c:(.text+0x346ae7): undefined reference to `tda10046_attach'
         drivers/built-in.o: In function `dvb_init':
         saa7134-dvb.c:(.text+0x347283): undefined reference to `mt352_attach'
         saa7134-dvb.c:(.text+0x3472cd): undefined reference to `mt352_attach'
         saa7134-dvb.c:(.text+0x34731c): undefined reference to `tda10046_attach'
         saa7134-dvb.c:(.text+0x34733c): undefined reference to `tda10046_attach'
         saa7134-dvb.c:(.text+0x34735c): undefined reference to `tda10046_attach'
         saa7134-dvb.c:(.text+0x347378): undefined reference to `tda10046_attach'
         saa7134-dvb.c:(.text+0x3473db): undefined reference to `tda10046_attach'
         drivers/built-in.o:saa7134-dvb.c:(.text+0x347502): more undefined references to `tda10046_attach' follow
         drivers/built-in.o: In function `dvb_init':
         saa7134-dvb.c:(.text+0x347812): undefined reference to `mt352_attach'
         saa7134-dvb.c:(.text+0x347951): undefined reference to `mt312_attach'
         saa7134-dvb.c:(.text+0x3479a9): undefined reference to `mt312_attach'
      >> saa7134-dvb.c:(.text+0x3479c1): undefined reference to `zl10039_attach'
      
      This is happening because a builtin module can't use directly a symbol
      found on a module. By enabling CONFIG_MEDIA_ATTACH, the configuration
      becomes valid, as dvb_attach() macro loads the module if needed, making
      the symbol available to the builtin module.
      
      While this bug started to appear after the patches that use IS_DEFINED
      macro (like changeset 7b34be71), this
      bug is a way ancient than that.
      
      The thing is that, before the IS_DEFINED() patches, the logic used to be:
      
             && defined(MODULE))
      struct dvb_frontend *zl10039_attach(struct dvb_frontend *fe,
      					u8 i2c_addr,
      					struct i2c_adapter *i2c);
      static inline struct dvb_frontend *zl10039_attach(struct dvb_frontend *fe,
      					u8 i2c_addr,
      					struct i2c_adapter *i2c)
      {
      	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
      	return NULL;
      }
      
      The above code, with the .config file used, was evoluting to FALSE
      (instead of TRUE as it should be, as CONFIG_DVB_ZL10039 is 'm'),
      and were adding the static inline code at saa7134-dvb, instead
      of the external call. So, while it weren't producing any compilation
      error, the code weren't working either.
      
      So, as the overhead for using CONFIG_MEDIA_ATTACH is minimal, just
      enable it, if MODULES is defined.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      bb69ee27
  7. 17 4月, 2013 1 次提交
  8. 22 3月, 2013 1 次提交
  9. 26 9月, 2012 1 次提交
  10. 24 9月, 2012 1 次提交
  11. 18 9月, 2012 1 次提交
  12. 21 8月, 2012 1 次提交
    • M
      [media] Kconfig: merge all customise options into just one · fccea74f
      Mauro Carvalho Chehab 提交于
      Instead of having 3 options to allow customizing the media
      sub-drivers (tuners, I2C drivers, frontends), merge all of
      them into just one.
      
      That simplifies the life for users, as they can just keep
      this untouched.
      
      Life for developers is also simpler, as there's now just
      one Kconfig item to remember, for the ancillary sub-drivers
      providing supports for chips that could change from one
      board design to another.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      fccea74f
  13. 14 8月, 2012 1 次提交
  14. 06 7月, 2012 2 次提交
    • M
      [media] media: Remove VIDEO_MEDIA Kconfig option · 8cfd9dcc
      Mauro Carvalho Chehab 提交于
      In the past, it was possible to have either DVB or V4L2 core
      as module and the other as builtin. Such config never make much
      sense, and created several issues in order to make the Kconfig
      dependency to work, as all drivers that depend on both (most
      TV drivers) would need to be compiled as 'm'. Due to that,
      the VIDEO_MEDIA config option were added.
      
      Instead of such weird approach, let's just use the MEDIA_SUPPORT
      =y or =m to select if the media subsystem core will be either
      builtin or module, simplifying the building system logic.
      
      Also, fix the tuners configuration, by enabling them only if
      a tuner is required. So, if just webcam/grabbers support is
      selected, no tuner option will be selected. Also, if only digital
      TV is selected, no analog tuner support is selected.
      
      That removes the need of using EXPERT customise options, when
      analog TV is not selected.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      8cfd9dcc
    • M
      [media] media: reorganize the main Kconfig items · b4c184e5
      Mauro Carvalho Chehab 提交于
      Change the main items to:
      
      <m> Multimedia support  --->
         [ ]   Cameras/video grabbers support
         [ ]   Analog TV support
         [ ]   Digital TV support
         [ ]   AM/FM radio receivers/transmitters support
         [ ]   Remote Controller support
      
      This provides an interface that is clearer to end users that
      are compiling the Kernel, and will allow the building system
      to automatically unselect drivers for unused functions.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
      b4c184e5
  15. 20 5月, 2012 2 次提交
  16. 10 4月, 2012 2 次提交
  17. 06 1月, 2012 1 次提交
  18. 05 1月, 2012 1 次提交
  19. 28 7月, 2011 1 次提交
  20. 20 5月, 2011 1 次提交
  21. 21 1月, 2011 1 次提交
    • D
      kconfig: rename CONFIG_EMBEDDED to CONFIG_EXPERT · 6a108a14
      David Rientjes 提交于
      The meaning of CONFIG_EMBEDDED has long since been obsoleted; the option
      is used to configure any non-standard kernel with a much larger scope than
      only small devices.
      
      This patch renames the option to CONFIG_EXPERT in init/Kconfig and fixes
      references to the option throughout the kernel.  A new CONFIG_EMBEDDED
      option is added that automatically selects CONFIG_EXPERT when enabled and
      can be used in the future to isolate options that should only be
      considered for embedded systems (RISC architectures, SLOB, etc).
      
      Calling the option "EXPERT" more accurately represents its intention: only
      expert users who understand the impact of the configuration changes they
      are making should enable it.
      Reviewed-by: NIngo Molnar <mingo@elte.hu>
      Acked-by: NDavid Woodhouse <david.woodhouse@intel.com>
      Signed-off-by: NDavid Rientjes <rientjes@google.com>
      Cc: Greg KH <gregkh@suse.de>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Robin Holt <holt@sgi.com>
      Cc: <linux-arch@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      6a108a14
  22. 22 11月, 2010 1 次提交
  23. 21 10月, 2010 1 次提交
  24. 09 8月, 2010 1 次提交
  25. 06 12月, 2009 1 次提交
  26. 30 3月, 2009 4 次提交
  27. 27 7月, 2008 2 次提交
  28. 20 7月, 2008 1 次提交
  29. 05 6月, 2008 1 次提交
    • I
      V4L/DVB (7974): fix MEDIA_TUNER && FW_LOADER build error · 6637dea6
      Ingo Molnar 提交于
      -tip testing found the following build failure:
      
        LD      .tmp_vmlinux1
        drivers/built-in.o: In function `generic_set_freq':
        tuner-xc2028.c:(.text+0xbd896): undefined reference to `request_firmware'
        tuner-xc2028.c:(.text+0xbdd7a): undefined reference to `release_firmware'
        drivers/built-in.o: In function `xc_load_fw_and_init_tuner':
        xc5000.c:(.text+0xc68e6): undefined reference to `request_firmware'
        xc5000.c:(.text+0xc6abe): undefined reference to `release_firmware'
      
      with this config:
      
        http://redhat.com/~mingo/misc/config-Tue_May_20_18_11_34_CEST_2008.bad
      
      the reason is another kconfig tool bug that has to be worked around in
      the driver's Kconfig file: if FW_LOADER is selected in a second
      dependency, that is not properly propagated up the dependencies.
      
      in this case, FW_LOADER is selected from MEDIA_TUNER_XC2028:
      
        config MEDIA_TUNER_XC2028
              tristate "XCeive xc2028/xc3028 tuners"
              depends on VIDEO_MEDIA && I2C
              depends on HOTPLUG
              select FW_LOADER
      
      which got selected by MEDIA_TUNER:
      
        config MEDIA_TUNER
              tristate
              default VIDEO_MEDIA && I2C
              depends on VIDEO_MEDIA && I2C
              select FW_LOADER if !MEDIA_TUNER_CUSTOMIZE && HOTPLUG
      
      but the kconfig tool did not pick up this second-order dependency and
      allowed CONFIG_FW_LOADER=m to be selected - in which case the build
      fails.
      
      the workaround i found was to move the select of FW_LOADER one level up,
      so that the buggy kconfig tool can notice it and can act appropriately.
      This problem can probably be worked around in other ways as well, i went
      for the minimal fix.
      
      Obviously, the kconfig tool should be fixed, it is not reasonable to
      expect driver authors to do manual dependency resolution (that kconfig
      itself already does) and uglify the Kconfig files. The kconfig tool did
      nothing to warn about this situation and did not prevent this faulty
      .config from being constructed.
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@infradead.org>
      6637dea6
  30. 14 5月, 2008 3 次提交