media: dt-bindings: convert CODA VPU bindings to yaml
Convert to YAML and add generic IP core compatibles "cnm,codadx6", "cnm,codahx4", "cnm,coda7541", and "cnm,coda960" in addition to the SoC specific compatibles. The new generic compatibles are already used in the SoC device trees and replace the free form comments. For example: - compatible : should be "fsl,<chip>-src" for i.MX SoCs: (a) "fsl,imx27-vpu" for CodaDx6 present in i.MX27 turns into: properties: compatible: oneOf: - items: - const: fsl,imx27-vpu - const: cnm,codadx6 This allows to properly specify the secondary JPEG unit interrupt that is only present on cnm,coda960. Also add the missing "fsl,imx6dl-vpu", "cnm,coda960" compatible. The AXI bus connection to the internal SRAM is different between i.MX6Q and i.MX6DL, which requires the driver to load a different firmware depending on the SoC. Further, specify the power-domain property for i.MX6 and change the clock order from "ahb", "per" to "per", "ahb". This order is currently used in all SoC device trees. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
parent
b20d9fac5b
commit
d7dc892dd4
@ -1,31 +0,0 @@
|
||||
Chips&Media Coda multi-standard codec IP
|
||||
========================================
|
||||
|
||||
Coda codec IPs are present in i.MX SoCs in various versions,
|
||||
called VPU (Video Processing Unit).
|
||||
|
||||
Required properties:
|
||||
- compatible : should be "fsl,<chip>-src" for i.MX SoCs:
|
||||
(a) "fsl,imx27-vpu" for CodaDx6 present in i.MX27
|
||||
(b) "fsl,imx51-vpu" for CodaHx4 present in i.MX51
|
||||
(c) "fsl,imx53-vpu" for CODA7541 present in i.MX53
|
||||
(d) "fsl,imx6q-vpu" for CODA960 present in i.MX6q
|
||||
- reg: should be register base and length as documented in the
|
||||
SoC reference manual
|
||||
- interrupts : Should contain the VPU interrupt. For CODA960,
|
||||
a second interrupt is needed for the MJPEG unit.
|
||||
- clocks : Should contain the ahb and per clocks, in the order
|
||||
determined by the clock-names property.
|
||||
- clock-names : Should be "ahb", "per"
|
||||
- iram : phandle pointing to the SRAM device node
|
||||
|
||||
Example:
|
||||
|
||||
vpu: vpu@63ff4000 {
|
||||
compatible = "fsl,imx53-vpu";
|
||||
reg = <0x63ff4000 0x1000>;
|
||||
interrupts = <9>;
|
||||
clocks = <&clks 63>, <&clks 63>;
|
||||
clock-names = "ahb", "per";
|
||||
iram = <&ocram>;
|
||||
};
|
108
Documentation/devicetree/bindings/media/coda.yaml
Normal file
108
Documentation/devicetree/bindings/media/coda.yaml
Normal file
@ -0,0 +1,108 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/media/coda.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Chips&Media Coda multi-standard codec IP
|
||||
|
||||
maintainers:
|
||||
- Philipp Zabel <p.zabel@pengutronix.de>
|
||||
|
||||
description: |-
|
||||
Coda codec IPs are present in i.MX SoCs in various versions,
|
||||
called VPU (Video Processing Unit).
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- items:
|
||||
- const: fsl,imx27-vpu
|
||||
- const: cnm,codadx6
|
||||
- items:
|
||||
- const: fsl,imx51-vpu
|
||||
- const: cnm,codahx4
|
||||
- items:
|
||||
- const: fsl,imx53-vpu
|
||||
- const: cnm,coda7541
|
||||
- items:
|
||||
- enum:
|
||||
- fsl,imx6dl-vpu
|
||||
- fsl,imx6q-vpu
|
||||
- const: cnm,coda960
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: PER clock
|
||||
- description: AHB interface clock
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: per
|
||||
- const: ahb
|
||||
|
||||
resets:
|
||||
maxItems: 1
|
||||
|
||||
iram:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle
|
||||
description: phandle pointing to the SRAM device node
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- clocks
|
||||
- clock-names
|
||||
|
||||
allOf:
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: cnm,coda960
|
||||
then:
|
||||
properties:
|
||||
interrupts:
|
||||
items:
|
||||
- description: BIT processor interrupt
|
||||
- description: JPEG unit interrupt
|
||||
|
||||
interrupt-names:
|
||||
items:
|
||||
- const: bit
|
||||
- const: jpeg
|
||||
else:
|
||||
properties:
|
||||
interrupts:
|
||||
items:
|
||||
- description: BIT processor interrupt
|
||||
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- fsl,imx6dl-vpu
|
||||
- fsl,imx6q-vpu
|
||||
then:
|
||||
properties:
|
||||
power-domains:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle
|
||||
description: phandle pointing to the PU power domain
|
||||
maxItems: 1
|
||||
|
||||
examples:
|
||||
- |
|
||||
vpu: video-codec@63ff4000 {
|
||||
compatible = "fsl,imx53-vpu", "cnm,coda7541";
|
||||
reg = <0x63ff4000 0x1000>;
|
||||
interrupts = <9>;
|
||||
clocks = <&clks 63>, <&clks 63>;
|
||||
clock-names = "per", "ahb";
|
||||
iram = <&ocram>;
|
||||
};
|
@ -4354,7 +4354,7 @@ CODA V4L2 MEM2MEM DRIVER
|
||||
M: Philipp Zabel <p.zabel@pengutronix.de>
|
||||
L: linux-media@vger.kernel.org
|
||||
S: Maintained
|
||||
F: Documentation/devicetree/bindings/media/coda.txt
|
||||
F: Documentation/devicetree/bindings/media/coda.yaml
|
||||
F: drivers/media/platform/coda/
|
||||
|
||||
CODE OF CONDUCT
|
||||
|
Loading…
Reference in New Issue
Block a user