Skip to content

Commit 4ea9569

Browse files
committed
Merge tag 'media/v6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
Pull media updates from Mauro Carvalho Chehab: - Removal of some old unused sensor drivers: ad9389b, m5mols, mt9m032, mt9t001, noon010pc30, s5k6aa, sr030pc30 and vs6624 - New i.MX8 image sensor interface driver - Some new RC keymaps - lots of cleanups at atomisp driver to make it support standard features present on other webcam drivers - the cx18 and saa7146 now uses VB2 - lots of cleanups and driver improvements * tag 'media/v6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (460 commits) media: ov5670: Fix probe on ACPI media: nxp: imx8-isi: Remove 300ms sleep after enabling channel media: nxp: imx8-isi: Replace udelay() with fsleep() media: nxp: imx8-isi: Drop partial support for i.MX8QM and i.MX8QXP media: nxp: Add i.MX8 ISI driver media: dt-bindings: media: Add i.MX8 ISI DT bindings media: atomisp: gmin_platform: Add Lenovo Ideapad Miix 310 gmin_vars media: atomisp: gmin_platform: Make DMI quirks take precedence over the _DSM table media: atomisp: Remove struct atomisp_sub_device index field media: atomisp: Drop support for streaming from 2 sensors at once media: atomisp: Remove atomisp_try_fmt() call from atomisp_set_fmt() media: atomisp: Remove unused ATOM_ISP_MAX_WIDTH_TMP and ATOM_ISP_MAX_HEIGHT_TMP media: atomisp: Remove snr_mbus_fmt local var from atomisp_try_fmt() media: atomisp: Remove custom V4L2_CID_FMT_AUTO control media: atomisp: Remove continuous mode related code from atomisp_set_fmt() media: atomisp: Remove duplicate atomisp_[start|stop]_streaming() prototypes media: atomisp: gc0310: Switch over to ACPI powermanagement media: atomisp: gc0310: Use devm_kzalloc() for data struct media: atomisp: gc0310: Add runtime-pm support media: atomisp: gc0310: Delay power-on till streaming is started ...
2 parents c8cc58e + 73b41dc commit 4ea9569

442 files changed

Lines changed: 15626 additions & 21778 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/cec.rst

Lines changed: 45 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,15 @@ Miscellaneous:
5555
you can control the CEC line through this driver. This supports error
5656
injection as well.
5757

58+
- cec-gpio and Allwinner A10 (or any other driver that uses the CEC pin
59+
framework to drive the CEC pin directly): the CEC pin framework uses
60+
high-resolution timers. These timers are affected by NTP daemons that
61+
speed up or slow down the clock to sync with the official time. The
62+
chronyd server will by default increase or decrease the clock by
63+
1/12th. This will cause the CEC timings to go out of spec. To fix this,
64+
add a 'maxslewrate 40000' line to chronyd.conf. This limits the clock
65+
frequency change to 1/25th, which keeps the CEC timings within spec.
66+
5867

5968
Utilities
6069
=========
@@ -296,69 +305,71 @@ broadcast messages twice to reduce the chance of them being lost. Specifically
296305
Making a CEC debugger
297306
=====================
298307

299-
By using a Raspberry Pi 2B/3/4 and some cheap components you can make
308+
By using a Raspberry Pi 4B and some cheap components you can make
300309
your own low-level CEC debugger.
301310

302-
Here is a picture of my setup:
303-
304-
https://hverkuil.home.xs4all.nl/rpi3-cec.jpg
305-
306-
It's a Raspberry Pi 3 together with a breadboard and some breadboard wires:
307-
308-
http://www.dx.com/p/diy-40p-male-to-female-male-to-male-female-to-female-dupont-line-wire-3pcs-356089#.WYLOOXWGN7I
309-
310-
Finally on of these HDMI female-female passthrough connectors (full soldering type 1):
311+
The critical component is one of these HDMI female-female passthrough connectors
312+
(full soldering type 1):
311313

312314
https://elabbay.myshopify.com/collections/camera/products/hdmi-af-af-v1a-hdmi-type-a-female-to-hdmi-type-a-female-pass-through-adapter-breakout-board?variant=45533926147
313315

314-
We've tested this and it works up to 4kp30 (297 MHz). The quality is not high
315-
enough to pass-through 4kp60 (594 MHz).
316-
317-
I also added an RTC and a breakout shield:
318-
319-
https://www.amazon.com/Makerfire%C2%AE-Raspberry-Module-DS1307-Battery/dp/B00ZOXWHK4
316+
The video quality is variable and certainly not enough to pass-through 4kp60
317+
(594 MHz) video. You might be able to support 4kp30, but more likely you will
318+
be limited to 1080p60 (148.5 MHz). But for CEC testing that is fine.
320319

321-
https://www.dx.com/p/raspberry-pi-gpio-expansion-board-breadboard-easy-multiplexing-board-one-to-three-with-screw-for-raspberry-pi-2-3-b-b-2729992.html#.YGRCG0MzZ7I
320+
You need a breadboard and some breadboard wires:
322321

323-
These two are not needed but they make life a bit easier.
322+
http://www.dx.com/p/diy-40p-male-to-female-male-to-male-female-to-female-dupont-line-wire-3pcs-356089#.WYLOOXWGN7I
324323

325-
If you want to monitor the HPD line as well, then you need one of these
326-
level shifters:
324+
If you want to monitor the HPD and/or 5V lines as well, then you need one of
325+
these 5V to 3.3V level shifters:
327326

328327
https://www.adafruit.com/product/757
329328

330329
(This is just where I got these components, there are many other places you
331330
can get similar things).
332331

332+
The ground pin of the HDMI connector needs to be connected to a ground
333+
pin of the Raspberry Pi, of course.
334+
333335
The CEC pin of the HDMI connector needs to be connected to these pins:
334-
CE0/IO8 and CE1/IO7 (pull-up GPIOs). The (optional) HPD pin of the HDMI
335-
connector should be connected (via a level shifter to convert the 5V
336-
to 3.3V) to these pins: IO17 and IO27. The (optional) 5V pin of the HDMI
337-
connector should be connected (via a level shifter) to these pins: IO22
338-
and IO24. Monitoring the HPD an 5V lines is not necessary, but it is helpful.
336+
GPIO 6 and GPIO 7. The optional HPD pin of the HDMI connector should
337+
be connected via the level shifter to these pins: GPIO 23 and GPIO 12.
338+
The optional 5V pin of the HDMI connector should be connected via the
339+
level shifter to these pins: GPIO 25 and GPIO 22. Monitoring the HPD and
340+
5V lines is not necessary, but it is helpful.
339341

340-
This kernel patch will hook up the cec-gpio driver correctly to
341-
e.g. ``arch/arm/boot/dts/bcm2837-rpi-3-b-plus.dts``::
342+
This device tree addition in ``arch/arm/boot/dts/bcm2711-rpi-4-b.dts``
343+
will hook up the cec-gpio driver correctly::
344+
345+
cec@6 {
346+
compatible = "cec-gpio";
347+
cec-gpios = <&gpio 6 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
348+
hpd-gpios = <&gpio 23 GPIO_ACTIVE_HIGH>;
349+
v5-gpios = <&gpio 25 GPIO_ACTIVE_HIGH>;
350+
};
342351

343352
cec@7 {
344353
compatible = "cec-gpio";
345354
cec-gpios = <&gpio 7 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
346-
hpd-gpios = <&gpio 17 GPIO_ACTIVE_HIGH>;
355+
hpd-gpios = <&gpio 12 GPIO_ACTIVE_HIGH>;
347356
v5-gpios = <&gpio 22 GPIO_ACTIVE_HIGH>;
348357
};
349358

350-
cec@8 {
351-
compatible = "cec-gpio";
352-
cec-gpios = <&gpio 8 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
353-
hpd-gpios = <&gpio 27 GPIO_ACTIVE_HIGH>;
354-
v5-gpios = <&gpio 24 GPIO_ACTIVE_HIGH>;
355-
};
359+
If you haven't hooked up the HPD and/or 5V lines, then just delete those
360+
lines.
356361

357362
This dts change will enable two cec GPIO devices: I typically use one to
358363
send/receive CEC commands and the other to monitor. If you monitor using
359364
an unconfigured CEC adapter then it will use GPIO interrupts which makes
360365
monitoring very accurate.
361366

367+
If you just want to monitor traffic, then a single instance is sufficient.
368+
The minimum configuration is one HDMI female-female passthrough connector
369+
and two female-female breadboard wires: one for connecting the HDMI ground
370+
pin to a ground pin on the Raspberry Pi, and the other to connect the HDMI
371+
CEC pin to GPIO 6 on the Raspberry Pi.
372+
362373
The documentation on how to use the error injection is here: :ref:`cec_pin_error_inj`.
363374

364375
``cec-ctl --monitor-pin`` will do low-level CEC bus sniffing and analysis.

Documentation/admin-guide/media/i2c-cardlist.rst

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -72,17 +72,13 @@ imx319 Sony IMX319 sensor
7272
imx334 Sony IMX334 sensor
7373
imx355 Sony IMX355 sensor
7474
imx412 Sony IMX412 sensor
75-
m5mols Fujitsu M-5MOLS 8MP sensor
7675
mt9m001 mt9m001
77-
mt9m032 MT9M032 camera sensor
7876
mt9m111 mt9m111, mt9m112 and mt9m131
7977
mt9p031 Aptina MT9P031
80-
mt9t001 Aptina MT9T001
8178
mt9t112 Aptina MT9T111/MT9T112
8279
mt9v011 Micron mt9v011 sensor
8380
mt9v032 Micron MT9V032 sensor
8481
mt9v111 Aptina MT9V111 sensor
85-
noon010pc30 Siliconfile NOON010PC30 sensor
8682
ov13858 OmniVision OV13858 sensor
8783
ov13b10 OmniVision OV13B10 sensor
8884
ov2640 OmniVision OV2640 sensor
@@ -109,9 +105,6 @@ s5c73m3 Samsung S5C73M3 sensor
109105
s5k4ecgx Samsung S5K4ECGX sensor
110106
s5k5baf Samsung S5K5BAF sensor
111107
s5k6a3 Samsung S5K6A3 sensor
112-
s5k6aa Samsung S5K6AAFX sensor
113-
sr030pc30 Siliconfile SR030PC30 sensor
114-
vs6624 ST VS6624 sensor
115108
============ ==========================================================
116109

117110
Flash devices
@@ -222,7 +215,6 @@ Video encoders
222215
============ ==========================================================
223216
Driver Name
224217
============ ==========================================================
225-
ad9389b Analog Devices AD9389B encoder
226218
adv7170 Analog Devices ADV7170 video encoder
227219
adv7175 Analog Devices ADV7175 video encoder
228220
adv7343 ADV7343 video encoder

Documentation/devicetree/bindings/media/allwinner,sun4i-a10-ir.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ maintainers:
1111
- Maxime Ripard <mripard@kernel.org>
1212

1313
allOf:
14-
- $ref: "rc.yaml#"
14+
- $ref: rc.yaml#
1515

1616
properties:
1717
compatible:

Documentation/devicetree/bindings/media/allwinner,sun50i-h6-vpu-g2.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
%YAML 1.2
44
---
5-
$id: "http://devicetree.org/schemas/media/allwinner,sun50i-h6-vpu-g2.yaml#"
6-
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
5+
$id: http://devicetree.org/schemas/media/allwinner,sun50i-h6-vpu-g2.yaml#
6+
$schema: http://devicetree.org/meta-schemas/core.yaml#
77

88
title: Hantro G2 VPU codec implemented on Allwinner H6 SoC
99

Documentation/devicetree/bindings/media/amlogic,axg-ge2d.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
# Copyright 2020 BayLibre, SAS
33
%YAML 1.2
44
---
5-
$id: "http://devicetree.org/schemas/media/amlogic,axg-ge2d.yaml#"
6-
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
5+
$id: http://devicetree.org/schemas/media/amlogic,axg-ge2d.yaml#
6+
$schema: http://devicetree.org/meta-schemas/core.yaml#
77

88
title: Amlogic GE2D Acceleration Unit
99

Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
# Copyright 2019 BayLibre, SAS
33
%YAML 1.2
44
---
5-
$id: "http://devicetree.org/schemas/media/amlogic,gx-vdec.yaml#"
6-
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
5+
$id: http://devicetree.org/schemas/media/amlogic,gx-vdec.yaml#
6+
$schema: http://devicetree.org/meta-schemas/core.yaml#
77

88
title: Amlogic Video Decoder
99

Documentation/devicetree/bindings/media/amlogic,meson-ir-tx.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
%YAML 1.2
44
---
5-
$id: "http://devicetree.org/schemas/media/amlogic,meson-ir-tx.yaml#"
6-
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
5+
$id: http://devicetree.org/schemas/media/amlogic,meson-ir-tx.yaml#
6+
$schema: http://devicetree.org/meta-schemas/core.yaml#
77

88
title: Amlogic Meson IR transmitter
99

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/media/amlogic,meson6-ir.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Amlogic Meson IR remote control receiver
8+
9+
maintainers:
10+
- Neil Armstrong <neil.armstrong@linaro.org>
11+
12+
allOf:
13+
- $ref: rc.yaml#
14+
15+
properties:
16+
compatible:
17+
oneOf:
18+
- enum:
19+
- amlogic,meson6-ir
20+
- amlogic,meson8b-ir
21+
- amlogic,meson-gxbb-ir
22+
- items:
23+
- const: amlogic,meson-gx-ir
24+
- const: amlogic,meson-gxbb-ir
25+
26+
reg:
27+
maxItems: 1
28+
29+
interrupts:
30+
maxItems: 1
31+
32+
required:
33+
- compatible
34+
- reg
35+
- interrupts
36+
37+
unevaluatedProperties: false
38+
39+
examples:
40+
- |
41+
#include <dt-bindings/interrupt-controller/irq.h>
42+
#include <dt-bindings/interrupt-controller/arm-gic.h>
43+
ir-receiver@c8100480 {
44+
compatible = "amlogic,meson6-ir";
45+
reg = <0xc8100480 0x20>;
46+
interrupts = <GIC_SPI 15 IRQ_TYPE_EDGE_RISING>;
47+
};

Documentation/devicetree/bindings/media/exynos-fimc-lite.txt

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

Documentation/devicetree/bindings/media/exynos4-fimc-is.txt

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

0 commit comments

Comments
 (0)