Skip to content

Commit 15ac468

Browse files
committed
Merge tag 'media/v6.5-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
Pull media updates from Mauro Carvalho Chehab: - Lots of improvement at atomisp driver, which is starting to look in good shape - Mediatek vcodec driver has gained support for av1 and hevc stateless codecs - New sensor driver: ov01a10 - verisilicon driver has gained AV1 entropy helpers - tegra-video has gained support for Tegra20 parallel input - dvb core has gained an extra property to better support DVB-S2X - as usual, lots of cleanups, fixes and improvements on media drivers * tag 'media/v6.5-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (253 commits) media: wl128x: fix a clang warning media: dvb: mb86a20s: get rid of a clang-15 warning media: cec: i2c: ch7322: also select REGMAP media: add HAS_IOPORT dependencies media: tc358746: select CONFIG_GENERIC_PHY media: mediatek: vcodec: Add dbgfs help function media: mediatek: vcodec: Add encode to support dbgfs media: mediatek: vcodec: Change dbgfs interface to support encode media: mediatek: vcodec: Get each instance format type media: mediatek: vcodec: Get each context resolution information media: mediatek: vcodec: Add a debugfs file to get different useful information media: mediatek: vcodec: Add debug params to control different log level media: mediatek: vcodec: Add debugfs interface to get debug information media: mediatek: vcodec: support stateless AV1 decoder media: verisilicon: Conditionally ignore native formats media: verisilicon: Enable AV1 decoder on rk3588 media: verisilicon: Add film grain feature to AV1 driver media: verisilicon: Add Rockchip AV1 decoder media: verisilicon: Add AV1 entropy helpers media: verisilicon: Compute motion vectors size for AV1 frames ...
2 parents 2784d74 + c61480a commit 15ac468

File tree

393 files changed

+21498
-5254
lines changed

Some content is hidden

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

393 files changed

+21498
-5254
lines changed

Documentation/admin-guide/media/rkisp1.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ Introduction
1010
============
1111

1212
This file documents the driver for the Rockchip ISP1 that is part of RK3288
13-
and RK3399 SoCs. The driver is located under drivers/staging/media/rkisp1
14-
and uses the Media-Controller API.
13+
and RK3399 SoCs. The driver is located under drivers/media/platform/rockchip/
14+
rkisp1 and uses the Media-Controller API.
1515

1616
Revisions
1717
=========

Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-vi.yaml

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,18 @@ properties:
7373
avdd-dsi-csi-supply:
7474
description: DSI/CSI power supply. Must supply 1.2 V.
7575

76+
vip:
77+
$ref: /schemas/display/tegra/nvidia,tegra20-vip.yaml
78+
79+
ports:
80+
$ref: /schemas/graph.yaml#/properties/ports
81+
82+
properties:
83+
port@0:
84+
$ref: /schemas/graph.yaml#/properties/port
85+
description:
86+
Input from the VIP (parallel input capture) module
87+
7688
patternProperties:
7789
"^csi@[0-9a-f]+$":
7890
type: object
@@ -108,13 +120,60 @@ examples:
108120
#include <dt-bindings/clock/tegra20-car.h>
109121
#include <dt-bindings/interrupt-controller/arm-gic.h>
110122
123+
i2c {
124+
#address-cells = <1>;
125+
#size-cells = <0>;
126+
camera@48 {
127+
compatible = "aptina,mt9v111";
128+
reg = <0x48>;
129+
clocks = <&camera_clk>;
130+
131+
port {
132+
mt9v111_out: endpoint {
133+
remote-endpoint = <&vi_vip_in>;
134+
};
135+
};
136+
};
137+
};
138+
111139
vi@54080000 {
112140
compatible = "nvidia,tegra20-vi";
113141
reg = <0x54080000 0x00040000>;
114142
interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
115143
clocks = <&tegra_car TEGRA20_CLK_VI>;
116144
resets = <&tegra_car 100>;
117145
reset-names = "vi";
146+
147+
vip {
148+
compatible = "nvidia,tegra20-vip";
149+
ports {
150+
#address-cells = <1>;
151+
#size-cells = <0>;
152+
port@0 {
153+
reg = <0>;
154+
vi_vip_in: endpoint {
155+
remote-endpoint = <&mt9v111_out>;
156+
};
157+
};
158+
port@1 {
159+
reg = <1>;
160+
vi_vip_out: endpoint {
161+
remote-endpoint = <&vi_in>;
162+
};
163+
};
164+
};
165+
};
166+
167+
ports {
168+
#address-cells = <1>;
169+
#size-cells = <0>;
170+
port@0 {
171+
reg = <0>;
172+
vi_in: endpoint {
173+
remote-endpoint = <&vi_vip_out>;
174+
};
175+
};
176+
};
118177
};
119178
120179
- |
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/display/tegra/nvidia,tegra20-vip.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: NVIDIA Tegra VIP (parallel video capture) controller
8+
9+
maintainers:
10+
- Luca Ceresoli <[email protected]>
11+
12+
properties:
13+
compatible:
14+
enum:
15+
- nvidia,tegra20-vip
16+
17+
ports:
18+
$ref: /schemas/graph.yaml#/properties/ports
19+
20+
properties:
21+
port@0:
22+
$ref: /schemas/graph.yaml#/properties/port
23+
description:
24+
Port receiving the video stream from the sensor
25+
26+
port@1:
27+
$ref: /schemas/graph.yaml#/properties/port
28+
description:
29+
Port sending the video stream to the VI
30+
31+
required:
32+
- port@0
33+
- port@1
34+
35+
unevaluatedProperties: false
36+
37+
required:
38+
- compatible
39+
- ports
40+
41+
# see nvidia,tegra20-vi.yaml for an example

Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,14 @@ properties:
6565

6666
properties:
6767
data-lanes: true
68+
bus-type:
69+
enum:
70+
- 1 # MEDIA_BUS_TYPE_CSI2_CPHY
71+
- 4 # MEDIA_BUS_TYPE_CSI2_DPHY
6872

6973
required:
7074
- data-lanes
75+
- bus-type
7176

7277
required:
7378
- port@4
@@ -82,6 +87,7 @@ additionalProperties: false
8287
examples:
8388
- |
8489
#include <dt-bindings/gpio/gpio.h>
90+
#include <dt-bindings/media/video-interfaces.h>
8591
8692
i2c@e6508000 {
8793
#address-cells = <1>;
@@ -101,6 +107,7 @@ examples:
101107
port@4 {
102108
reg = <4>;
103109
max96712_out0: endpoint {
110+
bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
104111
clock-lanes = <0>;
105112
data-lanes = <1 2 3 4>;
106113
remote-endpoint = <&csi40_in>;

Documentation/devicetree/bindings/media/qcom,msm8916-camss.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ examples:
155155
#include <dt-bindings/interrupt-controller/arm-gic.h>
156156
#include <dt-bindings/clock/qcom,gcc-msm8916.h>
157157
158-
camss: camss@1b00000 {
158+
camss: camss@1b0ac00 {
159159
compatible = "qcom,msm8916-camss";
160160
161161
clocks = <&gcc GCC_CAMSS_TOP_AHB_CLK>,

Documentation/devicetree/bindings/media/qcom,msm8996-camss.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ examples:
221221
#include <dt-bindings/clock/qcom,gcc-msm8996.h>
222222
#include <dt-bindings/clock/qcom,mmcc-msm8996.h>
223223
224-
camss: camss@a00000 {
224+
camss: camss@a34000 {
225225
compatible = "qcom,msm8996-camss";
226226
227227
clocks = <&mmcc CAMSS_TOP_AHB_CLK>,

Documentation/devicetree/bindings/media/qcom,sdm660-camss.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@ examples:
227227
#include <dt-bindings/clock/qcom,gcc-sdm660.h>
228228
#include <dt-bindings/clock/qcom,mmcc-sdm660.h>
229229
230-
camss: camss@ca00000 {
230+
camss: camss@ca00020 {
231231
compatible = "qcom,sdm660-camss";
232232
233233
clocks = <&mmcc CAMSS_AHB_CLK>,

Documentation/devicetree/bindings/media/qcom,sdm845-camss.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,7 @@ examples:
219219
#address-cells = <2>;
220220
#size-cells = <2>;
221221
222-
camss: camss@a00000 {
222+
camss: camss@acb3000 {
223223
compatible = "qcom,sdm845-camss";
224224
225225
clocks = <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,

Documentation/devicetree/bindings/media/rockchip-vpu.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ properties:
2424
- rockchip,rk3399-vpu
2525
- rockchip,px30-vpu
2626
- rockchip,rk3568-vpu
27+
- rockchip,rk3588-av1-vpu
2728
- items:
2829
- const: rockchip,rk3188-vpu
2930
- const: rockchip,rk3066-vpu

Documentation/driver-api/media/camera-sensor.rst

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,3 +151,25 @@ used to obtain device's power state after the power state transition:
151151
The function returns a non-zero value if it succeeded getting the power count or
152152
runtime PM was disabled, in either of which cases the driver may proceed to
153153
access the device.
154+
155+
Rotation, orientation and flipping
156+
----------------------------------
157+
158+
Some systems have the camera sensor mounted upside down compared to its natural
159+
mounting rotation. In such cases, drivers shall expose the information to
160+
userspace with the :ref:`V4L2_CID_CAMERA_SENSOR_ROTATION
161+
<v4l2-camera-sensor-rotation>` control.
162+
163+
Sensor drivers shall also report the sensor's mounting orientation with the
164+
:ref:`V4L2_CID_CAMERA_SENSOR_ORIENTATION <v4l2-camera-sensor-orientation>`.
165+
166+
Use ``v4l2_fwnode_device_parse()`` to obtain rotation and orientation
167+
information from system firmware and ``v4l2_ctrl_new_fwnode_properties()`` to
168+
register the appropriate controls.
169+
170+
Sensor drivers that have any vertical or horizontal flips embedded in the
171+
register programming sequences shall initialize the V4L2_CID_HFLIP and
172+
V4L2_CID_VFLIP controls with the values programmed by the register sequences.
173+
The default values of these controls shall be 0 (disabled). Especially these
174+
controls shall not be inverted, independently of the sensor's mounting
175+
rotation.

0 commit comments

Comments
 (0)