Merge tag 'media/v5.14-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
Pull media updates from Mauro Carvalho Chehab: - V4L2 core control API was split into separate files - New RC maps: tango and tc-90405 - Hantro driver got support for G2/HEVC decoder - av7710 is moving to staging, together with some legacy APIs - several cleanups related to compat_ioctl32 code - Move the MPEG-2 stateless control type out of staging - Address several issues with RPM get logic on media drivers - Lots of cleanups, bug fixes and improvements. * tag 'media/v5.14-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (394 commits) media: s5p-mfc: Fix display delay control creation media: mtk-vpu: on suspend, read/write regs only if vpu is running media: video-mux: Skip dangling endpoints media: Fix Media Controller API config checks media: i2c: rdacm20: Re-work ov10635 reset media: i2c: rdacm20: Check return values media: i2c: rdacm20: Report camera module name media: i2c: rdacm20: Enable noise immunity media: i2c: rdacm20: Embed 'serializer' field media: i2c: rdacm21: Power up OV10640 before OV490 media: i2c: rdacm21: Fix OV10640 powerup media: i2c: rdacm21: Add delay after OV490 reset media: i2c: max9271: Introduce wake_up() function media: i2c: max9271: Check max9271_write() return media: i2c: max9286: Rework comments in .bound() media: i2c: max9286: Define high channel amplitude media: i2c: max9286: Cache channel amplitude media: i2c: max9286: Rename reverse_channel_mv media: i2c: max9286: Adjust parameters indent media: hantro: add support for Rockchip RK3036 ...
This commit is contained in:
@@ -15,11 +15,12 @@ Authors:
|
||||
General information
|
||||
-------------------
|
||||
|
||||
This class of cards has a bt878a as the PCI interface, and require the bttv driver
|
||||
for accessing the i2c bus and the gpio pins of the bt8xx chipset.
|
||||
This class of cards has a bt878a as the PCI interface, and require the bttv
|
||||
driver for accessing the i2c bus and the gpio pins of the bt8xx chipset.
|
||||
|
||||
Please see :doc:`bttv-cardlist` for a complete list of Cards based on the
|
||||
Conexant Bt8xx PCI bridge supported by the Linux Kernel.
|
||||
Please see Documentation/admin-guide/media/bttv-cardlist.rst for a complete
|
||||
list of Cards based on the Conexant Bt8xx PCI bridge supported by the
|
||||
Linux Kernel.
|
||||
|
||||
In order to be able to compile the kernel, some config options should be
|
||||
enabled::
|
||||
@@ -80,7 +81,7 @@ for dvb-bt8xx drivers by passing modprobe parameters may be necessary.
|
||||
Running TwinHan and Clones
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
As shown at :doc:`bttv-cardlist`, TwinHan and
|
||||
As shown at Documentation/admin-guide/media/bttv-cardlist.rst, TwinHan and
|
||||
clones use ``card=113`` modprobe parameter. So, in order to properly
|
||||
detect it for devices without EEPROM, you should use::
|
||||
|
||||
@@ -105,12 +106,12 @@ The autodetected values are determined by the cards' "response string".
|
||||
In your logs see f. ex.: dst_get_device_id: Recognize [DSTMCI].
|
||||
|
||||
For bug reports please send in a complete log with verbose=4 activated.
|
||||
Please also see :doc:`ci`.
|
||||
Please also see Documentation/admin-guide/media/ci.rst.
|
||||
|
||||
Running multiple cards
|
||||
~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
See :doc:`bttv-cardlist` for a complete list of
|
||||
See Documentation/admin-guide/media/bttv-cardlist.rst for a complete list of
|
||||
Card ID. Some examples:
|
||||
|
||||
=========================== ===
|
||||
|
||||
@@ -24,7 +24,8 @@ If your board has digital TV, you'll also need::
|
||||
|
||||
./scripts/config -m DVB_BT8XX
|
||||
|
||||
In this case, please see :doc:`bt8xx` for additional notes.
|
||||
In this case, please see Documentation/admin-guide/media/bt8xx.rst
|
||||
for additional notes.
|
||||
|
||||
Make bttv work with your card
|
||||
-----------------------------
|
||||
@@ -39,7 +40,7 @@ If it doesn't bttv likely could not autodetect your card and needs some
|
||||
insmod options. The most important insmod option for bttv is "card=n"
|
||||
to select the correct card type. If you get video but no sound you've
|
||||
very likely specified the wrong (or no) card type. A list of supported
|
||||
cards is in :doc:`bttv-cardlist`.
|
||||
cards is in Documentation/admin-guide/media/bttv-cardlist.rst.
|
||||
|
||||
If bttv takes very long to load (happens sometimes with the cheap
|
||||
cards which have no tuner), try adding this to your modules configuration
|
||||
@@ -57,8 +58,8 @@ directory should be enough for it to be autoload during the driver's
|
||||
probing mode (e. g. when the Kernel boots or when the driver is
|
||||
manually loaded via ``modprobe`` command).
|
||||
|
||||
If your card isn't listed in :doc:`bttv-cardlist` or if you have
|
||||
trouble making audio work, please read :ref:`still_doesnt_work`.
|
||||
If your card isn't listed in Documentation/admin-guide/media/bttv-cardlist.rst
|
||||
or if you have trouble making audio work, please read :ref:`still_doesnt_work`.
|
||||
|
||||
|
||||
Autodetecting cards
|
||||
@@ -77,8 +78,8 @@ the Subsystem ID in the second line, looks like this:
|
||||
only bt878-based cards can have a subsystem ID (which does not mean
|
||||
that every card really has one). bt848 cards can't have a Subsystem
|
||||
ID and therefore can't be autodetected. There is a list with the ID's
|
||||
at :doc:`bttv-cardlist` (in case you are interested or want to mail
|
||||
patches with updates).
|
||||
at Documentation/admin-guide/media/bttv-cardlist.rst
|
||||
(in case you are interested or want to mail patches with updates).
|
||||
|
||||
|
||||
.. _still_doesnt_work:
|
||||
@@ -259,15 +260,15 @@ bug. It is very helpful if you can tell where exactly it broke
|
||||
With a hard freeze you probably doesn't find anything in the logfiles.
|
||||
The only way to capture any kernel messages is to hook up a serial
|
||||
console and let some terminal application log the messages. /me uses
|
||||
screen. See :doc:`/admin-guide/serial-console` for details on setting
|
||||
up a serial console.
|
||||
screen. See Documentation/admin-guide/serial-console.rst for details on
|
||||
setting up a serial console.
|
||||
|
||||
Read :doc:`/admin-guide/bug-hunting` to learn how to get any useful
|
||||
Read Documentation/admin-guide/bug-hunting.rst to learn how to get any useful
|
||||
information out of a register+stack dump printed by the kernel on
|
||||
protection faults (so-called "kernel oops").
|
||||
|
||||
If you run into some kind of deadlock, you can try to dump a call trace
|
||||
for each process using sysrq-t (see :doc:`/admin-guide/sysrq`).
|
||||
for each process using sysrq-t (see Documentation/admin-guide/sysrq.rst).
|
||||
This way it is possible to figure where *exactly* some process in "D"
|
||||
state is stuck.
|
||||
|
||||
|
||||
@@ -11,12 +11,14 @@ its supported drivers.
|
||||
|
||||
Please see:
|
||||
|
||||
- :doc:`/userspace-api/media/index`
|
||||
for the userspace APIs used on media devices.
|
||||
Documentation/userspace-api/media/index.rst
|
||||
|
||||
- :doc:`/driver-api/media/index`
|
||||
for driver development information and Kernel APIs used by
|
||||
media devices;
|
||||
- for the userspace APIs used on media devices.
|
||||
|
||||
Documentation/driver-api/media/index.rst
|
||||
|
||||
- for driver development information and Kernel APIs used by
|
||||
media devices;
|
||||
|
||||
The media subsystem
|
||||
===================
|
||||
|
||||
@@ -234,22 +234,23 @@ The IPU3 ImgU pipelines can be configured using the Media Controller, defined at
|
||||
Running mode and firmware binary selection
|
||||
------------------------------------------
|
||||
|
||||
ImgU works based on firmware, currently the ImgU firmware support run 2 pipes in
|
||||
time-sharing with single input frame data. Each pipe can run at certain mode -
|
||||
"VIDEO" or "STILL", "VIDEO" mode is commonly used for video frames capture, and
|
||||
"STILL" is used for still frame capture. However, you can also select "VIDEO" to
|
||||
capture still frames if you want to capture images with less system load and
|
||||
power. For "STILL" mode, ImgU will try to use smaller BDS factor and output
|
||||
larger bayer frame for further YUV processing than "VIDEO" mode to get high
|
||||
quality images. Besides, "STILL" mode need XNR3 to do noise reduction, hence
|
||||
"STILL" mode will need more power and memory bandwidth than "VIDEO" mode. TNR
|
||||
will be enabled in "VIDEO" mode and bypassed by "STILL" mode. ImgU is running at
|
||||
“VIDEO” mode by default, the user can use v4l2 control V4L2_CID_INTEL_IPU3_MODE
|
||||
(currently defined in drivers/staging/media/ipu3/include/intel-ipu3.h) to query
|
||||
and set the running mode. For user, there is no difference for buffer queueing
|
||||
between the "VIDEO" and "STILL" mode, mandatory input and main output node
|
||||
should be enabled and buffers need be queued, the statistics and the view-finder
|
||||
queues are optional.
|
||||
ImgU works based on firmware, currently the ImgU firmware support run 2 pipes
|
||||
in time-sharing with single input frame data. Each pipe can run at certain mode
|
||||
- "VIDEO" or "STILL", "VIDEO" mode is commonly used for video frames capture,
|
||||
and "STILL" is used for still frame capture. However, you can also select
|
||||
"VIDEO" to capture still frames if you want to capture images with less system
|
||||
load and power. For "STILL" mode, ImgU will try to use smaller BDS factor and
|
||||
output larger bayer frame for further YUV processing than "VIDEO" mode to get
|
||||
high quality images. Besides, "STILL" mode need XNR3 to do noise reduction,
|
||||
hence "STILL" mode will need more power and memory bandwidth than "VIDEO" mode.
|
||||
TNR will be enabled in "VIDEO" mode and bypassed by "STILL" mode. ImgU is
|
||||
running at "VIDEO" mode by default, the user can use v4l2 control
|
||||
V4L2_CID_INTEL_IPU3_MODE (currently defined in
|
||||
drivers/staging/media/ipu3/include/uapi/intel-ipu3.h) to query and set the
|
||||
running mode. For user, there is no difference for buffer queueing between the
|
||||
"VIDEO" and "STILL" mode, mandatory input and main output node should be
|
||||
enabled and buffers need be queued, the statistics and the view-finder queues
|
||||
are optional.
|
||||
|
||||
The firmware binary will be selected according to current running mode, such log
|
||||
"using binary if_to_osys_striped " or "using binary if_to_osys_primary_striped"
|
||||
@@ -586,7 +587,7 @@ preserved.
|
||||
References
|
||||
==========
|
||||
|
||||
.. [#f5] drivers/staging/media/ipu3/include/intel-ipu3.h
|
||||
.. [#f5] drivers/staging/media/ipu3/include/uapi/intel-ipu3.h
|
||||
|
||||
.. [#f1] https://github.com/intel/nvt
|
||||
|
||||
|
||||
@@ -50,7 +50,8 @@ To build and install, you should run::
|
||||
Once the new Kernel is booted, saa7134 driver should be loaded automatically.
|
||||
|
||||
Depending on the card you might have to pass ``card=<nr>`` as insmod option.
|
||||
If so, please check :doc:`saa7134-cardlist` for valid choices.
|
||||
If so, please check Documentation/admin-guide/media/saa7134-cardlist.rst
|
||||
for valid choices.
|
||||
|
||||
Once you have your card type number, you can pass a modules configuration
|
||||
via a file (usually, it is either ``/etc/modules.conf`` or some file at
|
||||
|
||||
Reference in New Issue
Block a user