Skip to content

Commit

Permalink
Merge tag 'media/v5.1-1' of git://git.kernel.org/pub/scm/linux/kernel…
Browse files Browse the repository at this point in the history
…/git/mchehab/linux-media

Pull media updates from Mauro Carvalho Chehab:

 - remove sensor drivers that got converted from soc_camera

 - remaining soc_camera drivers got moved to staging

 - some documentation cleanups and improvements

 - the imx staging driver now supports imx7

 - the ov9640, mt9m001 and mt9m111 got converted from soc_camera

 - the vim2m driver now does what a m2m convert driver expects to do

 - epoll() fixes on media subsystems

 - several drivers fixes, typos, cleanups and improvements

* tag 'media/v5.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (346 commits)
  media: dvb/earth-pt1: fix wrong initialization for demod blocks
  media: vim2m: Address some coding style issues
  media: vim2m: don't use BUG()
  media: vim2m: speedup passthrough copy
  media: vim2m: add an horizontal scaler
  media: vim2m: don't accept YUYV anymore as output format
  media: vim2m: add vertical linear scaler
  media: vim2m: better handle cap/out buffers with different sizes
  media: vim2m: use different framesizes for bayer formats
  media: vim2m: add support for VIDIOC_ENUM_FRAMESIZES
  media: vim2m: ensure that width is multiple of two
  media: vim2m: improve debug messages
  media: vim2m: add bayer capture formats
  media: a few more typos at staging, pci, platform, radio and usb
  media: Documentation: fix several typos
  media: staging: fix several typos
  media: include: fix several typos
  media: common: fix several typos
  media: v4l2-core: fix several typos
  media: usb: fix several typos
  ...
  • Loading branch information
torvalds committed Mar 9, 2019
2 parents 36011dd + 15d90a6 commit 96a6de1
Show file tree
Hide file tree
Showing 536 changed files with 15,295 additions and 15,371 deletions.
11 changes: 10 additions & 1 deletion Documentation/devicetree/bindings/media/i2c/adv748x.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,16 @@ are numbered as follows.
TXA source 10
TXB source 11

The digital output port nodes must contain at least one endpoint.
The digital output port nodes, when present, shall contain at least one
endpoint. Each of those endpoints shall contain the data-lanes property as
described in video-interfaces.txt.

Required source endpoint properties:
- data-lanes: an array of physical data lane indexes
The accepted value(s) for this property depends on which of the two
sources are described. For TXA 1, 2 or 4 data lanes can be described
while for TXB only 1 data lane is valid. See video-interfaces.txt
for detailed description.

Ports are optional if they are not connected to anything at the hardware level.

Expand Down
20 changes: 20 additions & 0 deletions Documentation/devicetree/bindings/media/i2c/melexis,mlx90640.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
* Melexis MLX90640 FIR Sensor

Melexis MLX90640 FIR sensor support which allows recording of thermal data
with 32x24 resolution excluding 2 lines of coefficient data that is used by
userspace to render processed frames.

Required Properties:
- compatible : Must be "melexis,mlx90640"
- reg : i2c address of the device

Example:

i2c0@1c22000 {
...
mlx90640@33 {
compatible = "melexis,mlx90640";
reg = <0x33>;
};
...
};
38 changes: 38 additions & 0 deletions Documentation/devicetree/bindings/media/i2c/mt9m001.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
MT9M001: 1/2-Inch Megapixel Digital Image Sensor

The MT9M001 is an SXGA-format with a 1/2-inch CMOS active-pixel digital
image sensor. It is programmable through I2C interface.

Required Properties:

- compatible: shall be "onnn,mt9m001".
- clocks: reference to the master clock into sensor

Optional Properties:

- reset-gpios: GPIO handle which is connected to the reset pin of the chip.
Active low.
- standby-gpios: GPIO handle which is connected to the standby pin of the chip.
Active high.

The device node must contain one 'port' child node with one 'endpoint' child
sub-node for its digital output video port, in accordance with the video
interface bindings defined in:
Documentation/devicetree/bindings/media/video-interfaces.txt

Example:

&i2c1 {
camera-sensor@5d {
compatible = "onnn,mt9m001";
reg = <0x5d>;
reset-gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
standby-gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
clocks = <&camera_clk>;
port {
mt9m001_out: endpoint {
remote-endpoint = <&vcap_in>;
};
};
};
};
6 changes: 3 additions & 3 deletions Documentation/devicetree/bindings/media/i2c/ov5645.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,9 @@ Example:
&i2c1 {
...

ov5645: ov5645@78 {
ov5645: ov5645@3c {
compatible = "ovti,ov5645";
reg = <0x78>;
reg = <0x3c>;

enable-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio5 20 GPIO_ACTIVE_LOW>;
Expand All @@ -37,7 +37,7 @@ Example:

clocks = <&clks 200>;
clock-names = "xclk";
clock-frequency = <23880000>;
clock-frequency = <24000000>;

vdddo-supply = <&camera_dovdd_1v8>;
vdda-supply = <&camera_avdd_2v8>;
Expand Down
45 changes: 45 additions & 0 deletions Documentation/devicetree/bindings/media/imx7-csi.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
Freescale i.MX7 CMOS Sensor Interface
=====================================

csi node
--------

This is device node for the CMOS Sensor Interface (CSI) which enables the chip
to connect directly to external CMOS image sensors.

Required properties:

- compatible : "fsl,imx7-csi";
- reg : base address and length of the register set for the device;
- interrupts : should contain CSI interrupt;
- clocks : list of clock specifiers, see
Documentation/devicetree/bindings/clock/clock-bindings.txt for details;
- clock-names : must contain "axi", "mclk" and "dcic" entries, matching
entries in the clock property;

The device node shall contain one 'port' child node with one child 'endpoint'
node, according to the bindings defined in:
Documentation/devicetree/bindings/media/video-interfaces.txt.

In the following example a remote endpoint is a video multiplexer.

example:

csi: csi@30710000 {
#address-cells = <1>;
#size-cells = <0>;

compatible = "fsl,imx7-csi";
reg = <0x30710000 0x10000>;
interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX7D_CLK_DUMMY>,
<&clks IMX7D_CSI_MCLK_ROOT_CLK>,
<&clks IMX7D_CLK_DUMMY>;
clock-names = "axi", "mclk", "dcic";

port {
csi_from_csi_mux: endpoint {
remote-endpoint = <&csi_mux_to_csi>;
};
};
};
90 changes: 90 additions & 0 deletions Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
Freescale i.MX7 Mipi CSI2
=========================

mipi_csi2 node
--------------

This is the device node for the MIPI CSI-2 receiver core in i.MX7 SoC. It is
compatible with previous version of Samsung D-phy.

Required properties:

- compatible : "fsl,imx7-mipi-csi2";
- reg : base address and length of the register set for the device;
- interrupts : should contain MIPI CSIS interrupt;
- clocks : list of clock specifiers, see
Documentation/devicetree/bindings/clock/clock-bindings.txt for details;
- clock-names : must contain "pclk", "wrap" and "phy" entries, matching
entries in the clock property;
- power-domains : a phandle to the power domain, see
Documentation/devicetree/bindings/power/power_domain.txt for details.
- reset-names : should include following entry "mrst";
- resets : a list of phandle, should contain reset entry of
reset-names;
- phy-supply : from the generic phy bindings, a phandle to a regulator that
provides power to MIPI CSIS core;

Optional properties:

- clock-frequency : The IP's main (system bus) clock frequency in Hz, default
value when this property is not specified is 166 MHz;
- fsl,csis-hs-settle : differential receiver (HS-RX) settle time;

The device node should contain two 'port' child nodes with one child 'endpoint'
node, according to the bindings defined in:
Documentation/devicetree/bindings/ media/video-interfaces.txt.
The following are properties specific to those nodes.

port node
---------

- reg : (required) can take the values 0 or 1, where 0 shall be
related to the sink port and port 1 shall be the source
one;

endpoint node
-------------

- data-lanes : (required) an array specifying active physical MIPI-CSI2
data input lanes and their mapping to logical lanes; this
shall only be applied to port 0 (sink port), the array's
content is unused only its length is meaningful,
in this case the maximum length supported is 2;

example:

mipi_csi: mipi-csi@30750000 {
#address-cells = <1>;
#size-cells = <0>;

compatible = "fsl,imx7-mipi-csi2";
reg = <0x30750000 0x10000>;
interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX7D_IPG_ROOT_CLK>,
<&clks IMX7D_MIPI_CSI_ROOT_CLK>,
<&clks IMX7D_MIPI_DPHY_ROOT_CLK>;
clock-names = "pclk", "wrap", "phy";
clock-frequency = <166000000>;
power-domains = <&pgc_mipi_phy>;
phy-supply = <&reg_1p0d>;
resets = <&src IMX7_RESET_MIPI_PHY_MRST>;
reset-names = "mrst";
fsl,csis-hs-settle = <3>;

port@0 {
reg = <0>;

mipi_from_sensor: endpoint {
remote-endpoint = <&ov2680_to_mipi>;
data-lanes = <1>;
};
};

port@1 {
reg = <1>;

mipi_vc0_to_csi_mux: endpoint {
remote-endpoint = <&csi_mux_from_mipi_vc0>;
};
};
};
13 changes: 13 additions & 0 deletions Documentation/devicetree/bindings/media/mediatek-vcodec.txt
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,15 @@ vcodec_dec: vcodec@16000000 {
"vencpll",
"venc_lt_sel",
"vdec_bus_clk_src";
assigned-clocks = <&topckgen CLK_TOP_VENC_LT_SEL>,
<&topckgen CLK_TOP_CCI400_SEL>,
<&topckgen CLK_TOP_VDEC_SEL>,
<&apmixedsys CLK_APMIXED_VCODECPLL>,
<&apmixedsys CLK_APMIXED_VENCPLL>;
assigned-clock-parents = <&topckgen CLK_TOP_VCODECPLL_370P5>,
<&topckgen CLK_TOP_UNIVPLL_D2>,
<&topckgen CLK_TOP_VCODECPLL>;
assigned-clock-rates = <0>, <0>, <0>, <1482000000>, <800000000>;
};

vcodec_enc: vcodec@18002000 {
Expand Down Expand Up @@ -105,4 +114,8 @@ vcodec_dec: vcodec@16000000 {
"venc_sel",
"venc_lt_sel_src",
"venc_lt_sel";
assigned-clocks = <&topckgen CLK_TOP_VENC_SEL>,
<&topckgen CLK_TOP_VENC_LT_SEL>;
assigned-clock-parents = <&topckgen CLK_TOP_VENCPLL_D2>,
<&topckgen CLK_TOP_UNIVPLL1_D2>;
};
9 changes: 5 additions & 4 deletions Documentation/devicetree/bindings/media/rcar_vin.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,13 @@ family of devices.
Each VIN instance has a single parallel input that supports RGB and YUV video,
with both external synchronization and BT.656 synchronization for the latter.
Depending on the instance the VIN input is connected to external SoC pins, or
on Gen3 platforms to a CSI-2 receiver.
on Gen3 and RZ/G2 platforms to a CSI-2 receiver.

- compatible: Must be one or more of the following
- "renesas,vin-r8a7743" for the R8A7743 device
- "renesas,vin-r8a7744" for the R8A7744 device
- "renesas,vin-r8a7745" for the R8A7745 device
- "renesas,vin-r8a774c0" for the R8A774C0 device
- "renesas,vin-r8a7778" for the R8A7778 device
- "renesas,vin-r8a7779" for the R8A7779 device
- "renesas,vin-r8a7790" for the R8A7790 device
Expand Down Expand Up @@ -61,10 +62,10 @@ The per-board settings Gen2 platforms:
- data-enable-active: polarity of CLKENB signal, see [1] for
description. Default is active high.

The per-board settings Gen3 platforms:
The per-board settings Gen3 and RZ/G2 platforms:

Gen3 platforms can support both a single connected parallel input source
from external SoC pins (port@0) and/or multiple parallel input sources
Gen3 and RZ/G2 platforms can support both a single connected parallel input
source from external SoC pins (port@0) and/or multiple parallel input sources
from local SoC CSI-2 receivers (port@1) depending on SoC.

- renesas,id - ID number of the VIN, VINx in the documentation.
Expand Down
5 changes: 3 additions & 2 deletions Documentation/devicetree/bindings/media/renesas,fcp.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@ Renesas R-Car Frame Compression Processor (FCP)
-----------------------------------------------

The FCP is a companion module of video processing modules in the Renesas R-Car
Gen3 SoCs. It provides data compression and decompression, data caching, and
conversion of AXI transactions in order to reduce the memory bandwidth.
Gen3 and RZ/G2 SoCs. It provides data compression and decompression, data
caching, and conversion of AXI transactions in order to reduce the memory
bandwidth.

There are three types of FCP: FCP for Codec (FCPC), FCP for VSP (FCPV) and FCP
for FDP (FCPF). Their configuration and behaviour depend on the module they
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,13 @@ Renesas R-Car MIPI CSI-2
------------------------

The R-Car CSI-2 receiver device provides MIPI CSI-2 capabilities for the
Renesas R-Car family of devices. It is used in conjunction with the
Renesas R-Car and RZ/G2 family of devices. It is used in conjunction with the
R-Car VIN module, which provides the video capture capabilities.

Mandatory properties
--------------------
- compatible: Must be one or more of the following
- "renesas,r8a774c0-csi2" for the R8A774C0 device.
- "renesas,r8a7795-csi2" for the R8A7795 device.
- "renesas,r8a7796-csi2" for the R8A7796 device.
- "renesas,r8a77965-csi2" for the R8A77965 device.
Expand Down
6 changes: 3 additions & 3 deletions Documentation/devicetree/bindings/media/renesas,vsp1.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

The VSP is a video processing engine that supports up-/down-scaling, alpha
blending, color space conversion and various other image processing features.
It can be found in the Renesas R-Car second generation SoCs.
It can be found in the Renesas R-Car Gen2, R-Car Gen3, RZ/G1, and RZ/G2 SoCs.

Required properties:

- compatible: Must contain one of the following values
- "renesas,vsp1" for the R-Car Gen2 VSP1
- "renesas,vsp2" for the R-Car Gen3 VSP2
- "renesas,vsp1" for the R-Car Gen2 and RZ/G1 VSP1
- "renesas,vsp2" for the R-Car Gen3 and RZ/G2 VSP2

- reg: Base address and length of the registers block for the VSP.
- interrupts: VSP interrupt specifier.
Expand Down
26 changes: 26 additions & 0 deletions Documentation/devicetree/bindings/media/si470x.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
* Silicon Labs FM Radio receiver

The Silicon Labs Si470x is family of FM radio receivers with receive power scan
supporting 76-108 MHz, programmable through an I2C interface.
Some of them includes an RDS encoder.

Required Properties:
- compatible: Should contain "silabs,si470x"
- reg: the I2C address of the device

Optional Properties:
- interrupts : The interrupt number
- reset-gpios: GPIO specifier for the chips reset line

Example:

&i2c2 {
si470x@63 {
compatible = "silabs,si470x";
reg = <0x63>;

interrupt-parent = <&gpj2>;
interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
reset-gpios = <&gpj2 5 GPIO_ACTIVE_HIGH>;
};
};
3 changes: 2 additions & 1 deletion Documentation/devicetree/bindings/media/sun6i-csi.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@ Allwinner V3s SoC features a CSI module(CSI1) with parallel interface.
Required properties:
- compatible: value must be one of:
* "allwinner,sun6i-a31-csi"
* "allwinner,sun8i-h3-csi", "allwinner,sun6i-a31-csi"
* "allwinner,sun8i-h3-csi"
* "allwinner,sun8i-v3s-csi"
* "allwinner,sun50i-a64-csi"
- reg: base address and size of the memory-mapped region.
- interrupts: interrupt associated to this IP
- clocks: phandles to the clocks feeding the CSI
Expand Down
2 changes: 1 addition & 1 deletion Documentation/media/dvb-drivers/dvb-usb.rst
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ https://linuxtv.org/wiki/index.php/DVB_USB

2004-12-26

- refactored the dibusb-driver, splitted into separate files
- refactored the dibusb-driver, split into separate files
- i2c-probing enabled

2004-12-06
Expand Down
2 changes: 1 addition & 1 deletion Documentation/media/kapi/dtv-core.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Digital TV devices are implemented by several different drivers:
- Frontend drivers that are usually implemented as two separate drivers:

- A tuner driver that implements the logic with commands the part of the
hardware with is reponsible to tune into a digital TV transponder or
hardware with is responsible to tune into a digital TV transponder or
physical channel. The output of a tuner is usually a baseband or
Intermediate Frequency (IF) signal;

Expand Down
2 changes: 1 addition & 1 deletion Documentation/media/kapi/dtv-frontend.rst
Original file line number Diff line number Diff line change
Expand Up @@ -328,7 +328,7 @@ Statistics collect

On almost all frontend hardware, the bit and byte counts are stored by
the hardware after a certain amount of time or after the total bit/block
counter reaches a certain value (usually programable), for example, on
counter reaches a certain value (usually programmable), for example, on
every 1000 ms or after receiving 1,000,000 bits.

So, if you read the registers too soon, you'll end by reading the same
Expand Down
Loading

0 comments on commit 96a6de1

Please sign in to comment.