1. 18 11月, 2015 10 次提交
  2. 17 11月, 2015 19 次提交
    • M
      [media] include/media: move platform_data to linux/platform_data/media · eb4b0ec7
      Mauro Carvalho Chehab 提交于
      Let's not mix platform_data headers with the core headers. Instead, let's
      create a subdir at linux/platform_data and move the headers to that
      common place, adding it to MAINTAINERS.
      
      The headers were moved with:
      	mkdir include/linux/platform_data/media/; git mv include/media/gpio-ir-recv.h include/media/ir-rx51.h include/media/mmp-camera.h include/media/omap1_camera.h include/media/omap4iss.h include/media/s5p_hdmi.h include/media/si4713.h include/media/sii9234.h include/media/smiapp.h include/media/soc_camera.h include/media/soc_camera_platform.h include/media/timb_radio.h include/media/timb_video.h include/linux/platform_data/media/
      
      And the references fixed with this script:
          MAIN_DIR="linux/platform_data/"
          PREV_DIR="media/"
          DIRS="media/"
      
          echo "Checking affected files" >&2
          for i in $DIRS; do
      	for j in $(find include/$MAIN_DIR/$i -type f -name '*.h'); do
      		 n=`basename $j`
      		git grep -l $n
      	done
          done|sort|uniq >files && (
      	echo "Handling files..." >&2;
      	echo "for i in \$(cat files|grep -v Documentation); do cat \$i | \\";
      	(
      		cd include/$MAIN_DIR;
      		for j in $DIRS; do
      			for i in $(ls $j); do
      				echo "perl -ne 's,(include [\\\"\\<])$PREV_DIR($i)([\\\"\\>]),\1$MAIN_DIR$j\2\3,; print \$_' |\\";
      			done;
      		done;
      		echo "cat > a && mv a \$i; done";
      	);
      	echo "Handling documentation..." >&2;
      	echo "for i in MAINTAINERS \$(cat files); do cat \$i | \\";
      	(
      		cd include/$MAIN_DIR;
      		for j in $DIRS; do
      			for i in $(ls $j); do
      				echo "  perl -ne 's,include/$PREV_DIR($i)\b,include/$MAIN_DIR$j\1,; print \$_' |\\";
      			done;
      		done;
      		echo "cat > a && mv a \$i; done"
      	);
          ) >script && . ./script
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NLee Jones <lee.jones@linaro.org>
      Acked-by: NKrzysztof Kozlowski <k.kozlowski@samsung.com>
      eb4b0ec7
    • M
      [media] include/media: move driver interface headers to a separate dir · d647f0b7
      Mauro Carvalho Chehab 提交于
      Let's not mix headers used by the core with those headers that
      are needed by some driver-specific interface header.
      
      The headers used on drivers were manually moved using:
          mkdir include/media/drv-intf/
          git mv include/media/cx2341x.h include/media/cx25840.h \
      	include/media/exynos-fimc.h include/media/msp3400.h \
      	include/media/s3c_camif.h include/media/saa7146.h \
      	include/media/saa7146_vv.h  include/media/sh_mobile_ceu.h \
      	include/media/sh_mobile_csi2.h include/media/sh_vou.h \
      	include/media/si476x.h include/media/soc_mediabus.h \
      	include/media/tea575x.h include/media/drv-intf/
      
      And the references for those headers were corrected using:
      
          MAIN_DIR="media/"
          PREV_DIR="media/"
          DIRS="drv-intf/"
      
          echo "Checking affected files" >&2
          for i in $DIRS; do
      	for j in $(find include/$MAIN_DIR/$i -type f -name '*.h'); do
      		 n=`basename $j`
      		git grep -l $n
      	done
          done|sort|uniq >files && (
      	echo "Handling files..." >&2;
      	echo "for i in \$(cat files|grep -v Documentation); do cat \$i | \\";
      	(
      		cd include/$MAIN_DIR;
      		for j in $DIRS; do
      			for i in $(ls $j); do
      				echo "perl -ne 's,(include [\\\"\\<])$PREV_DIR($i)([\\\"\\>]),\1$MAIN_DIR$j\2\3,; print \$_' |\\";
      			done;
      		done;
      		echo "cat > a && mv a \$i; done";
      	);
      	echo "Handling documentation..." >&2;
      	echo "for i in MAINTAINERS \$(cat files); do cat \$i | \\";
      	(
      		cd include/$MAIN_DIR;
      		for j in $DIRS; do
      			for i in $(ls $j); do
      				echo "  perl -ne 's,include/$PREV_DIR($i)\b,include/$MAIN_DIR$j\1,; print \$_' |\\";
      			done;
      		done;
      		echo "cat > a && mv a \$i; done"
      	);
          ) >script && . ./script
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      d647f0b7
    • M
      [media] include/media: split I2C headers from V4L2 core · b5dcee22
      Mauro Carvalho Chehab 提交于
      Currently, include/media is messy, as it contains both the V4L2 core
      headers and some driver-specific headers on the same place. That makes
      harder to identify what core headers should be documented and what
      headers belong to I2C drivers that are included only by bridge/main
      drivers that would require the functions provided by them.
      
      Let's move those i2c specific files to its own subdirectory.
      
      The files to move were produced via the following script:
      	mkdir include/media/i2c
      	(cd include/media; for i in *.h; do n=`echo $i|sed s/.h$/.c/`; if [ -e ../../drivers/media/i2c/$n ]; then echo $i; git mv $i i2c/; fi; done)
      	(cd include/media; for i in *.h; do n=`echo $i|sed s/.h$/.c/`; if [ -e ../../drivers/media/*/i2c/$n ]; then echo $i; git mv $i i2c/; fi; done)
      	for i in include/media/*.h; do n=`basename $i`;  (for j in $(git grep -l $n); do dirname $j; done)|sort|uniq|grep -ve '^.$' > list; num=$(wc -l list|cut -d' ' -f1); if [ $num == 1 ]; then if [ "`grep i2c list`" != "" ]; then git mv $i include/media/i2c; fi; fi; done
      
      And the references corrected via this script:
          MAIN_DIR="media/"
          PREV_DIR="media/"
          DIRS="i2c/"
      
          echo "Checking affected files" >&2
          for i in $DIRS; do
      	for j in $(find include/$MAIN_DIR/$i -type f -name '*.h'); do
      		 n=`basename $j`
      		git grep -l $n
      	done
          done|sort|uniq >files && (
      	echo "Handling files..." >&2;
      	echo "for i in \$(cat files|grep -v Documentation); do cat \$i | \\";
      	(
      		cd include/$MAIN_DIR;
      		for j in $DIRS; do
      			for i in $(ls $j); do
      				echo "perl -ne 's,(include [\\\"\\<])$PREV_DIR($i)([\\\"\\>]),\1$MAIN_DIR$j\2\3,; print \$_' |\\";
      			done;
      		done;
      		echo "cat > a && mv a \$i; done";
      	);
      	echo "Handling documentation..." >&2;
      	echo "for i in MAINTAINERS \$(cat files); do cat \$i | \\";
      	(
      		cd include/$MAIN_DIR;
      		for j in $DIRS; do
      			for i in $(ls $j); do
      				echo "  perl -ne 's,include/$PREV_DIR($i)\b,include/$MAIN_DIR$j\1,; print \$_' |\\";
      			done;
      		done;
      		echo "cat > a && mv a \$i; done"
      	);
          ) >script && . ./script
      
      Merged Sakari Ailus patch that moves smiapp.h to include/media/i2c.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      b5dcee22
    • M
      [media] dvb_frontend.h: improve documentation for struct dvb_tuner_ops · bef0e549
      Mauro Carvalho Chehab 提交于
      Improve the comments at the header, removing kernel-doc
      tag from where it doesn't belong, grouping the legacy tuner
      functions, and improving the text.
      
      No functional changes.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      bef0e549
    • M
      [media] dvb_frontend: get rid of set_state ops & related data · 45346e0e
      Mauro Carvalho Chehab 提交于
      The get_state()/set_state and the corresponding data types
      (struct tuner_state and enum tuner_param) are old DVB interfaces
      that came from the DVBv3 time.
      
      Nowadays, set_params() provide a better way to set the tuner
      and demod parameters. So, no need to keep those legacy stuff,
      as all drivers that were using it got converted.
      
      With this patch, all kABI elements at dvb_frontend.h are now
      documented.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      45346e0e
    • M
      [media] stb6100: get rid of get_state()/set_state() · 65f0f686
      Mauro Carvalho Chehab 提交于
      It is tricky to get rid of those ops here, as the stv0299 driver
      wants to set frequency in separate from setting the bandwidth.
      
      So, we use a small trick: we temporarely fill the cache with
      0 for either frequency or bandwidth and add some logic at
      set_params to only change the property(ies) that aren't zero.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      65f0f686
    • M
      [media] tda6655: get rid of get_state()/set_state() · b2d3afcf
      Mauro Carvalho Chehab 提交于
      Those ops aren't used by any driver, with is weird. I suspect
      that mantis_vb3030 driver were not working properly...
      
      Anyway, now that the driver uses the set_parms, the DVB
      frontend core should do the right thing.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      b2d3afcf
    • M
      [media] tda8261: don't use set_state/get_state callbacks · e417668d
      Mauro Carvalho Chehab 提交于
      Those callbacks are meant to be used only on some very specific
      cases. There's absolutely no need to do that at tda8261, as
      the only parameter that it allows to be set/get is the frequency.
      
      So, use the standard get_params() and get_frequency() kABI
      ops.
      
      There's no need to touch at any bridge driver, as all interactions
      are done via the macros at tda8261_cfg.h.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      e417668d
    • M
      [media] tda666x: add support for set_parms() and get_frequency() · 8fdc25bf
      Mauro Carvalho Chehab 提交于
      Those two callbacks are the ones that should be used by normal
      DVB frontend drivers.
      
      Add support for them.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      8fdc25bf
    • M
      [media] tda665x: split set_frequency from set_state · 8e6c4be3
      Mauro Carvalho Chehab 提交于
      On tda665x, set_state only sets frequency. As the kABI for set_state
      is meant to be used only on special cases, split the function
      into two, in order to allow it to be latter used by a DVBv5
      cache params logic.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      8e6c4be3
    • M
      [media] stb6100: get rid of tuner_state at struct stb6100_state · cffdbfe7
      Mauro Carvalho Chehab 提交于
      The stb6100 driver has a struct tuner_state on its state
      struct, that it is used only to store the bandwidth. Even so,
      this struct is not really used, as every time the bandwidth
      is get or set, it goes through the hardware.
      
      So, get rid of that.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      cffdbfe7
    • M
      [media] dvb_frontend.h: get rid of unused tuner params/states · 2184e253
      Mauro Carvalho Chehab 提交于
      There are several tuner_param values that aren't by any driver or core:
      	DVBFE_TUNER_TUNERSTEP
      	DVBFE_TUNER_IFFREQ
      	DVBFE_TUNER_REFCLOCK
      	DVBFE_TUNER_IQSENSE
      	DVBFE_TUNER_DUMMY
      
      Several of those correspond to the values at the tuner_state
      struct with is also only initialized by not used anyware:
      	u32 tunerstep;
      	u32 ifreq;
      	u32 refclock;
      
      It doesn't make sense to keep anything at the kABI that it is
      not used. So, get rid of them.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      2184e253
    • M
      [media] dvb_frontend.h: Document suspend/resume functions · 41c0b78e
      Mauro Carvalho Chehab 提交于
      Those functions should be implemented on all drivers. So, document
      them.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      41c0b78e
    • M
      [media] dvb_frontend: resume tone and voltage · 3663b31b
      Mauro Carvalho Chehab 提交于
      As SEC tone and voltage could have changed during
      suspend(), restore them to their previous values at
      resume().
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      3663b31b
    • M
      [media] demux.h: Some documentation fixups for the header · 03946b2d
      Mauro Carvalho Chehab 提交于
      The DocBook description of this header has two issues:
      - It calls the Kernel ABI as API, instead of kABI;
      - It mentions that the DVB frontend kABI is not described
        within the document. As this will actually generate a
        single DocBook, this is actually not true, now that
        the documentation for the frontend was added.
      
      So, fix both issues.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      03946b2d
    • M
      [media] dvb_frontend.h: Add a description for the header · 02f028cf
      Mauro Carvalho Chehab 提交于
      This header file provides the kABI functions used by the
      Digital TV Frontend core support. Add a description for
      this kABI, to add at the device_drivers Kernel DocBook.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      02f028cf
    • M
      [media] dvb_frontend: document the most used functions · 66f4b3cb
      Mauro Carvalho Chehab 提交于
      Documents the most used functions at the Digital TV
      kABI: dvb_frontend_register(), dvb_frontend_unregister()
      and dvb_frontend_detach().
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      66f4b3cb
    • M
      [media] Document the obscure dvb_frontend_reinitialise() · 75f400b0
      Mauro Carvalho Chehab 提交于
      The dvb_frontend_reinitialise() function is a special case
      used by just one frontend. Document it, for completeness.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      75f400b0
    • M
      [media] dvb: document dvb_frontend_sleep_until() · 4deea4cb
      Mauro Carvalho Chehab 提交于
      This function is used mainly at the DVB core, in order to provide
      emulation for a legacy ioctl. The only current exception is
      the stv0299 driver, with takes more than 8ms to switch voltage,
      breaking the emulation for FE_DISHNETWORK_SEND_LEGACY_CMD.
      
      Document that.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
      4deea4cb
  3. 16 11月, 2015 4 次提交
  4. 11 11月, 2015 7 次提交