dt-bindings: media: imx7 and ov2680 updates to yaml
Subsystems (5)
Rui Miguel Silva
maintainerv5 cover dt-bindings: media: imx7 and ov2680 updates to yaml
Update bindings documentation to json-schema yaml in imx7 csi, mipi csi and ov2680 sensor media devices along the respective MAINTAINERS entry.
Cheers,
Rui
v4 -> v5:
Rob Herring:
Patch 3/3:
https://lore.kernel.org/linux-media/20201020153044.GA875273@bogus/
- fix indentation of oneOf items const
v3 -> v4:
Rob Herring:
Patch 1/3:
https://lore.kernel.org/linux-media/20201019203910.GB3550266@bogus/
- remove clock-names description
- add maxItems to reset-gpios
v2 -> v3:
Jacopo Mondi:
Patch 1/3:
https://lore.kernel.org/linux-media/[email protected]/
- add prefix ovti to yaml file
- remove double space
- adjust port properties
- fix additional properties
- fix end of file line and empty line before ...
- add Jacopo Reviewed-by tag
Patch 2/3:
https://lore.kernel.org/linux-media/[email protected]/
- fix dual license
- rearrange ports properties
- add Jacopo Reviewed-by tag
Patch 3/3:
https://lore.kernel.org/linux-media/[email protected]/
- fix dual license
- capital letters fix
- const instead of enum in compatible
- data lanes array setup
- add phy-supply to required
- additionalProperties replace
v1 -> v2:
Sakari Ailus - Patch 1/3:
https://lore.kernel.org/linux-media/[email protected]/
- omit remote-endpoint
- remove not needed clock-lanes and data-lanes
Rui Miguel Silva (3):
dt-bindings: ov2680: convert bindings to yaml
dt-bindings: imx7-csi: convert bindings to yaml
dt-bindings: imx7-mipi-csi2: convert bindings to yaml
.../devicetree/bindings/media/i2c/ov2680.txt | 46 ----- .../bindings/media/i2c/ovti,ov2680.yaml | 99 ++++++++++ .../devicetree/bindings/media/imx7-csi.txt | 42 ----- .../bindings/media/imx7-mipi-csi2.txt | 90 --------- .../bindings/media/nxp,imx7-csi.yaml | 71 ++++++++ .../bindings/media/nxp,imx7-mipi-csi2.yaml | 172 ++++++++++++++++++ MAINTAINERS | 6 +- 7 files changed, 345 insertions(+), 181 deletions(-) delete mode 100644 Documentation/devicetree/bindings/media/i2c/ov2680.txt create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov2680.yaml delete mode 100644 Documentation/devicetree/bindings/media/imx7-csi.txt delete mode 100644 Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt create mode 100644 Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml create mode 100644 Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml
Signature · 1 line
2.28.0
Rui Miguel Silva
maintainerPATCH v5 1/3 dt-bindings: ov2680: convert bindings to yaml
Convert ov2680 sensor bindings documentation to yaml schema, remove the textual bindings document and update MAINTAINERS entry.
--- .../devicetree/bindings/media/i2c/ov2680.txt | 46 --------- .../bindings/media/i2c/ovti,ov2680.yaml | 99 +++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 100 insertions(+), 47 deletions(-) delete mode 100644 Documentation/devicetree/bindings/media/i2c/ov2680.txt create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov2680.yaml
Documentation/devicetree/bindings/media/i2c/ov2680.txt deleted +0 -46
@@ -1,46 +0,0 @@ -* Omnivision OV2680 MIPI CSI-2 sensor - -Required Properties: -- compatible: should be "ovti,ov2680". -- clocks: reference to the xvclk input clock. -- clock-names: should be "xvclk". -- DOVDD-supply: Digital I/O voltage supply. -- DVDD-supply: Digital core voltage supply. -- AVDD-supply: Analog voltage supply. - -Optional Properties: -- reset-gpios: reference to the GPIO connected to the powerdown/reset pin, - if any. This is an active low signal to the OV2680. - -The device node must contain one 'port' child node for its digital output -video port, and this port must have a single endpoint in accordance with - the video interface bindings defined in -Documentation/devicetree/bindings/media/video-interfaces.txt. - -Endpoint node required properties for CSI-2 connection are: -- remote-endpoint: a phandle to the bus receiver's endpoint node. -- clock-lanes: should be set to <0> (clock lane on hardware lane 0). -- data-lanes: should be set to <1> (one CSI-2 lane supported). - -Example: - -&i2c2 { - ov2680: camera-sensor@36 { - compatible = "ovti,ov2680"; - reg = <0x36>; - clocks = <&osc>; - clock-names = "xvclk"; - reset-gpios = <&gpio1 3 GPIO_ACTIVE_LOW>; - DOVDD-supply = <&sw2_reg>; - DVDD-supply = <&sw2_reg>; - AVDD-supply = <®_peri_3p15v>; - - port { - ov2680_to_mipi: endpoint { - remote-endpoint = <&mipi_from_sensor>; - clock-lanes = <0>; - data-lanes = <1>; - }; - }; - }; -};
Documentation/devicetree/bindings/media/i2c/ovti,ov2680.yaml new file +99 -0
99 lines not on this page · raw message
MAINTAINERS +1 -1
@@ -12781,7 +12781,7 @@ M: Rui Miguel Silva <[email protected]> L: [email protected] S: Maintained T: git git://linuxtv.org/media_tree.git -F: Documentation/devicetree/bindings/media/i2c/ov2680.txt +F: Documentation/devicetree/bindings/media/i2c/ov2680.yaml F: drivers/media/i2c/ov2680.c OMNIVISION OV2685 SENSOR DRIVER
Signature · 1 line
2.28.0
Rui Miguel Silva
maintainerPATCH v5 2/3 dt-bindings: imx7-csi: convert bindings to yaml
In reply to Rui Miguel SilvaConvert imx7-csi bindings documentation to yaml schema, remove the textual bindings document and update MAINTAINERS entry.
--- .../devicetree/bindings/media/imx7-csi.txt | 42 ----------- .../bindings/media/nxp,imx7-csi.yaml | 71 +++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 72 insertions(+), 43 deletions(-) delete mode 100644 Documentation/devicetree/bindings/media/imx7-csi.txt create mode 100644 Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml
Documentation/devicetree/bindings/media/imx7-csi.txt deleted +0 -42
@@ -1,42 +0,0 @@ -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" or "fsl,imx6ul-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 "mclk"; - -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_CSI_MCLK_ROOT_CLK>; - clock-names = "mclk"; - - port { - csi_from_csi_mux: endpoint { - remote-endpoint = <&csi_mux_to_csi>; - }; - }; - };
Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml new file +71 -0
71 lines not on this page · raw message
MAINTAINERS +1 -1
@@ -10779,8 +10779,8 @@ L: [email protected] S: Maintained T: git git://linuxtv.org/media_tree.git F: Documentation/admin-guide/media/imx7.rst -F: Documentation/devicetree/bindings/media/imx7-csi.txt F: Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt +F: Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml F: drivers/staging/media/imx/imx7-media-csi.c F: drivers/staging/media/imx/imx7-mipi-csis.c
Signature · 1 line
2.28.0
Rui Miguel Silva
maintainerPATCH v5 3/3 dt-bindings: imx7-mipi-csi2: convert bindings to yaml
In reply to Rui Miguel SilvaConvert imx7 mipi csi2 bindings documentation to yaml schema, remove the textual document and update MAINTAINERS entry.
---
v4 -> v5:
Rob Herring:
https://lore.kernel.org/linux-media/20201020153044.GA875273@bogus/
- fix indentation of oneOf items const
.../bindings/media/imx7-mipi-csi2.txt | 90 --------- .../bindings/media/nxp,imx7-mipi-csi2.yaml | 172 ++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 173 insertions(+), 91 deletions(-) delete mode 100644 Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt create mode 100644 Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml
Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt deleted +0 -90
@@ -1,90 +0,0 @@ -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 = <®_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>; - }; - }; - };
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +172 -0
172 lines not on this page · raw message
MAINTAINERS +1 -1
@@ -10779,8 +10779,8 @@ L: [email protected] S: Maintained T: git git://linuxtv.org/media_tree.git F: Documentation/admin-guide/media/imx7.rst -F: Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt F: Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml +F: Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml F: drivers/staging/media/imx/imx7-media-csi.c F: drivers/staging/media/imx/imx7-mipi-csis.c
Signature · 1 line
2.28.0
Re: [PATCH v5 3/3] dt-bindings: imx7-mipi-csi2: convert bindings to yaml
Hi Rui,
Quoted 124 lines · Rui Miguel Silva
Convert imx7 mipi csi2 bindings documentation to yaml schema, remove the textual document and update
MAINTAINERSentry.Signed-off-by Rui Miguel Silva <[email protected]>---
v4 -> v5:
Rob Herring:
https://lore.kernel.org/linux-media/20201020153044.GA875273@bogus/
- fix indentation of oneOf items const.../bindings/media/imx7-mipi-csi2.txt | 90 --------- .../bindings/media/nxp,imx7-mipi-csi2.yaml | 172 ++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 173 insertions(+), 91 deletions(-) delete mode 100644 Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt create mode 100644 Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yamlDocumentation/devicetree/bindings/media/imx7-mipi-csi2.txt deleted +0
-90@@ -1,90 +0,0 @@ -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 = <®_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>; - }; - }; - };Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +4
-0@@ -0,0 +1,172 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/nxp,imx7-mipi-csi2.yaml#
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml line 14
Quoted 10 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +10
-0+$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NXP i.MX7 Mipi CSI2 + +maintainers: + - Rui Miguel Silva <[email protected]> + +description: | + 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.
To be picky, mipi and csi-2 should be spelled with capital letters. Probably i.MX7 too.
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml line 27
Quoted 13 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +13
-0+ +properties: + compatible: + const: fsl,imx7-mipi-csi2 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + minItems: 3
Do you need a maxItems too ?
nits apart
Thanks
j
Quoted 162 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +145
-0+ + clock-names: + items: + - const: pclk + - const: wrap + - const: phy + + power-domains: + maxItems: 1 + + phy-supply: + description: + Phandle to a regulator that provides power to the PHY. This + regulator will be managed during the PHY power on/off sequence. + + resets: + maxItems: 1 + + reset-names: + const: mrst + + clock-frequency: + description: + The IP main (system bus) clock frequency in Hertz + default: 166000000 + + fsl,csis-hs-settle: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Differential receiver (HS-RX) settle time + + ports: + type: object + description: + A node containing input and output port nodes with endpoint definitions + as documented in + Documentation/devicetree/bindings/media/video-interfaces.txt + + properties: + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + port@0: + type: object + description: + Input port node, single endpoint describing the CSI-2 transmitter. + + properties: + reg: + const: 0 + + endpoint: + type: object + + properties: + data-lanes: + $ref: /schemas/types.yaml#/definitions/uint32-array + description: See ../video-interfaces.txt + oneOf: + - items: + - const: 1 + - items: + - const: 1 + - const: 2 + + remote-endpoint: true + + required: + - data-lanes + - remote-endpoint + + additionalProperties: false + + additionalProperties: false + + port@1: + type: object + description: + Output port node + +required: + - compatible + - reg + - interrupts + - clocks + - clock-names + - power-domains + - phy-supply + - resets + - reset-names + - ports + +additionalProperties: false + +examples: + - | + #include <dt-bindings/clock/imx7d-clock.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/reset/imx7-reset.h> + + mipi_csi: mipi-csi@30750000 { + 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 = <®_1p0d>; + resets = <&src IMX7_RESET_MIPI_PHY_MRST>; + reset-names = "mrst"; + fsl,csis-hs-settle = <3>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + 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>; + }; + }; + }; + }; + +...MAINTAINERS +1
-2@@ -10779,8 +10779,8 @@ L: [email protected] S: Maintained T: git git://linuxtv.org/media_tree.git F: Documentation/admin-guide/media/imx7.rst -F: Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt F: Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml +F: Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml F: drivers/staging/media/imx/imx7-media-csi.c F: drivers/staging/media/imx/imx7-mipi-csis.c --2.28.0
Rui Miguel Silva
maintainerRe: [PATCH v5 3/3] dt-bindings: imx7-mipi-csi2: convert bindings to yaml
Hi Jacopo,
Thanks for the review.
Quoted 132 lines · Jacopo Mondi
Hi Rui,
Quoted 129 lines · Rui Miguel Silva
Convert imx7 mipi csi2 bindings documentation to yaml schema, remove the textual document and update
MAINTAINERSentry.Signed-off-by Rui Miguel Silva <[email protected]>---
v4 -> v5:
Rob Herring:
https://lore.kernel.org/linux-media/20201020153044.GA875273@bogus/
- fix indentation of oneOf items const.../bindings/media/imx7-mipi-csi2.txt | 90 --------- .../bindings/media/nxp,imx7-mipi-csi2.yaml | 172 ++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 173 insertions(+), 91 deletions(-) delete mode 100644 Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt create mode 100644 Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yamlDocumentation/devicetree/bindings/media/imx7-mipi-csi2.txt deleted +0
-90@@ -1,90 +0,0 @@ -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 = <®_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>; - }; - }; - };Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +9
-0@@ -0,0 +1,172 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/nxp,imx7-mipi-csi2.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NXP i.MX7 Mipi CSI2 + +maintainers:
Quoted 8 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml line 14
Quoted 5 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +5
-0+ - Rui Miguel Silva <[email protected]> + +description: | + 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.To be picky, mipi and csi-2 should be spelled with capital letters. Probably i.MX7 too.
yeah, I normally skip that part but it is important, will fix this in next version.
Quoted 16 lines
Quoted 4 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +3
-0+ +properties: + compatible:Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml line 27
Quoted 10 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +10
-0+ const: fsl,imx7-mipi-csi2 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + minItems: 3Do you need a maxItems too ?
sure, thanks.
Quoted 3 lines
nits apart
Reviewed-by Jacopo Mondi <[email protected]>
Thanks, Should I use this tag with renesas mail or the other that you already used in the other patches? I think the later makes more sense.
------
Cheers,
Rui
Quoted 166 lines
Thanks
jQuoted 162 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +145
-0+ + clock-names: + items: + - const: pclk + - const: wrap + - const: phy + + power-domains: + maxItems: 1 + + phy-supply: + description: + Phandle to a regulator that provides power to the PHY. This + regulator will be managed during the PHY power on/off sequence. + + resets: + maxItems: 1 + + reset-names: + const: mrst + + clock-frequency: + description: + The IP main (system bus) clock frequency in Hertz + default: 166000000 + + fsl,csis-hs-settle: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Differential receiver (HS-RX) settle time + + ports: + type: object + description: + A node containing input and output port nodes with endpoint definitions + as documented in + Documentation/devicetree/bindings/media/video-interfaces.txt + + properties: + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + port@0: + type: object + description: + Input port node, single endpoint describing the CSI-2 transmitter. + + properties: + reg: + const: 0 + + endpoint: + type: object + + properties: + data-lanes: + $ref: /schemas/types.yaml#/definitions/uint32-array + description: See ../video-interfaces.txt + oneOf: + - items: + - const: 1 + - items: + - const: 1 + - const: 2 + + remote-endpoint: true + + required: + - data-lanes + - remote-endpoint + + additionalProperties: false + + additionalProperties: false + + port@1: + type: object + description: + Output port node + +required: + - compatible + - reg + - interrupts + - clocks + - clock-names + - power-domains + - phy-supply + - resets + - reset-names + - ports + +additionalProperties: false + +examples: + - | + #include <dt-bindings/clock/imx7d-clock.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/reset/imx7-reset.h> + + mipi_csi: mipi-csi@30750000 { + 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 = <®_1p0d>; + resets = <&src IMX7_RESET_MIPI_PHY_MRST>; + reset-names = "mrst"; + fsl,csis-hs-settle = <3>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + 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>; + }; + }; + }; + }; + +...MAINTAINERS +1
-2@@ -10779,8 +10779,8 @@ L: [email protected] S: Maintained T: git git://linuxtv.org/media_tree.git F: Documentation/admin-guide/media/imx7.rst -F: Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt F: Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml +F: Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml F: drivers/staging/media/imx/imx7-media-csi.c F: drivers/staging/media/imx/imx7-mipi-csis.c --2.28.0
Rui Miguel Silva
maintainerRe: [PATCH v5 3/3] dt-bindings: imx7-mipi-csi2: convert bindings to yaml
Hi Jacopo,
Quoted 10 lines · Rui Miguel Silva
Hi Jacopo,
Thanks for the review.Quoted 5 lines · Jacopo Mondi
Hi Rui,
On Tue, Oct 20, 2020 at 08:00:51PM +0100, Rui Miguel Silva wrote:
Do you need a maxItems too ?
Quoted 8 lines
sure, thanks.
Quoted 3 lines
nits apart
Reviewed-by Jacopo Mondi <[email protected]>Thanks, Should I use this tag with renesas mail or the other that you already used in the other patches? I think the later makes more sense.
never mind, your tag is the normal, I was confused by your email in the header and the email on the tag. My bad.
------
Cheers,
Rui
Jacopo Mondi
Reviewed-byRe: [PATCH v5 3/3] dt-bindings: imx7-mipi-csi2: convert bindings to yaml
In reply to Rui Miguel SilvaHi Rui,
Quoted 165 lines · Rui Miguel Silva
Hi Jacopo,
Thanks for the review.Quoted 132 lines · Jacopo Mondi
Hi Rui,
Quoted 129 lines · Rui Miguel Silva
Convert imx7 mipi csi2 bindings documentation to yaml schema, remove the textual document and update
MAINTAINERSentry.Signed-off-by Rui Miguel Silva <[email protected]>---
v4 -> v5:
Rob Herring:
https://lore.kernel.org/linux-media/20201020153044.GA875273@bogus/
- fix indentation of oneOf items const.../bindings/media/imx7-mipi-csi2.txt | 90 --------- .../bindings/media/nxp,imx7-mipi-csi2.yaml | 172 ++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 173 insertions(+), 91 deletions(-) delete mode 100644 Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt create mode 100644 Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yamlDocumentation/devicetree/bindings/media/imx7-mipi-csi2.txt deleted +0
-90@@ -1,90 +0,0 @@ -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 = <®_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>; - }; - }; - };Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +9
-0@@ -0,0 +1,172 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/nxp,imx7-mipi-csi2.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NXP i.MX7 Mipi CSI2 + +maintainers:Quoted 8 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml line 14
Quoted 5 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +5
-0+ - Rui Miguel Silva <[email protected]> + +description: | + 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.To be picky, mipi and csi-2 should be spelled with capital letters. Probably i.MX7 too.
yeah, I normally skip that part but it is important, will fix this in next version.
Quoted 16 lines
Quoted 4 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +3
-0+ +properties: + compatible:Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml line 27
Quoted 10 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +10
-0+ const: fsl,imx7-mipi-csi2 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + minItems: 3Do you need a maxItems too ?
Quoted 8 lines
sure, thanks.
Quoted 3 lines
nits apart
Reviewed-by Jacopo Mondi <[email protected]>Thanks, Should I use this tag with renesas mail or the other that you already used in the other patches? I think the later makes more sense.
Ups, I mixed the two
Sorry!
Quoted 171 lines
------
Cheers,
RuiQuoted 166 lines
Thanks
jQuoted 162 lines
Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file +145
-0+ + clock-names: + items: + - const: pclk + - const: wrap + - const: phy + + power-domains: + maxItems: 1 + + phy-supply: + description: + Phandle to a regulator that provides power to the PHY. This + regulator will be managed during the PHY power on/off sequence. + + resets: + maxItems: 1 + + reset-names: + const: mrst + + clock-frequency: + description: + The IP main (system bus) clock frequency in Hertz + default: 166000000 + + fsl,csis-hs-settle: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Differential receiver (HS-RX) settle time + + ports: + type: object + description: + A node containing input and output port nodes with endpoint definitions + as documented in + Documentation/devicetree/bindings/media/video-interfaces.txt + + properties: + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + port@0: + type: object + description: + Input port node, single endpoint describing the CSI-2 transmitter. + + properties: + reg: + const: 0 + + endpoint: + type: object + + properties: + data-lanes: + $ref: /schemas/types.yaml#/definitions/uint32-array + description: See ../video-interfaces.txt + oneOf: + - items: + - const: 1 + - items: + - const: 1 + - const: 2 + + remote-endpoint: true + + required: + - data-lanes + - remote-endpoint + + additionalProperties: false + + additionalProperties: false + + port@1: + type: object + description: + Output port node + +required: + - compatible + - reg + - interrupts + - clocks + - clock-names + - power-domains + - phy-supply + - resets + - reset-names + - ports + +additionalProperties: false + +examples: + - | + #include <dt-bindings/clock/imx7d-clock.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/reset/imx7-reset.h> + + mipi_csi: mipi-csi@30750000 { + 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 = <®_1p0d>; + resets = <&src IMX7_RESET_MIPI_PHY_MRST>; + reset-names = "mrst"; + fsl,csis-hs-settle = <3>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + 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>; + }; + }; + }; + }; + +...MAINTAINERS +1
-2@@ -10779,8 +10779,8 @@ L: [email protected] S: Maintained T: git git://linuxtv.org/media_tree.git F: Documentation/admin-guide/media/imx7.rst -F: Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt F: Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml +F: Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml F: drivers/staging/media/imx/imx7-media-csi.c F: drivers/staging/media/imx/imx7-mipi-csis.c --2.28.0