2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-23 12:43:55 +08:00
linux-next/Documentation/media/uapi/dvb/fe-diseqc-recv-slave-reply.rst
Mauro Carvalho Chehab 5bd4bb7817 [media] docs-rst: add tabularcolumns to all tables
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: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2016-08-22 10:07:12 -03:00

86 lines
1.5 KiB
ReStructuredText

.. -*- coding: utf-8; mode: rst -*-
.. _FE_DISEQC_RECV_SLAVE_REPLY:
********************************
ioctl FE_DISEQC_RECV_SLAVE_REPLY
********************************
Name
====
FE_DISEQC_RECV_SLAVE_REPLY - Receives reply from a DiSEqC 2.0 command
Synopsis
========
.. cpp:function:: int ioctl( int fd, int request, struct dvb_diseqc_slave_reply *argp )
Arguments
=========
``fd``
File descriptor returned by :ref:`open() <frontend_f_open>`.
``request``
FE_DISEQC_RECV_SLAVE_REPLY
``argp``
pointer to struct
:ref:`dvb_diseqc_slave_reply <dvb-diseqc-slave-reply>`
Description
===========
Receives reply from a DiSEqC 2.0 command.
.. _dvb-diseqc-slave-reply:
struct dvb_diseqc_slave_reply
-----------------------------
.. tabularcolumns:: |p{4.4cm}|p{4.4cm}|p{8.7cm}|
.. flat-table:: struct dvb_diseqc_slave_reply
:header-rows: 0
:stub-columns: 0
:widths: 1 1 2
- .. row 1
- uint8_t
- msg[4]
- DiSEqC message (framing, data[3])
- .. row 2
- uint8_t
- msg_len
- Length of the DiSEqC message. Valid values are 0 to 4, where 0
means no msg
- .. row 3
- int
- timeout
- Return from ioctl after timeout ms with errorcode when no message
was received
Return Value
============
On success 0 is returned, on error -1 and the ``errno`` variable is set
appropriately. The generic error codes are described at the
:ref:`Generic Error Codes <gen-errors>` chapter.