<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/include/media/v4l2-subdev.h, branch linux-4.19.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.19.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.19.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-07-20T14:16:05Z</updated>
<entry>
<title>media: subdev: disallow ioctl for saa6588/davinci</title>
<updated>2021-07-20T14:16:05Z</updated>
<author>
<name>Arnd Bergmann</name>
</author>
<published>2021-06-14T10:34:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=79666b99401652b696b64faecc8dc78b0abe36c4'/>
<id>urn:sha1:79666b99401652b696b64faecc8dc78b0abe36c4</id>
<content type='text'>
commit 0a7790be182d32b9b332a37cb4206e24fe94b728 upstream.

The saa6588_ioctl() function expects to get called from other kernel
functions with a 'saa6588_command' pointer, but I found nothing stops it
from getting called from user space instead, which seems rather dangerous.

The same thing happens in the davinci vpbe driver with its VENC_GET_FLD
command.

As a quick fix, add a separate .command() callback pointer for this
driver and change the two callers over to that.  This change can easily
get backported to stable kernels if necessary, but since there are only
two drivers, we may want to eventually replace this with a set of more
specialized callbacks in the long run.

Fixes: c3fda7f835b0 ("V4L/DVB (10537): saa6588: convert to v4l2_subdev.")
Cc: stable@vger.kernel.org
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Reviewed-by: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>media: add tuner standby op, use where needed</title>
<updated>2018-03-21T16:05:39Z</updated>
<author>
<name>Hans Verkuil</name>
</author>
<published>2018-02-21T07:49:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3aab15af9ad8fa8dc0399cb4b679d7cb85c20a56'/>
<id>urn:sha1:3aab15af9ad8fa8dc0399cb4b679d7cb85c20a56</id>
<content type='text'>
The v4l2_subdev core s_power op was used for two different things: power on/off
sensors or video decoders/encoders and to put a tuner in standby (and only the
tuner!). There is no 'tuner wakeup' op, that's done automatically when the tuner
is accessed.

The danger with calling (s_power, 0) to put a tuner into standby is that it is
usually broadcast for all subdevs. So a video receiver subdev that supports
s_power will also be powered off, and since there is no corresponding (s_power, 1)
they will never be powered on again.

In addition, this is specifically meant for tuners only since they draw the most
current.

This patch adds a new tuner op called 'standby' and replaces all calls to
(core, s_power, 0) by (tuner, standby). This prevents confusion between the two
uses of s_power. Note that there is no overlap: bridge drivers either just want
to put the tuner into standby, or they deal with powering on/off sensors. Never
both.

This also makes it easier to replace s_power for the remaining bridge drivers
with some PM code later.

Whether we want something cleaner for tuners in the future is a separate topic.
There is a lot of legacy code surrounding tuners, and I am very hesitant about
making changes there.

Signed-off-by: Hans Verkuil &lt;hans.verkuil@cisco.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
</content>
</entry>
<entry>
<title>media: v4l2-subdev: document remaining undocumented functions</title>
<updated>2018-03-08T11:06:48Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2017-12-19T11:18:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=02679876b74d26ea8368d63e38998e1aa4df028d'/>
<id>urn:sha1:02679876b74d26ea8368d63e38998e1aa4df028d</id>
<content type='text'>
There are several undocumented v4l2-subdev functions that are
part of kAPI. Document them.

Acked-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
</content>
</entry>
<entry>
<title>media: v4l2-subdev: get rid of __V4L2_SUBDEV_MK_GET_TRY() macro</title>
<updated>2018-03-08T11:06:41Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2017-12-19T11:03:55Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ab9bb73a0664595b76bb6e4a7ae10064aa58379f'/>
<id>urn:sha1:ab9bb73a0664595b76bb6e4a7ae10064aa58379f</id>
<content type='text'>
X-Virus-Scanned: Debian amavisd-new at dev.s-opensource.com
media: v4l2-subdev: get rid of __V4L2_SUBDEV_MK_GET_TRY() macro

The __V4L2_SUBDEV_MK_GET_TRY() macro is used to define
3 functions that have the same arguments. The code of those
functions is simple enough to just declare them, de-obfuscating
the code.

While here, replace BUG_ON() by WARN_ON() as there's no reason
why to panic the Kernel if this fails.

Acked-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
</content>
</entry>
<entry>
<title>media: v4l2-subdev.h: remove obsolete g/s_parm</title>
<updated>2018-02-22T17:31:59Z</updated>
<author>
<name>Hans Verkuil</name>
</author>
<published>2018-01-19T13:57:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8180b4f4f589ee34d698d30ae6ad7042bf7ff1a0'/>
<id>urn:sha1:8180b4f4f589ee34d698d30ae6ad7042bf7ff1a0</id>
<content type='text'>
Signed-off-by: Hans Verkuil &lt;hansverk@cisco.com&gt;
Acked-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
</content>
</entry>
<entry>
<title>media: fix usage of whitespaces and on indentation</title>
<updated>2018-01-04T18:12:01Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2018-01-04T11:47:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4a3fad709bbc74c85fffff8903d17b5e35723365'/>
<id>urn:sha1:4a3fad709bbc74c85fffff8903d17b5e35723365</id>
<content type='text'>
On several places, whitespaces are being used for indentation,
or even at the end of the line.

Fix them.

Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
</content>
</entry>
<entry>
<title>media: v4l2-subdev: convert frame description to enum</title>
<updated>2017-12-18T19:15:48Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2017-10-05T20:32:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bb92895a1c68569055106a6d9bf5c330e5e6a371'/>
<id>urn:sha1:bb92895a1c68569055106a6d9bf5c330e5e6a371</id>
<content type='text'>
As kernel-doc doesn't support documenting #define values,
and using enum makes easier to identify where the values
are used, convert V4L2_MBUS_FRAME_DESC_FL_* to enum, and
use BIT() macro.

While here, fix the description at v4l2_mbus_frame_desc_entry,
in order to match what's described for
V4L2_MBUS_FRAME_DESC_FL_LEN_MAX.

Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
</content>
</entry>
<entry>
<title>media: v4l2-subdev: better document IO pin configuration flags</title>
<updated>2017-12-18T19:14:29Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2017-10-05T20:17:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4eb2f55728abbe5adb526a9553752d0add5a9550'/>
<id>urn:sha1:4eb2f55728abbe5adb526a9553752d0add5a9550</id>
<content type='text'>
Convert V4L2_SUBDEV_IO_PIN_* to enums, use BIT() and document
via kernel-doc.

Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
</content>
</entry>
<entry>
<title>media: v4l2-subdev: fix a typo</title>
<updated>2017-12-18T17:38:24Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2017-10-06T13:54:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0722ef82e573bce8254f69ff314ef0edbfd1c1f0'/>
<id>urn:sha1:0722ef82e573bce8254f69ff314ef0edbfd1c1f0</id>
<content type='text'>
ownner -&gt; owner

Acked-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
</content>
</entry>
<entry>
<title>media: v4l2-subdev: fix description of tuner.s_radio ops</title>
<updated>2017-12-18T16:57:15Z</updated>
<author>
<name>Mauro Carvalho Chehab</name>
</author>
<published>2017-10-06T13:50:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=07bf9355cab2bcfa917704fb759ec07229d3037a'/>
<id>urn:sha1:07bf9355cab2bcfa917704fb759ec07229d3037a</id>
<content type='text'>
The description there is completely broken and it mentions
an ioctl that doesn't exist.

Fix it.

Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@s-opensource.com&gt;
</content>
</entry>
</feed>
