Commit 835d31d3 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull media updates from Mauro Carvalho Chehab:

 - new sensor drivers: imx335, imx412, ov9282

 - new IR transmitter driver: meson-ir-tx

 - handro driver gained support for H.264 for Rockchip VDPU2

 - imx gained support for i.MX8MQ

 - ti-vpe has gained support for other SoC variants

 - lots of cleanups, fixes, board additions and doc improvements

* tag 'media/v5.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (195 commits)
  media: venus: venc: add support for V4L2_CID_MPEG_VIDEO_H264_8X8_TRANSFORM control
  media: venus: venc: Add support for intra-refresh period
  media: v4l2-ctrls: Add intra-refresh period control
  media: docs: ext-ctrls-codec: Document cyclic intra-refresh zero control value
  media: venus: helper: do not set constrained parameters for UBWC
  media: venus: venc: Fix potential null pointer dereference on pointer fmt
  media: venus: hfi: fix return value check in sys_get_prop_image_version()
  media: tegra-cec: Handle errors of clk_prepare_enable()
  media: cec-pin: rename timer overrun variables
  media: TDA1997x: report -ENOLINK after disconnecting HDMI source
  media: TDA1997x: fix tda1997x_query_dv_timings() return value
  media: Fix cosmetic error in TDA1997x driver
  media: v4l2-dv-timings.c: fix wrong condition in two for-loops
  media: imx: add a driver for i.MX8MQ mipi csi rx phy and controller
  media: dt-bindings: media: document the nxp,imx8mq-mipi-csi2 receiver phy and controller
  media: imx: imx7_mipi_csis: convert some switch cases to the default
  media: imx: imx7-media-csi: Fix buffer return upon stream start failure
  media: imx: imx7-media-csi: Don't set PIXEL_BIT in CSICR1
  media: imx: imx7-media-csi: Set TWO_8BIT_SENSOR for >= 10-bit formats
  media: dt-bindings: media: nxp,imx7-csi: Add i.MX8MM support
  ...
parents 0d290223 9c3a0f28
Loading
Loading
Loading
Loading
+60 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)

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

title: Amlogic Meson IR transmitter

maintainers:
  - Viktor Prutyanov <viktor.prutyanov@phystech.edu>

description: |
  Some Amlogic SoCs such as A311D and T950D4 have IR transmitter
  (also called blaster) controller onboard. It is capable of
  sending IR signals with arbitrary carrier frequency and duty cycle.

properties:
  compatible:
    oneOf:
      - const: amlogic,meson-ir-tx
      - items:
          - const: amlogic,meson-g12a-ir-tx
          - const: amlogic,meson-ir-tx

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 2

  clock-names:
    items:
      - const: sysclk
      - const: xtal

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - clock-names

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/clock/g12a-clkc.h>

    ir@ff80014c {
      compatible = "amlogic,meson-g12a-ir-tx", "amlogic,meson-ir-tx";
      reg = <0xff80014c 0x10>;
      interrupts = <0 198 IRQ_TYPE_EDGE_RISING>;
      clocks = <&clkc CLKID_CLK81>, <&xtal>;
      clock-names = "sysclk", "xtal";
    };
+8 −0
Original line number Diff line number Diff line
@@ -35,6 +35,14 @@ properties:
  powerdown-gpios:
    maxItems: 1

  reset-gpios:
    maxItems: 1

  adv,force-bt656-4:
    description:
      Indicates that the output is a BT.656-4 compatible stream.
    type: boolean

  port:
    $ref: /schemas/graph.yaml#/$defs/port-base
    unevaluatedProperties: false
+91 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) 2021 Intel Corporation
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/ovti,ov9282.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: OmniVision OV9282 Sensor

maintainers:
  - Paul J. Murphy <paul.j.murphy@intel.com>
  - Daniele Alessandrelli <daniele.alessandrelli@intel.com>

description:
  OV9282 sensor is an OmniVision black & white CMOS active pixel digital image
  sensor with an active array size of 1296H x 816V. It is programmable through
  I2C interface. The I2C client address is fixed to 0x60/0x70 as per sensor data
  sheet. Image data is sent through MIPI CSI-2.

properties:
  compatible:
    const: ovti,ov9282
  reg:
    description: I2C address
    maxItems: 1

  assigned-clocks: true
  assigned-clock-parents: true
  assigned-clock-rates: true

  clocks:
    description: Clock frequency from 6 to 27MHz
    maxItems: 1

  reset-gpios:
    description: Reference to the GPIO connected to the XCLR pin, if any.
    maxItems: 1

  port:
    additionalProperties: false
    $ref: /schemas/graph.yaml#/properties/port

    properties:
      endpoint:
        $ref: /schemas/media/video-interfaces.yaml#
        unevaluatedProperties: false

        properties:
          data-lanes: true
          link-frequencies: true

        required:
          - data-lanes
          - link-frequencies

    required:
      - endpoint

required:
  - compatible
  - reg
  - clocks
  - port

additionalProperties: false

examples:
  - |
    i2c0 {
        #address-cells = <1>;
        #size-cells = <0>;

        camera@60 {
            compatible = "ovti,ov9282";
            reg = <0x60>;
            clocks = <&ov9282_clk>;

            assigned-clocks = <&ov9282_clk>;
            assigned-clock-parents = <&ov9282_clk_parent>;
            assigned-clock-rates = <24000000>;

            port {
                ov9282: endpoint {
                    remote-endpoint = <&cam>;
                    data-lanes = <1 2>;
                    link-frequencies = /bits/ 64 <800000000>;
                };
            };
        };
    };
...
+91 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) 2021 Intel Corporation
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/sony,imx335.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Sony IMX335 Sensor

maintainers:
  - Paul J. Murphy <paul.j.murphy@intel.com>
  - Daniele Alessandrelli <daniele.alessandrelli@intel.com>

description:
  IMX335 sensor is a Sony CMOS active pixel digital image sensor with an active
  array size of 2592H x 1944V. It is programmable through I2C interface. The
  I2C client address is fixed to 0x1a as per sensor data sheet. Image data is
  sent through MIPI CSI-2.

properties:
  compatible:
    const: sony,imx335
  reg:
    description: I2C address
    maxItems: 1

  assigned-clocks: true
  assigned-clock-parents: true
  assigned-clock-rates: true

  clocks:
    description: Clock frequency from 6 to 27 MHz, 37.125MHz, 74.25MHz
    maxItems: 1

  reset-gpios:
    description: Reference to the GPIO connected to the XCLR pin, if any.
    maxItems: 1

  port:
    additionalProperties: false
    $ref: /schemas/graph.yaml#/properties/port

    properties:
      endpoint:
        $ref: /schemas/media/video-interfaces.yaml#
        unevaluatedProperties: false

        properties:
          data-lanes: true
          link-frequencies: true

        required:
          - data-lanes
          - link-frequencies

    required:
      - endpoint

required:
  - compatible
  - reg
  - clocks
  - port

additionalProperties: false

examples:
  - |
    i2c0 {
        #address-cells = <1>;
        #size-cells = <0>;

        camera@1a {
            compatible = "sony,imx335";
            reg = <0x1a>;
            clocks = <&imx335_clk>;

            assigned-clocks = <&imx335_clk>;
            assigned-clock-parents = <&imx335_clk_parent>;
            assigned-clock-rates = <24000000>;

            port {
                imx335: endpoint {
                    remote-endpoint = <&cam>;
                    data-lanes = <1 2 3 4>;
                    link-frequencies = /bits/ 64 <594000000>;
                };
            };
        };
    };
...
+91 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) 2021 Intel Corporation
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/sony,imx412.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Sony IMX412 Sensor

maintainers:
  - Paul J. Murphy <paul.j.murphy@intel.com>
  - Daniele Alessandrelli <daniele.alessandrelli@intel.com>

description:
  IMX412 sensor is a Sony CMOS active pixel digital image sensor with an active
  array size of 4072H x 3176V. It is programmable through I2C interface. The
  I2C client address is fixed to 0x1a as per sensor data sheet. Image data is
  sent through MIPI CSI-2.

properties:
  compatible:
    const: sony,imx412
  reg:
    description: I2C address
    maxItems: 1

  assigned-clocks: true
  assigned-clock-parents: true
  assigned-clock-rates: true

  clocks:
    description: Clock frequency 6MHz, 12MHz, 18MHz, 24MHz or 27MHz
    maxItems: 1

  reset-gpios:
    description: Reference to the GPIO connected to the XCLR pin, if any.
    maxItems: 1

  port:
    additionalProperties: false
    $ref: /schemas/graph.yaml#/properties/port

    properties:
      endpoint:
        $ref: /schemas/media/video-interfaces.yaml#
        unevaluatedProperties: false

        properties:
          data-lanes: true
          link-frequencies: true

        required:
          - data-lanes
          - link-frequencies

    required:
      - endpoint

required:
  - compatible
  - reg
  - clocks
  - port

additionalProperties: false

examples:
  - |
    i2c0 {
        #address-cells = <1>;
        #size-cells = <0>;

        camera@1a {
            compatible = "sony,imx412";
            reg = <0x1a>;
            clocks = <&imx412_clk>;

            assigned-clocks = <&imx412_clk>;
            assigned-clock-parents = <&imx412_clk_parent>;
            assigned-clock-rates = <24000000>;

            port {
                imx412: endpoint {
                    remote-endpoint = <&cam>;
                    data-lanes = <1 2 3 4>;
                    link-frequencies = /bits/ 64 <600000000>;
                };
            };
        };
    };
...
Loading