From: Robert Foss <robert.foss@linaro.org> To: Dongchun Zhu <dongchun.zhu@mediatek.com>, Fabio Estevam <festevam@gmail.com>, Andy Shevchenko <andriy.shevchenko@linux.intel.com>, Sakari Ailus <sakari.ailus@iki.fi>, Tomasz Figa <tfiga@chromium.org>, linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: Robert Foss <robert.foss@linaro.org> Subject: [PATCH v6 1/3] media: dt-bindings: ov8856: Document YAML bindings Date: Tue, 31 Mar 2020 15:33:44 +0200 [thread overview] Message-ID: <20200331133346.372517-2-robert.foss@linaro.org> (raw) In-Reply-To: <20200331133346.372517-1-robert.foss@linaro.org> From: Dongchun Zhu <dongchun.zhu@mediatek.com> This patch adds documentation of device tree in YAML schema for the OV8856 CMOS image sensor. Signed-off-by: Dongchun Zhu <dongchun.zhu@mediatek.com> Signed-off-by: Robert Foss <robert.foss@linaro.org> --- - Changes since v5: * Add assigned-clocks and assigned-clock-rates * robher: dt-schema errors - Changes since v4: * Fabio: Change reset-gpio to GPIO_ACTIVE_LOW, explain in description * Add clock-lanes property to example * robher: Fix syntax error in devicetree example - Changes since v3: * robher: Fix syntax error * robher: Removed maxItems * Fixes yaml 'make dt-binding-check' errors - Changes since v2: Fixes comments from from Andy, Tomasz, Sakari, Rob. * Convert text documentation to YAML schema. - Changes since v1: Fixes comments from Sakari, Tomasz * Add clock-frequency and link-frequencies in DT .../devicetree/bindings/media/i2c/ov8856.yaml | 150 ++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 151 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/i2c/ov8856.yaml diff --git a/Documentation/devicetree/bindings/media/i2c/ov8856.yaml b/Documentation/devicetree/bindings/media/i2c/ov8856.yaml new file mode 100644 index 000000000000..beeddfbb8709 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/ov8856.yaml @@ -0,0 +1,150 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +# Copyright (c) 2019 MediaTek Inc. +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/ov8856.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Omnivision OV8856 CMOS Sensor Device Tree Bindings + +maintainers: + - Ben Kao <ben.kao@intel.com> + - Dongchun Zhu <dongchun.zhu@mediatek.com> + +description: |- + The Omnivision OV8856 is a high performance, 1/4-inch, 8 megapixel, CMOS + image sensor that delivers 3264x2448 at 30fps. It provides full-frame, + sub-sampled, and windowed 10-bit MIPI images in various formats via the + Serial Camera Control Bus (SCCB) interface. This chip is programmable + through I2C and two-wire SCCB. The sensor output is available via CSI-2 + serial data output (up to 4-lane). + +properties: + compatible: + const: ovti,ov8856 + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-names: + description: + Input clock for the sensor. + items: + - const: xvclk + + clock-frequency: + description: + Frequency of the xvclk clock in Hertz. + + assigned-clocks: + description: + Input clock for the sensor. + + assigned-clock-rates: + description: + Frequency of the xvclk clock in Hertz. + + dovdd-supply: + description: + Definition of the regulator used as interface power supply. + + avdd-supply: + description: + Definition of the regulator used as analog power supply. + + dvdd-supply: + description: + Definition of the regulator used as digital power supply. + + reset-gpios: + description: + The phandle and specifier for the GPIO that controls sensor reset. + This corresponds to the hardware pin XSHUTDOWN which is physically + active low. + + port: + type: object + additionalProperties: false + description: + A node containing input and output port nodes with endpoint definitions + as documented in + Documentation/devicetree/bindings/media/video-interfaces.txt + + properties: + endpoint: + type: object + + properties: + clock-lanes: + maxItems: 1 + + data-lanes: + maxItems: 1 + + remote-endpoint: true + + required: + - clock-lanes + - data-lanes + - remote-endpoint + + required: + - endpoint + +required: + - compatible + - reg + - clocks + - clock-names + - clock-frequency + - assigned-clocks + - assigned-clock-rates + - dovdd-supply + - avdd-supply + - dvdd-supply + - reset-gpios + - port + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + #include <dt-bindings/clock/qcom,camcc-sdm845.h> + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + ov8856: camera@10 { + compatible = "ovti,ov8856"; + reg = <0x10>; + + reset-gpios = <&pio 111 GPIO_ACTIVE_LOW>; + pinctrl-names = "default"; + pinctrl-0 = <&clk_24m_cam>; + + clocks = <&clock_camcc CAM_CC_MCLK0_CLK>; + clock-names = "xvclk"; + clock-frequency = <19200000>; + assigned-clocks = <&clock_camcc CAM_CC_MCLK0_CLK>; + assigned-clock-rates = <19200000>; + + avdd-supply = <&mt6358_vcama2_reg>; + dvdd-supply = <&mt6358_vcamd_reg>; + dovdd-supply = <&mt6358_vcamio_reg>; + + port { + wcam_out: endpoint { + remote-endpoint = <&mipi_in_wcam>; + clock-lanes = <0>; + data-lanes = <1 2 3 4>; + link-frequencies = /bits/ 64 <360000000 180000000>; + }; + }; + }; + }; +... \ No newline at end of file diff --git a/MAINTAINERS b/MAINTAINERS index a6fbdf354d34..0f99e863978a 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -12355,6 +12355,7 @@ L: linux-media@vger.kernel.org T: git git://linuxtv.org/media_tree.git S: Maintained F: drivers/media/i2c/ov8856.c +F: Documentation/devicetree/bindings/media/i2c/ov8856.yaml OMNIVISION OV9650 SENSOR DRIVER M: Sakari Ailus <sakari.ailus@linux.intel.com> -- 2.25.1
WARNING: multiple messages have this Message-ID (diff)
From: Robert Foss <robert.foss@linaro.org> To: Dongchun Zhu <dongchun.zhu@mediatek.com>, Fabio Estevam <festevam@gmail.com>, Andy Shevchenko <andriy.shevchenko@linux.intel.com>, Sakari Ailus <sakari.ailus@iki.fi>, Tomasz Figa <tfiga@chromium.org>, linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: Robert Foss <robert.foss@linaro.org> Subject: [PATCH v6 1/3] media: dt-bindings: ov8856: Document YAML bindings Date: Tue, 31 Mar 2020 15:33:44 +0200 [thread overview] Message-ID: <20200331133346.372517-2-robert.foss@linaro.org> (raw) In-Reply-To: <20200331133346.372517-1-robert.foss@linaro.org> From: Dongchun Zhu <dongchun.zhu@mediatek.com> This patch adds documentation of device tree in YAML schema for the OV8856 CMOS image sensor. Signed-off-by: Dongchun Zhu <dongchun.zhu@mediatek.com> Signed-off-by: Robert Foss <robert.foss@linaro.org> --- - Changes since v5: * Add assigned-clocks and assigned-clock-rates * robher: dt-schema errors - Changes since v4: * Fabio: Change reset-gpio to GPIO_ACTIVE_LOW, explain in description * Add clock-lanes property to example * robher: Fix syntax error in devicetree example - Changes since v3: * robher: Fix syntax error * robher: Removed maxItems * Fixes yaml 'make dt-binding-check' errors - Changes since v2: Fixes comments from from Andy, Tomasz, Sakari, Rob. * Convert text documentation to YAML schema. - Changes since v1: Fixes comments from Sakari, Tomasz * Add clock-frequency and link-frequencies in DT .../devicetree/bindings/media/i2c/ov8856.yaml | 150 ++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 151 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/i2c/ov8856.yaml diff --git a/Documentation/devicetree/bindings/media/i2c/ov8856.yaml b/Documentation/devicetree/bindings/media/i2c/ov8856.yaml new file mode 100644 index 000000000000..beeddfbb8709 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/ov8856.yaml @@ -0,0 +1,150 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +# Copyright (c) 2019 MediaTek Inc. +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/ov8856.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Omnivision OV8856 CMOS Sensor Device Tree Bindings + +maintainers: + - Ben Kao <ben.kao@intel.com> + - Dongchun Zhu <dongchun.zhu@mediatek.com> + +description: |- + The Omnivision OV8856 is a high performance, 1/4-inch, 8 megapixel, CMOS + image sensor that delivers 3264x2448 at 30fps. It provides full-frame, + sub-sampled, and windowed 10-bit MIPI images in various formats via the + Serial Camera Control Bus (SCCB) interface. This chip is programmable + through I2C and two-wire SCCB. The sensor output is available via CSI-2 + serial data output (up to 4-lane). + +properties: + compatible: + const: ovti,ov8856 + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-names: + description: + Input clock for the sensor. + items: + - const: xvclk + + clock-frequency: + description: + Frequency of the xvclk clock in Hertz. + + assigned-clocks: + description: + Input clock for the sensor. + + assigned-clock-rates: + description: + Frequency of the xvclk clock in Hertz. + + dovdd-supply: + description: + Definition of the regulator used as interface power supply. + + avdd-supply: + description: + Definition of the regulator used as analog power supply. + + dvdd-supply: + description: + Definition of the regulator used as digital power supply. + + reset-gpios: + description: + The phandle and specifier for the GPIO that controls sensor reset. + This corresponds to the hardware pin XSHUTDOWN which is physically + active low. + + port: + type: object + additionalProperties: false + description: + A node containing input and output port nodes with endpoint definitions + as documented in + Documentation/devicetree/bindings/media/video-interfaces.txt + + properties: + endpoint: + type: object + + properties: + clock-lanes: + maxItems: 1 + + data-lanes: + maxItems: 1 + + remote-endpoint: true + + required: + - clock-lanes + - data-lanes + - remote-endpoint + + required: + - endpoint + +required: + - compatible + - reg + - clocks + - clock-names + - clock-frequency + - assigned-clocks + - assigned-clock-rates + - dovdd-supply + - avdd-supply + - dvdd-supply + - reset-gpios + - port + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + #include <dt-bindings/clock/qcom,camcc-sdm845.h> + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + ov8856: camera@10 { + compatible = "ovti,ov8856"; + reg = <0x10>; + + reset-gpios = <&pio 111 GPIO_ACTIVE_LOW>; + pinctrl-names = "default"; + pinctrl-0 = <&clk_24m_cam>; + + clocks = <&clock_camcc CAM_CC_MCLK0_CLK>; + clock-names = "xvclk"; + clock-frequency = <19200000>; + assigned-clocks = <&clock_camcc CAM_CC_MCLK0_CLK>; + assigned-clock-rates = <19200000>; + + avdd-supply = <&mt6358_vcama2_reg>; + dvdd-supply = <&mt6358_vcamd_reg>; + dovdd-supply = <&mt6358_vcamio_reg>; + + port { + wcam_out: endpoint { + remote-endpoint = <&mipi_in_wcam>; + clock-lanes = <0>; + data-lanes = <1 2 3 4>; + link-frequencies = /bits/ 64 <360000000 180000000>; + }; + }; + }; + }; +... \ No newline at end of file diff --git a/MAINTAINERS b/MAINTAINERS index a6fbdf354d34..0f99e863978a 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -12355,6 +12355,7 @@ L: linux-media@vger.kernel.org T: git git://linuxtv.org/media_tree.git S: Maintained F: drivers/media/i2c/ov8856.c +F: Documentation/devicetree/bindings/media/i2c/ov8856.yaml OMNIVISION OV9650 SENSOR DRIVER M: Sakari Ailus <sakari.ailus@linux.intel.com> -- 2.25.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-03-31 13:34 UTC|newest] Thread overview: 76+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-03-31 13:33 [PATCH v3 0/3] media: ov8856: Add devicetree support Robert Foss 2020-03-31 13:33 ` Robert Foss 2020-03-31 13:33 ` Robert Foss [this message] 2020-03-31 13:33 ` [PATCH v6 1/3] media: dt-bindings: ov8856: Document YAML bindings Robert Foss 2020-03-31 15:12 ` Marco Felsch 2020-03-31 15:12 ` Marco Felsch 2020-04-02 9:57 ` Robert Foss 2020-04-02 9:57 ` Robert Foss 2020-04-03 19:21 ` Marco Felsch 2020-04-03 19:21 ` Marco Felsch 2020-04-01 8:07 ` Maxime Ripard 2020-04-01 8:07 ` Maxime Ripard 2020-04-02 10:10 ` Robert Foss 2020-04-02 10:10 ` Robert Foss 2020-04-03 23:27 ` Sakari Ailus 2020-04-03 23:27 ` Sakari Ailus 2020-04-04 9:34 ` Maxime Ripard 2020-04-04 9:34 ` Maxime Ripard 2020-04-06 8:25 ` Robert Foss 2020-04-06 8:25 ` Robert Foss 2020-04-06 8:35 ` Sakari Ailus 2020-04-06 8:35 ` Sakari Ailus 2020-04-07 8:36 ` Maxime Ripard 2020-04-07 8:36 ` Maxime Ripard 2020-04-07 11:29 ` Robert Foss 2020-04-07 11:29 ` Robert Foss 2020-04-07 12:32 ` Maxime Ripard 2020-04-07 12:32 ` Maxime Ripard 2020-04-07 15:47 ` Robert Foss 2020-04-07 15:47 ` Robert Foss 2020-04-07 16:39 ` Sakari Ailus 2020-04-07 16:39 ` Sakari Ailus 2020-04-07 16:46 ` Tomasz Figa 2020-04-07 16:46 ` Tomasz Figa 2020-04-07 17:20 ` Sakari Ailus 2020-04-07 17:20 ` Sakari Ailus 2020-04-08 12:21 ` Maxime Ripard 2020-04-08 12:21 ` Maxime Ripard 2020-04-08 12:35 ` Tomasz Figa 2020-04-08 12:35 ` Tomasz Figa 2020-04-08 13:43 ` Maxime Ripard 2020-04-08 13:43 ` Maxime Ripard 2020-04-08 15:28 ` Sakari Ailus 2020-04-08 15:28 ` Sakari Ailus 2020-04-08 15:30 ` Sakari Ailus 2020-04-08 15:30 ` Sakari Ailus 2020-04-08 16:34 ` Andy Shevchenko 2020-04-08 16:34 ` Andy Shevchenko 2020-04-15 10:18 ` Maxime Ripard 2020-04-15 10:18 ` Maxime Ripard 2020-04-15 11:10 ` Robert Foss 2020-04-15 11:10 ` Robert Foss 2020-04-15 16:16 ` Sakari Ailus 2020-04-15 16:16 ` Sakari Ailus 2020-04-20 15:02 ` Maxime Ripard 2020-04-20 15:02 ` Maxime Ripard 2020-04-09 8:32 ` Robert Foss 2020-04-09 8:32 ` Robert Foss 2020-04-07 16:20 ` Sakari Ailus 2020-04-07 16:20 ` Sakari Ailus 2020-04-04 9:23 ` Maxime Ripard 2020-04-04 9:23 ` Maxime Ripard 2020-03-31 13:33 ` [PATCH v3 2/3] media: ov8856: Add devicetree support Robert Foss 2020-03-31 13:33 ` Robert Foss 2020-03-31 14:01 ` Andy Shevchenko 2020-03-31 14:01 ` Andy Shevchenko 2020-04-06 13:37 ` Robert Foss 2020-04-06 13:37 ` Robert Foss 2020-04-06 15:06 ` Andy Shevchenko 2020-04-06 15:06 ` Andy Shevchenko 2020-04-06 15:25 ` Robert Foss 2020-04-06 15:25 ` Robert Foss 2020-04-03 23:33 ` Sakari Ailus 2020-04-03 23:33 ` Sakari Ailus 2020-03-31 13:33 ` [PATCH v3 3/3] media: ov8856: Implement sensor module revision identification Robert Foss 2020-03-31 13:33 ` Robert Foss
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20200331133346.372517-2-robert.foss@linaro.org \ --to=robert.foss@linaro.org \ --cc=andriy.shevchenko@linux.intel.com \ --cc=devicetree@vger.kernel.org \ --cc=dongchun.zhu@mediatek.com \ --cc=festevam@gmail.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-media@vger.kernel.org \ --cc=sakari.ailus@iki.fi \ --cc=tfiga@chromium.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.