1. 09 5月, 2019 1 次提交
    • H
      media: field-order.rst: clarify FIELD_ANY and FIELD_NONE · 823a633e
      Hans Verkuil 提交于
      Rephrased the FIELD_ANY description: rather than explicitly list
      field values, just say 'when any field format is acceptable'. The
      list of FIELD values was outdated, so it was a bit confusing.
      
      The FIELD_NONE description said that 'The driver may also indicate
      this order when it cannot distinguish between V4L2_FIELD_TOP and
      V4L2_FIELD_BOTTOM'. This is false, NONE really means a full frame
      and userspace depends on that. So drop this line completely. There
      are no drivers that do this anyway.
      
      FIELD_TOP/BOTTOM/ALTERNATE indicate that the number of lines in the
      buffer are that of a field, not frame, so returning NONE here would
      cause huge problems.
      
      Finally attempt to clarify 'progressive' and 'interlaced' a little
      bit.
      Signed-off-by: NHans Verkuil <hverkuil-cisco@xs4all.nl>
      Signed-off-by: NMauro Carvalho Chehab <mchehab+samsung@kernel.org>
      823a633e
  2. 30 3月, 2019 1 次提交
  3. 05 12月, 2018 2 次提交
  4. 14 3月, 2017 1 次提交
  5. 01 12月, 2016 1 次提交
  6. 17 11月, 2016 1 次提交
    • M
      docs-rst: auto-generate PDF image files · 15a04d4e
      Mauro Carvalho Chehab 提交于
      The PDF files that contain media images were actually generated
      offline from their SVG or PNG source files.
      
      Sphinx can handle PNG sources automatially. So, let's just
      drop their PDF counterparts.
      
      For SVG, however, Sphinx doesn't produce the right tags to
      use the TexLive SVG support. Also, the SVG support is done via
      shell execution, with is not nice.
      
      So, while we don't have any support for SVG inside Sphinx
      core or as an extension, move the logic to build them to Makefile,
      producing the PDF images on runtime.
      
      NOTE: due to the way Sphinx works, the PDF images should be
      generated inside the Kernel source tree, as otherwise Sphinx
      won't find it, not obeying what's specified by "O=" makefile
      parameter.
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      Signed-off-by: NJonathan Corbet <corbet@lwn.net>
      15a04d4e
  7. 22 9月, 2016 1 次提交
    • L
      [media] v4l: doc: Remove row numbers from tables · c2b66caf
      Laurent Pinchart 提交于
      Shorten the tables by removing row numbers in comments, allowing for
      later insertion of rows with minimal diffs.
      
      All changes have been generated by the following script.
      
      import io
      import re
      import sys
      
      def process_table(fname, data):
      	if fname.endswith('hist-v4l2.rst'):
      		data = re.sub(u'\n{1,2}\t( ?)  -( ?) ?', u'\n\t\\1 -\\2', data, flags = re.MULTILINE)
      		data = re.sub(u'\n(\t|       )-  \.\. row [0-9]+\n\t  ?-( ?) ?', u'\\1* -\\2', data, flags = re.MULTILINE)
      	else:
      		data = re.sub(u'\n{1,2}       -( ?) ?', u'\n      -\\1', data, flags = re.MULTILINE)
      		data = re.sub(u'(\n?)(\n\n    -  \.\. row 1\n)', u'\n\\2', data, flags = re.MULTILINE)
      		data = re.sub(u'\n    -  \.\. row [0-9]+\n      -( ?) ?', u'    * -\\1', data, flags = re.MULTILINE)
      		data = re.sub(u'\n    -  \.\. row [0-9]+\n       \.\. (_[A-Z0-9_`-]*:)', u'\n    -  .. \\1', data, flags = re.MULTILINE)
      		data = re.sub(u'\n    -  \.\. (_[A-Z0-9_`-]*:)\n      -', u'    * .. \\1\n\n      -', data, flags = re.MULTILINE)
      		data = re.sub(u'^       - ', u'      -', data, flags = re.MULTILINE)
      		data = re.sub(u'^(\t{1,2})  ', u'\\1', data, flags = re.MULTILINE)
      
      	return data
      
      def process_file(fname, data):
      	buf = io.StringIO(data)
      	output = ''
      	in_table = False
      	table_separator = 0
      
      	for line in buf.readlines():
      		if line.find('.. flat-table::') != -1:
      			in_table = True
      			table = ''
      		elif in_table and not re.match('^[\t\n]|(    )', line):
      			in_table = False
      			output += process_table(fname, table)
      
      		if in_table:
      			table += line
      		else:
      			output += line
      
      	if in_table:
      		in_table = False
      		output += process_table(fname, table)
      
      	return output
      
      fname = sys.argv[1]
      
      data = file(fname, 'rb').read().decode('utf-8')
      data = process_file(fname, data)
      file(fname, 'wb').write(data.encode('utf-8'))
      Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      c2b66caf
  8. 09 9月, 2016 2 次提交
    • M
      [media] docs-rst: fix cross-references for videodev2.h · 56683d7d
      Mauro Carvalho Chehab 提交于
      There are several broken references there, due to the conversion to
      C domain. Fix them using this shell script and manually adjust what's
      broken:
      
      	# funcs is a file with the broken functions/references
      	for i in $(cat funcs|sort|uniq|perl -ne 'print "$1\n" if (m/(\S+)$/)'); do
      		i=${i//-/_}
      		echo $i
      		j=${i//_/-}
      		for k in $(git grep -l "_$j:" Documentation/); do
      			sed s,\_$j\:,"c\:type\:\: $i", <$k >a && mv a $k
      		done
      		for k in $(git grep -l "$j" Documentation/media/*.exceptions); do
      			sed s,$j,":c\:type\:\`$i\`", <$k >a && mv a $k
      		done
      		for k in $(git grep -l "$j" Documentation/); do
      			sed "s,:ref:\`$i <$j>\`,:c:type:\`$i\`," <$k >a && mv a $k
      			sed "s,:ref:\`$j\`,:c:type:\`$i\`," <$k >a && mv a $k
      			sed -E "s,:ref:\`(.*)<$j>\`,:c:type:\`\1<$i>\`," <$k >a && mv a $k
      		done
      		for k in $(git grep -l "<$j>" include/media); do
      			sed -E "s,:ref:\`(.*)<$j>\`,enum \&$i," <$k >a && mv a $k
      		done
      	done
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      56683d7d
    • M
      [media] docs-rst: convert uAPI structs to C domain · e8be7e97
      Mauro Carvalho Chehab 提交于
      instead of declaring the uAPI structs using usual refs, e. g.:
      	.. _foo-struct:
      
      Use the C domain way:
      	.. c:type:: foo_struct
      
      This way, the kAPI documentation can use cross-references to
      point to the uAPI symbols.
      
      That solves about ~100 undefined warnings like:
      	WARNING: c:type reference target not found: foo_struct
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      e8be7e97
  9. 22 8月, 2016 1 次提交
    • M
      [media] docs-rst: add tabularcolumns to all tables · 5bd4bb78
      Mauro Carvalho Chehab 提交于
      LaTeX doesn't handle too well auto-width on tables, and ReST
      markup requires an special tag to give it the needed hints.
      
      As we're using A4 paper, we have 17cm of useful spaces. As
      most media tables have widths, let's use it to generate the
      needed via the following perl script:
      
      my ($line_size, $table_header, $has_cols) = (17.5, 0, 0);
      my $out;
      my $header = "";
      my @widths = ();
      sub round { $_[0] > 0 ? int($_[0] + .5) : -int(-$_[0] + .5) }
      while (<>) {
      	if (!$table_header) {
      		$has_cols = 1 if (m/..\s+tabularcolumns::/);
      		if (m/..\s+flat-table::/) {
      			$table_header = 1;
      			$header = $_;
      			next;
      		}
      		$out .= $_;
      		next;
      	}
      	$header .= $_;
      	@widths = split(/ /, $1) if (m/:widths:\s+(.*)/);
      	if (m/^\n$/) {
      		if (!$has_cols && @widths) {
      			my ($tot, $t, $i) = (0, 0, 0);
      			foreach my $v(@widths) { $tot += $v; };
      			$out .= ".. tabularcolumns:: |";
      			for ($i = 0; $i < scalar @widths - 1; $i++) {
      				my $v = $widths[$i];
      				my $w = round(10 * ($v * $line_size) / $tot) / 10;
      				$out .= sprintf "p{%.1fcm}|", $w;
      				$t += $w;
      			}
      			my $w = $line_size - $t;
      			$out .= sprintf "p{%.1fcm}|\n\n", $w;
      		}
      		$out .= $header;
      		$table_header = 0;
      		$has_cols = 0;
      		$header = "";
      		@widths = ();
      	}
      }
      print $out;
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      5bd4bb78
  10. 08 7月, 2016 1 次提交
  11. 05 7月, 2016 2 次提交
  12. 04 7月, 2016 1 次提交
  13. 02 7月, 2016 1 次提交
  14. 01 7月, 2016 1 次提交