Skip to content

Commit 31e798f

Browse files
committed
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 ...
2 parents 36824f1 + 61c6f04 commit 31e798f

556 files changed

Lines changed: 18934 additions & 14519 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Documentation/admin-guide/media/bt8xx.rst

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,12 @@ Authors:
1515
General information
1616
-------------------
1717

18-
This class of cards has a bt878a as the PCI interface, and require the bttv driver
19-
for accessing the i2c bus and the gpio pins of the bt8xx chipset.
18+
This class of cards has a bt878a as the PCI interface, and require the bttv
19+
driver for accessing the i2c bus and the gpio pins of the bt8xx chipset.
2020

21-
Please see :doc:`bttv-cardlist` for a complete list of Cards based on the
22-
Conexant Bt8xx PCI bridge supported by the Linux Kernel.
21+
Please see Documentation/admin-guide/media/bttv-cardlist.rst for a complete
22+
list of Cards based on the Conexant Bt8xx PCI bridge supported by the
23+
Linux Kernel.
2324

2425
In order to be able to compile the kernel, some config options should be
2526
enabled::
@@ -80,7 +81,7 @@ for dvb-bt8xx drivers by passing modprobe parameters may be necessary.
8081
Running TwinHan and Clones
8182
~~~~~~~~~~~~~~~~~~~~~~~~~~
8283

83-
As shown at :doc:`bttv-cardlist`, TwinHan and
84+
As shown at Documentation/admin-guide/media/bttv-cardlist.rst, TwinHan and
8485
clones use ``card=113`` modprobe parameter. So, in order to properly
8586
detect it for devices without EEPROM, you should use::
8687

@@ -105,12 +106,12 @@ The autodetected values are determined by the cards' "response string".
105106
In your logs see f. ex.: dst_get_device_id: Recognize [DSTMCI].
106107

107108
For bug reports please send in a complete log with verbose=4 activated.
108-
Please also see :doc:`ci`.
109+
Please also see Documentation/admin-guide/media/ci.rst.
109110

110111
Running multiple cards
111112
~~~~~~~~~~~~~~~~~~~~~~
112113

113-
See :doc:`bttv-cardlist` for a complete list of
114+
See Documentation/admin-guide/media/bttv-cardlist.rst for a complete list of
114115
Card ID. Some examples:
115116

116117
=========================== ===

Documentation/admin-guide/media/bttv.rst

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ If your board has digital TV, you'll also need::
2424

2525
./scripts/config -m DVB_BT8XX
2626

27-
In this case, please see :doc:`bt8xx` for additional notes.
27+
In this case, please see Documentation/admin-guide/media/bt8xx.rst
28+
for additional notes.
2829

2930
Make bttv work with your card
3031
-----------------------------
@@ -39,7 +40,7 @@ If it doesn't bttv likely could not autodetect your card and needs some
3940
insmod options. The most important insmod option for bttv is "card=n"
4041
to select the correct card type. If you get video but no sound you've
4142
very likely specified the wrong (or no) card type. A list of supported
42-
cards is in :doc:`bttv-cardlist`.
43+
cards is in Documentation/admin-guide/media/bttv-cardlist.rst.
4344

4445
If bttv takes very long to load (happens sometimes with the cheap
4546
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
5758
probing mode (e. g. when the Kernel boots or when the driver is
5859
manually loaded via ``modprobe`` command).
5960

60-
If your card isn't listed in :doc:`bttv-cardlist` or if you have
61-
trouble making audio work, please read :ref:`still_doesnt_work`.
61+
If your card isn't listed in Documentation/admin-guide/media/bttv-cardlist.rst
62+
or if you have trouble making audio work, please read :ref:`still_doesnt_work`.
6263

6364

6465
Autodetecting cards
@@ -77,8 +78,8 @@ the Subsystem ID in the second line, looks like this:
7778
only bt878-based cards can have a subsystem ID (which does not mean
7879
that every card really has one). bt848 cards can't have a Subsystem
7980
ID and therefore can't be autodetected. There is a list with the ID's
80-
at :doc:`bttv-cardlist` (in case you are interested or want to mail
81-
patches with updates).
81+
at Documentation/admin-guide/media/bttv-cardlist.rst
82+
(in case you are interested or want to mail patches with updates).
8283

8384

8485
.. _still_doesnt_work:
@@ -259,15 +260,15 @@ bug. It is very helpful if you can tell where exactly it broke
259260
With a hard freeze you probably doesn't find anything in the logfiles.
260261
The only way to capture any kernel messages is to hook up a serial
261262
console and let some terminal application log the messages. /me uses
262-
screen. See :doc:`/admin-guide/serial-console` for details on setting
263-
up a serial console.
263+
screen. See Documentation/admin-guide/serial-console.rst for details on
264+
setting up a serial console.
264265

265-
Read :doc:`/admin-guide/bug-hunting` to learn how to get any useful
266+
Read Documentation/admin-guide/bug-hunting.rst to learn how to get any useful
266267
information out of a register+stack dump printed by the kernel on
267268
protection faults (so-called "kernel oops").
268269

269270
If you run into some kind of deadlock, you can try to dump a call trace
270-
for each process using sysrq-t (see :doc:`/admin-guide/sysrq`).
271+
for each process using sysrq-t (see Documentation/admin-guide/sysrq.rst).
271272
This way it is possible to figure where *exactly* some process in "D"
272273
state is stuck.
273274

Documentation/admin-guide/media/index.rst

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,14 @@ its supported drivers.
1111

1212
Please see:
1313

14-
- :doc:`/userspace-api/media/index`
15-
for the userspace APIs used on media devices.
14+
Documentation/userspace-api/media/index.rst
1615

17-
- :doc:`/driver-api/media/index`
18-
for driver development information and Kernel APIs used by
19-
media devices;
16+
- for the userspace APIs used on media devices.
17+
18+
Documentation/driver-api/media/index.rst
19+
20+
- for driver development information and Kernel APIs used by
21+
media devices;
2022

2123
The media subsystem
2224
===================

Documentation/admin-guide/media/ipu3.rst

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -234,22 +234,23 @@ The IPU3 ImgU pipelines can be configured using the Media Controller, defined at
234234
Running mode and firmware binary selection
235235
------------------------------------------
236236

237-
ImgU works based on firmware, currently the ImgU firmware support run 2 pipes in
238-
time-sharing with single input frame data. Each pipe can run at certain mode -
239-
"VIDEO" or "STILL", "VIDEO" mode is commonly used for video frames capture, and
240-
"STILL" is used for still frame capture. However, you can also select "VIDEO" to
241-
capture still frames if you want to capture images with less system load and
242-
power. For "STILL" mode, ImgU will try to use smaller BDS factor and output
243-
larger bayer frame for further YUV processing than "VIDEO" mode to get high
244-
quality images. Besides, "STILL" mode need XNR3 to do noise reduction, hence
245-
"STILL" mode will need more power and memory bandwidth than "VIDEO" mode. TNR
246-
will be enabled in "VIDEO" mode and bypassed by "STILL" mode. ImgU is running at
247-
“VIDEO” mode by default, the user can use v4l2 control V4L2_CID_INTEL_IPU3_MODE
248-
(currently defined in drivers/staging/media/ipu3/include/intel-ipu3.h) to query
249-
and set the running mode. For user, there is no difference for buffer queueing
250-
between the "VIDEO" and "STILL" mode, mandatory input and main output node
251-
should be enabled and buffers need be queued, the statistics and the view-finder
252-
queues are optional.
237+
ImgU works based on firmware, currently the ImgU firmware support run 2 pipes
238+
in time-sharing with single input frame data. Each pipe can run at certain mode
239+
- "VIDEO" or "STILL", "VIDEO" mode is commonly used for video frames capture,
240+
and "STILL" is used for still frame capture. However, you can also select
241+
"VIDEO" to capture still frames if you want to capture images with less system
242+
load and power. For "STILL" mode, ImgU will try to use smaller BDS factor and
243+
output larger bayer frame for further YUV processing than "VIDEO" mode to get
244+
high quality images. Besides, "STILL" mode need XNR3 to do noise reduction,
245+
hence "STILL" mode will need more power and memory bandwidth than "VIDEO" mode.
246+
TNR will be enabled in "VIDEO" mode and bypassed by "STILL" mode. ImgU is
247+
running at "VIDEO" mode by default, the user can use v4l2 control
248+
V4L2_CID_INTEL_IPU3_MODE (currently defined in
249+
drivers/staging/media/ipu3/include/uapi/intel-ipu3.h) to query and set the
250+
running mode. For user, there is no difference for buffer queueing between the
251+
"VIDEO" and "STILL" mode, mandatory input and main output node should be
252+
enabled and buffers need be queued, the statistics and the view-finder queues
253+
are optional.
253254

254255
The firmware binary will be selected according to current running mode, such log
255256
"using binary if_to_osys_striped " or "using binary if_to_osys_primary_striped"
@@ -586,7 +587,7 @@ preserved.
586587
References
587588
==========
588589

589-
.. [#f5] drivers/staging/media/ipu3/include/intel-ipu3.h
590+
.. [#f5] drivers/staging/media/ipu3/include/uapi/intel-ipu3.h
590591
591592
.. [#f1] https://github.com/intel/nvt
592593

Documentation/admin-guide/media/saa7134.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,8 @@ To build and install, you should run::
5050
Once the new Kernel is booted, saa7134 driver should be loaded automatically.
5151

5252
Depending on the card you might have to pass ``card=<nr>`` as insmod option.
53-
If so, please check :doc:`saa7134-cardlist` for valid choices.
53+
If so, please check Documentation/admin-guide/media/saa7134-cardlist.rst
54+
for valid choices.
5455

5556
Once you have your card type number, you can pass a modules configuration
5657
via a file (usually, it is either ``/etc/modules.conf`` or some file at
Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
# SPDX-License-Identifier: GPL-2.0-only
2+
# Copyright (C) 2016-2021 Microchip Technology, Inc.
3+
%YAML 1.2
4+
---
5+
$id: http://devicetree.org/schemas/media/atmel,isc.yaml#
6+
$schema: http://devicetree.org/meta-schemas/core.yaml#
7+
8+
title: Atmel Image Sensor Controller (ISC)
9+
10+
maintainers:
11+
- Eugen Hristev <eugen.hristev@microchip.com>
12+
13+
description: |
14+
The Image Sensor Controller (ISC) device provides the video input capabilities for the
15+
Atmel/Microchip AT91 SAMA family of devices.
16+
17+
The ISC has a single parallel input that supports RAW Bayer, RGB or YUV video,
18+
with both external synchronization and BT.656 synchronization for the latter.
19+
20+
properties:
21+
compatible:
22+
const: atmel,sama5d2-isc
23+
24+
reg:
25+
maxItems: 1
26+
27+
interrupts:
28+
maxItems: 1
29+
30+
clocks:
31+
minItems: 3
32+
maxItems: 3
33+
34+
clock-names:
35+
items:
36+
- const: hclock
37+
- const: iscck
38+
- const: gck
39+
40+
'#clock-cells':
41+
const: 0
42+
43+
clock-output-names:
44+
const: isc-mck
45+
46+
port:
47+
$ref: /schemas/graph.yaml#/properties/port
48+
description:
49+
Input port node, single endpoint describing the input pad.
50+
51+
properties:
52+
endpoint:
53+
$ref: video-interfaces.yaml#
54+
55+
properties:
56+
remote-endpoint: true
57+
58+
bus-width:
59+
enum: [8, 9, 10, 11, 12]
60+
default: 12
61+
62+
hsync-active:
63+
enum: [0, 1]
64+
default: 1
65+
66+
vsync-active:
67+
enum: [0, 1]
68+
default: 1
69+
70+
pclk-sample:
71+
enum: [0, 1]
72+
default: 1
73+
74+
required:
75+
- remote-endpoint
76+
77+
additionalProperties: false
78+
79+
additionalProperties: false
80+
81+
required:
82+
- compatible
83+
- reg
84+
- clocks
85+
- clock-names
86+
- '#clock-cells'
87+
- clock-output-names
88+
- port
89+
90+
additionalProperties: false
91+
92+
examples:
93+
- |
94+
#include <dt-bindings/interrupt-controller/irq.h>
95+
96+
isc: isc@f0008000 {
97+
compatible = "atmel,sama5d2-isc";
98+
reg = <0xf0008000 0x4000>;
99+
interrupts = <46 IRQ_TYPE_LEVEL_HIGH 5>;
100+
clocks = <&isc_clk>, <&iscck>, <&isc_gclk>;
101+
clock-names = "hclock", "iscck", "gck";
102+
#clock-cells = <0>;
103+
clock-output-names = "isc-mck";
104+
105+
port {
106+
isc_0: endpoint {
107+
remote-endpoint = <&ov7740_0>;
108+
hsync-active = <1>;
109+
vsync-active = <0>;
110+
pclk-sample = <1>;
111+
bus-width = <8>;
112+
};
113+
};
114+
};

Documentation/devicetree/bindings/media/atmel-isc.txt

Lines changed: 0 additions & 65 deletions
This file was deleted.

0 commit comments

Comments
 (0)