Message ID | 20231123115104.32094-2-zhi.mao@mediatek.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:ce62:0:b0:403:3b70:6f57 with SMTP id o2csp385879vqx; Thu, 23 Nov 2023 03:52:50 -0800 (PST) X-Google-Smtp-Source: AGHT+IE1hlOvfU+V8U1l0rIIjFhpx8iCk1GYyQjg0HcgyMNe5+lvDVHaSYENjLL2sbWWDzlH6BnA X-Received: by 2002:a05:6808:150a:b0:3ae:e79d:79a0 with SMTP id u10-20020a056808150a00b003aee79d79a0mr6776859oiw.30.1700740370485; Thu, 23 Nov 2023 03:52:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1700740370; cv=none; d=google.com; s=arc-20160816; b=JQF0P4mhImstmcHBAShr1suEEqKC/+xKKV/OM2txsIKaQZkyS0b8AFN0svSqP1q84A vzehz4sT5Kp2P2OM0MUWCJYQ0dX5dHAsVnSzWHCPvMaf2FD/VHekwXnC+et0FaHE5EoT CfuitRMd6ndTKlMCmznKZRHkr3wSCgUHkAR7iIltJVIQYtdix5Ev4IEntESL4gPx5Qw2 md+GjOBVodmoh5dFu0KcK2IA6UDbF9WzT86kaiUOieHP6Clra3uS0fIh7Ce3cU9B2e5v vSZhMfhggPn/O9KkmECka1zyOqTcKXAPF/9eBSmFhTC9Paa3Akg9fAAnKXgaA3Sb5F93 JAAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=npo17YZ27fotVhhzuQeyCvo86ZlC56RHG3gTlq+INPQ=; fh=cjkE8hUY0iCbldEY7jsSmjTQ/R44KxGB4bKZMin/vkw=; b=JKWGQ6ICZIJvWtDSu8+zXTaqo7gMEblCVYhovU1c9ka8V/I3Is4hGafcqC1YzmlSSa 15QyH2ttvAL3ErUttztUAxASINfymRjINLRYwroRClZpGIHJM/wRHvHg9ByAiBVAE87v 1MDuTLtouFKbmmDEmkcG8xC1OrwsXnefqkG/F8nPwAGDDFY1GfabLg+Q/4JiS/whPnPy jsnrmYsKV3dJiIjldxNtc4LHN+fDD1UsFOXVPO+VBwrMrCCtBSO4z8aPM6yD6w9UY5D2 SegvULUHTKhXlyPJW5b1k+m6Wl6QzLwuyMhbSR9J+2TXSU9iuZqojgzgTxAaRwuLJRjX czGw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=RdNpGN3c; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=mediatek.com Received: from morse.vger.email (morse.vger.email. [23.128.96.31]) by mx.google.com with ESMTPS id bg3-20020a056a02010300b005bdf596188asi1155500pgb.667.2023.11.23.03.52.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 23 Nov 2023 03:52:50 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) client-ip=23.128.96.31; Authentication-Results: mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=RdNpGN3c; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=mediatek.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by morse.vger.email (Postfix) with ESMTP id E89D480843F2; Thu, 23 Nov 2023 03:52:37 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at morse.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345131AbjKWLw3 (ORCPT <rfc822;ouuuleilei@gmail.com> + 99 others); Thu, 23 Nov 2023 06:52:29 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53682 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345118AbjKWLw1 (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Thu, 23 Nov 2023 06:52:27 -0500 Received: from mailgw01.mediatek.com (unknown [60.244.123.138]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 969271A5; Thu, 23 Nov 2023 03:52:33 -0800 (PST) X-UUID: c783552689f611eea33bb35ae8d461a2-20231123 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Type:Content-Transfer-Encoding:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=npo17YZ27fotVhhzuQeyCvo86ZlC56RHG3gTlq+INPQ=; b=RdNpGN3cVjL19hw91ecR3MEo7Lv99kDeLl4fIKLsU/3UL+CetE2fSTLrMJ3uqPRmWHxjBoCz2+hZj3riAqRztt9pVBqeLrBD3ri+Gh5kdXNx03MsvHUZ/Didk1etFTE3fe7wqiW+Kwrg41Wr6XerWnLYYKVo5porJAhT197qCiY=; X-CID-CACHE: Type:Local,Time:202311231905+08,HitQuantity:1 X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.33,REQID:6d5b5887-137d-4edf-a6d0-887086b99519,IP:0,U RL:25,TC:0,Content:-25,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTI ON:release,TS:0 X-CID-META: VersionHash:364b77b,CLOUDID:a29dfd72-1bd3-4f48-b671-ada88705968c,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0,EDM:-3,IP:nil,U RL:11|1,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0,LES:1,SPR: NO,DKR:0,DKP:0,BRR:0,BRE:0 X-CID-BVR: 0 X-CID-BAS: 0,_,0,_ X-CID-FACTOR: TF_CID_SPAM_SNR,TF_CID_SPAM_ULN X-UUID: c783552689f611eea33bb35ae8d461a2-20231123 Received: from mtkmbs13n1.mediatek.inc [(172.21.101.193)] by mailgw01.mediatek.com (envelope-from <zhi.mao@mediatek.com>) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 1556815132; Thu, 23 Nov 2023 19:52:29 +0800 Received: from mtkmbs13n1.mediatek.inc (172.21.101.193) by mtkmbs11n2.mediatek.inc (172.21.101.187) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Thu, 23 Nov 2023 19:52:28 +0800 Received: from mhfsdcap04.gcn.mediatek.inc (10.17.3.154) by mtkmbs13n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.1118.26 via Frontend Transport; Thu, 23 Nov 2023 19:52:27 +0800 From: Zhi Mao <zhi.mao@mediatek.com> To: <mchehab@kernel.org>, <robh+dt@kernel.org>, <krzysztof.kozlowski+dt@linaro.org> CC: <shengnan.wang@mediatek.com>, <yaya.chang@mediatek.com>, <10572168@qq.com>, <Project_Global_Chrome_Upstream_Group@mediatek.com>, <yunkec@chromium.org>, <conor+dt@kernel.org>, <matthias.bgg@gmail.com>, <angelogioacchino.delregno@collabora.com>, <jacopo.mondi@ideasonboard.com>, <sakari.ailus@linux.intel.com>, <zhi.mao@mediatek.com>, <hverkuil-cisco@xs4all.nl>, <heiko@sntech.de>, <jernej.skrabec@gmail.com>, <macromorgan@hotmail.com>, <linus.walleij@linaro.org>, <laurent.pinchart@ideasonboard.com>, <hdegoede@redhat.com>, <tomi.valkeinen@ideasonboard.com>, <gerald.loacker@wolfvision.net>, <andy.shevchenko@gmail.com>, <bingbu.cao@intel.com>, <dan.scally@ideasonboard.com>, <linux-media@vger.kernel.org>, <devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-arm-kernel@lists.infradead.org>, <linux-mediatek@lists.infradead.org> Subject: [PATCH 1/2] media: dt-bindings: media: i2c: Document GC08A3 bindings Date: Thu, 23 Nov 2023 19:51:03 +0800 Message-ID: <20231123115104.32094-2-zhi.mao@mediatek.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20231123115104.32094-1-zhi.mao@mediatek.com> References: <20231123115104.32094-1-zhi.mao@mediatek.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-MTK: N X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE,UNPARSEABLE_RELAY autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on morse.vger.email Precedence: bulk List-ID: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (morse.vger.email [0.0.0.0]); Thu, 23 Nov 2023 03:52:38 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783355534885236738 X-GMAIL-MSGID: 1783355534885236738 |
Series |
media: i2c: Add support for GC08A3 sensor
|
|
Commit Message
Zhi Mao (毛智)
Nov. 23, 2023, 11:51 a.m. UTC
Add YAML device tree binding for GC08A3 CMOS image sensor,
and the relevant MAINTAINERS entries.
Signed-off-by: Zhi Mao <zhi.mao@mediatek.com>
---
.../bindings/media/i2c/galaxycore,gc08a3.yaml | 128 ++++++++++++++++++
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
2 files changed, 130 insertions(+)
create mode 100644 Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml
Comments
On Thu, 23 Nov 2023 19:51:03 +0800, Zhi Mao wrote: > Add YAML device tree binding for GC08A3 CMOS image sensor, > and the relevant MAINTAINERS entries. > > Signed-off-by: Zhi Mao <zhi.mao@mediatek.com> > --- > .../bindings/media/i2c/galaxycore,gc08a3.yaml | 128 ++++++++++++++++++ > .../devicetree/bindings/vendor-prefixes.yaml | 2 + > 2 files changed, 130 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check' on your patch (DT_CHECKER_FLAGS is new in v5.13): yamllint warnings/errors: dtschema/dtc warnings/errors: Error: Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.example.dts:29.37-38 syntax error FATAL ERROR: Unable to parse input tree make[2]: *** [scripts/Makefile.lib:419: Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.example.dtb] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [/builds/robherring/dt-review-ci/linux/Makefile:1424: dt_binding_check] Error 2 make: *** [Makefile:234: __sub-make] Error 2 doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20231123115104.32094-2-zhi.mao@mediatek.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
On Thu, Nov 23, 2023 at 07:51:03PM +0800, Zhi Mao wrote: > Add YAML device tree binding for GC08A3 CMOS image sensor, > and the relevant MAINTAINERS entries. > > Signed-off-by: Zhi Mao <zhi.mao@mediatek.com> Please test your bindings. > --- > .../bindings/media/i2c/galaxycore,gc08a3.yaml | 128 ++++++++++++++++++ > .../devicetree/bindings/vendor-prefixes.yaml | 2 + > 2 files changed, 130 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > diff --git a/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > new file mode 100644 > index 000000000000..089ea321da91 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > @@ -0,0 +1,128 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/media/i2c/galaxycore,gc08a3.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: GalaxyCore gc08a3 1/4" 8M Pixel MIPI CSI-2 sensor > + > +maintainers: > + - Zhi Mao <zhi.mao@mediatek.com> > + > +description: |- The |- is not needed, you have no formatting to preserve. > + The gc08a3 is a raw image sensor with an MIPI CSI-2 image data > + interface and CCI (I2C compatible) control bus. The output format > + is raw Bayer. > + > +properties: > + compatible: > + const: GalaxyCore,gc08a3 Please remove the capitals. > + > + reg: > + maxItems: 1 > + > + clocks: > + items: > + - description: Reference to the mclk clock. Pointless, just use maxItems: 1. > + > + assigned-clocks: > + maxItems: 1 > + > + assigned-clock-rates: > + maxItems: 1 > + > + enable-gpios: > + description: Reference to the GPIO connected to the RESETB pin. Active low. > + maxItems: 1 > + > + vddio-supply: > + description: Definition of the regulator used for the VDDIO power supply. > + > + vdda-supply: > + description: Definition of the regulator used for the VDDA power supply. > + > + vddd-supply: > + description: Definition of the regulator used for the VDDD power supply. These descriptions can all be replaced with "foo-supply: true" IMO. > + port: > + $ref: /schemas/graph.yaml#/$defs/port-base > + unevaluatedProperties: false > + > + properties: > + endpoint: > + $ref: /schemas/media/video-interfaces.yaml# > + unevaluatedProperties: false > + > + properties: > + data-lanes: > + oneOf: > + - items: > + - const: 1 > + - const: 2 > + - const: 3 > + - const: 4 > + - items: > + - const: 1 > + - const: 2 > + > + link-frequencies: true > + > + required: > + - data-lanes > + - link-frequencies > + > +required: > + - compatible > + - reg > + - clocks > + - assigned-clocks > + - assigned-clock-rates Why are these required? > + - vddio-supply > + - vdda-supply > + - vddd-supply > + - port > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + sensor0@2 { > + status = "okay"; > + compatible = "GalaxyCore,gc08a3"; > + reg = <0x31>; > + > + clocks = <&topckgen CLK_TOP_CAMTG>, > + <&topckgen CLK_TOP_UNIVPLL_192M_D8>; > + clock-names = "xvclk", "freq_mux"; > + clock-frequency = <24000000>; > + > + assigned-clocks = <&topckgen CLK_TOP_CAMTG>, > + <&topckgen CLK_TOP_UNIVPLL_192M_D8>; > + assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_192M_D8>; > + assigned-clock-rates = <0>, <24000000>; > + > + enable-gpios = <&pio 19 GPIO_ACTIVE_HIGH>; > + > + pinctrl-names = "default"; > + pinctrl-0 = <&camera_pins_cam0>; > + > + avdd-supply = <&mt6359_vfe28_ldo_reg>; > + > + port { > + sensor0_out_2: endpoint { > + data-lanes = <1 2 3 4>; > + link-frequencies = /bits/ 64 <336000000 207000000>; > + remote-endpoint = <&seninf_csi_port_0_in_2>; > + }; > + }; > + }; > + > + }; > + > +... > diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml > index 309b94c328c8..a0bbec0bfee2 100644 > --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml > +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml > @@ -502,6 +502,8 @@ patternProperties: > description: Fujitsu Ltd. > "^fxtec,.*": > description: FX Technology Ltd. > + "^GalaxyCore,.*": > + description: GalaxyCore Inc. > "^gardena,.*": > description: GARDENA GmbH > "^gateway,.*": > -- > 2.25.1 >
On Thu, Nov 23, 2023 at 05:31:35PM +0000, Conor Dooley wrote: > On Thu, Nov 23, 2023 at 07:51:03PM +0800, Zhi Mao wrote: > > Add YAML device tree binding for GC08A3 CMOS image sensor, > > and the relevant MAINTAINERS entries. > > > > Signed-off-by: Zhi Mao <zhi.mao@mediatek.com> > > Please test your bindings. > > > --- > > .../bindings/media/i2c/galaxycore,gc08a3.yaml | 128 ++++++++++++++++++ > > .../devicetree/bindings/vendor-prefixes.yaml | 2 + > > 2 files changed, 130 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > > > diff --git a/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > new file mode 100644 > > index 000000000000..089ea321da91 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > @@ -0,0 +1,128 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/media/i2c/galaxycore,gc08a3.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: GalaxyCore gc08a3 1/4" 8M Pixel MIPI CSI-2 sensor > > + > > +maintainers: > > + - Zhi Mao <zhi.mao@mediatek.com> > > + > > +description: |- > > The |- is not needed, you have no formatting to preserve. > > > + The gc08a3 is a raw image sensor with an MIPI CSI-2 image data > > + interface and CCI (I2C compatible) control bus. The output format > > + is raw Bayer. > > + > > +properties: > > + compatible: > > + const: GalaxyCore,gc08a3 > > Please remove the capitals. > > > + > > + reg: > > + maxItems: 1 > > + > > + clocks: > > + items: > > + - description: Reference to the mclk clock. > > Pointless, just use maxItems: 1. > > > + > > + assigned-clocks: > > + maxItems: 1 > > + > > + assigned-clock-rates: > > + maxItems: 1 > > + > > + enable-gpios: > > + description: Reference to the GPIO connected to the RESETB pin. Active low. > > + maxItems: 1 > > + If that's the RESETB pin, it should be reset-gpios. > > + vddio-supply: > > + description: Definition of the regulator used for the VDDIO power supply. > > + > > + vdda-supply: > > + description: Definition of the regulator used for the VDDA power supply. > > + > > + vddd-supply: > > + description: Definition of the regulator used for the VDDD power supply. > > These descriptions can all be replaced with "foo-supply: true" IMO. > > > + port: > > + $ref: /schemas/graph.yaml#/$defs/port-base > > + unevaluatedProperties: false > > + > > + properties: > > + endpoint: > > + $ref: /schemas/media/video-interfaces.yaml# > > + unevaluatedProperties: false > > + > > + properties: > > + data-lanes: > > + oneOf: > > + - items: > > + - const: 1 > > + - const: 2 > > + - const: 3 > > + - const: 4 > > + - items: > > + - const: 1 > > + - const: 2 > > + > > + link-frequencies: true > > + > > + required: > > + - data-lanes > > + - link-frequencies > > + > > +required: > > + - compatible > > + - reg > > + - clocks > > > + - assigned-clocks > > + - assigned-clock-rates > > Why are these required? > > > + - vddio-supply > > + - vdda-supply > > + - vddd-supply > > + - port > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + #include <dt-bindings/gpio/gpio.h> > > + > > + i2c { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + sensor0@2 { > > + status = "okay"; > > + compatible = "GalaxyCore,gc08a3"; > > + reg = <0x31>; > > + > > + clocks = <&topckgen CLK_TOP_CAMTG>, > > + <&topckgen CLK_TOP_UNIVPLL_192M_D8>; > > + clock-names = "xvclk", "freq_mux"; > > + clock-frequency = <24000000>; > > + > > + assigned-clocks = <&topckgen CLK_TOP_CAMTG>, > > + <&topckgen CLK_TOP_UNIVPLL_192M_D8>; > > + assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_192M_D8>; > > + assigned-clock-rates = <0>, <24000000>; > > + > > + enable-gpios = <&pio 19 GPIO_ACTIVE_HIGH>; > > + > > + pinctrl-names = "default"; > > + pinctrl-0 = <&camera_pins_cam0>; > > + > > + avdd-supply = <&mt6359_vfe28_ldo_reg>; > > + > > + port { > > + sensor0_out_2: endpoint { > > + data-lanes = <1 2 3 4>; > > + link-frequencies = /bits/ 64 <336000000 207000000>; > > + remote-endpoint = <&seninf_csi_port_0_in_2>; > > + }; > > + }; > > + }; > > + > > + }; > > + > > +... > > diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml > > index 309b94c328c8..a0bbec0bfee2 100644 > > --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml > > +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml > > @@ -502,6 +502,8 @@ patternProperties: > > description: Fujitsu Ltd. > > "^fxtec,.*": > > description: FX Technology Ltd. > > + "^GalaxyCore,.*": > > + description: GalaxyCore Inc. > > "^gardena,.*": > > description: GARDENA GmbH > > "^gateway,.*":
On Thu, 2023-12-07 at 12:25 +0200, Laurent Pinchart wrote: > > External email : Please do not click links or open attachments until > you have verified the sender or the content. > On Thu, Nov 23, 2023 at 05:31:35PM +0000, Conor Dooley wrote: > > On Thu, Nov 23, 2023 at 07:51:03PM +0800, Zhi Mao wrote: > > > Add YAML device tree binding for GC08A3 CMOS image sensor, > > > and the relevant MAINTAINERS entries. > > > > > > Signed-off-by: Zhi Mao <zhi.mao@mediatek.com> > > > > Please test your bindings. > > > > > --- > > > .../bindings/media/i2c/galaxycore,gc08a3.yaml | 128 > ++++++++++++++++++ > > > .../devicetree/bindings/vendor-prefixes.yaml | 2 + > > > 2 files changed, 130 insertions(+) > > > create mode 100644 > Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > > > > > diff --git > a/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > > new file mode 100644 > > > index 000000000000..089ea321da91 > > > --- /dev/null > > > +++ > b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > > @@ -0,0 +1,128 @@ > > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > > +%YAML 1.2 > > > +--- > > > +$id: > http://devicetree.org/schemas/media/i2c/galaxycore,gc08a3.yaml# > > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > > + > > > +title: GalaxyCore gc08a3 1/4" 8M Pixel MIPI CSI-2 sensor > > > + > > > +maintainers: > > > + - Zhi Mao <zhi.mao@mediatek.com> > > > + > > > +description: |- > > > > The |- is not needed, you have no formatting to preserve. > > > > > + The gc08a3 is a raw image sensor with an MIPI CSI-2 image data > > > + interface and CCI (I2C compatible) control bus. The output > format > > > + is raw Bayer. > > > + > > > +properties: > > > + compatible: > > > + const: GalaxyCore,gc08a3 > > > > Please remove the capitals. > > > > > + > > > + reg: > > > + maxItems: 1 > > > + > > > + clocks: > > > + items: > > > + - description: Reference to the mclk clock. > > > > Pointless, just use maxItems: 1. > > > > > + > > > + assigned-clocks: > > > + maxItems: 1 > > > + > > > + assigned-clock-rates: > > > + maxItems: 1 > > > + > > > + enable-gpios: > > > + description: Reference to the GPIO connected to the RESETB > pin. Active low. > > > + maxItems: 1 > > > + > > If that's the RESETB pin, it should be reset-gpios. [mtk]: yes, it's reset-pin, fixed in patch:v3. and some other comments also fixed, please review patch:v3. https://lore.kernel.org/linux-media/20240109022715.30278-1-zhi.mao@mediatek.com/ > > > > + vddio-supply: > > > + description: Definition of the regulator used for the VDDIO > power supply. > > > + > > > + vdda-supply: > > > + description: Definition of the regulator used for the VDDA > power supply. > > > + > > > + vddd-supply: > > > + description: Definition of the regulator used for the VDDD > power supply. > > > > These descriptions can all be replaced with "foo-supply: true" IMO. > > > > > + port: > > > + $ref: /schemas/graph.yaml#/$defs/port-base > > > + unevaluatedProperties: false > > > + > > > + properties: > > > + endpoint: > > > + $ref: /schemas/media/video-interfaces.yaml# > > > + unevaluatedProperties: false > > > + > > > + properties: > > > + data-lanes: > > > + oneOf: > > > + - items: > > > + - const: 1 > > > + - const: 2 > > > + - const: 3 > > > + - const: 4 > > > + - items: > > > + - const: 1 > > > + - const: 2 > > > + > > > + link-frequencies: true > > > + > > > + required: > > > + - data-lanes > > > + - link-frequencies > > > + > > > +required: > > > + - compatible > > > + - reg > > > + - clocks > > > > > + - assigned-clocks > > > + - assigned-clock-rates > > > > Why are these required? > > > > > + - vddio-supply > > > + - vdda-supply > > > + - vddd-supply > > > + - port > > > + > > > +additionalProperties: false > > > + > > > +examples: > > > + - | > > > + #include <dt-bindings/gpio/gpio.h> > > > + > > > + i2c { > > > + #address-cells = <1>; > > > + #size-cells = <0>; > > > + > > > + sensor0@2 { > > > + status = "okay"; > > > + compatible = "GalaxyCore,gc08a3"; > > > + reg = <0x31>; > > > + > > > + clocks = <&topckgen CLK_TOP_CAMTG>, > > > + <&topckgen CLK_TOP_UNIVPLL_192M_D8>; > > > + clock-names = "xvclk", "freq_mux"; > > > + clock-frequency = <24000000>; > > > + > > > + assigned-clocks = <&topckgen CLK_TOP_CAMTG>, > > > + <&topckgen CLK_TOP_UNIVPLL_192M_D8>; > > > + assigned-clock-parents = <&topckgen > CLK_TOP_UNIVPLL_192M_D8>; > > > + assigned-clock-rates = <0>, <24000000>; > > > + > > > + enable-gpios = <&pio 19 GPIO_ACTIVE_HIGH>; > > > + > > > + pinctrl-names = "default"; > > > + pinctrl-0 = <&camera_pins_cam0>; > > > + > > > + avdd-supply = <&mt6359_vfe28_ldo_reg>; > > > + > > > + port { > > > + sensor0_out_2: endpoint { > > > + data-lanes = <1 2 3 4>; > > > + link-frequencies = /bits/ 64 <336000000 > 207000000>; > > > + remote-endpoint = <&seninf_csi_port_0_in_2>; > > > + }; > > > + }; > > > + }; > > > + > > > + }; > > > + > > > +... > > > diff --git a/Documentation/devicetree/bindings/vendor- > prefixes.yaml b/Documentation/devicetree/bindings/vendor- > prefixes.yaml > > > index 309b94c328c8..a0bbec0bfee2 100644 > > > --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml > > > +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml > > > @@ -502,6 +502,8 @@ patternProperties: > > > description: Fujitsu Ltd. > > > "^fxtec,.*": > > > description: FX Technology Ltd. > > > + "^GalaxyCore,.*": > > > + description: GalaxyCore Inc. > > > "^gardena,.*": > > > description: GARDENA GmbH > > > "^gateway,.*": > > -- > Regards, > > Laurent Pinchart
Hi Zhi, Your e-mail still came as HTML, with the same footer. Please fix this first, I'm afraid we can't communicate properly on mailing lists otherwise. On Tue, Jan 09, 2024 at 09:11:32AM +0000, Zhi Mao (毛智) wrote: > On Thu, 2023-12-07 at 12:25 +0200, Laurent Pinchart wrote: > > > > External email : Please do not click links or open attachments until > > you have verified the sender or the content. > > On Thu, Nov 23, 2023 at 05:31:35PM +0000, Conor Dooley wrote: > > > On Thu, Nov 23, 2023 at 07:51:03PM +0800, Zhi Mao wrote: > > > > Add YAML device tree binding for GC08A3 CMOS image sensor, > > > > and the relevant MAINTAINERS entries. > > > > > > > > Signed-off-by: Zhi Mao <zhi.mao@mediatek.com> > > > > > > Please test your bindings. > > > > > > > --- > > > > .../bindings/media/i2c/galaxycore,gc08a3.yaml | 128 > > ++++++++++++++++++ > > > > .../devicetree/bindings/vendor-prefixes.yaml | 2 + > > > > 2 files changed, 130 insertions(+) > > > > create mode 100644 > > Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > > > > > > > diff --git > > a/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > > > new file mode 100644 > > > > index 000000000000..089ea321da91 > > > > --- /dev/null > > > > +++ > > b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml > > > > @@ -0,0 +1,128 @@ > > > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > > > +%YAML 1.2 > > > > +--- > > > > +$id: > > http://devicetree.org/schemas/media/i2c/galaxycore,gc08a3.yaml# > > > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > > > + > > > > +title: GalaxyCore gc08a3 1/4" 8M Pixel MIPI CSI-2 sensor > > > > + > > > > +maintainers: > > > > + - Zhi Mao <zhi.mao@mediatek.com> > > > > + > > > > +description: |- > > > > > > The |- is not needed, you have no formatting to preserve. > > > > > > > + The gc08a3 is a raw image sensor with an MIPI CSI-2 image data > > > > + interface and CCI (I2C compatible) control bus. The output > > format > > > > + is raw Bayer. > > > > + > > > > +properties: > > > > + compatible: > > > > + const: GalaxyCore,gc08a3 > > > > > > Please remove the capitals. > > > > > > > + > > > > + reg: > > > > + maxItems: 1 > > > > + > > > > + clocks: > > > > + items: > > > > + - description: Reference to the mclk clock. > > > > > > Pointless, just use maxItems: 1. > > > > > > > + > > > > + assigned-clocks: > > > > + maxItems: 1 > > > > + > > > > + assigned-clock-rates: > > > > + maxItems: 1 > > > > + > > > > + enable-gpios: > > > > + description: Reference to the GPIO connected to the RESETB > > pin. Active low. > > > > + maxItems: 1 > > > > + > > > > If that's the RESETB pin, it should be reset-gpios. > [mtk]: yes, it's reset-pin, fixed in patch:v3. > and some other comments also fixed, please review patch:v3. > > https://lore.kernel.org/linux-media/20240109022715.30278-1-zhi.mao@mediatek.com/ > > > > > > + vddio-supply: > > > > + description: Definition of the regulator used for the VDDIO > > power supply. > > > > + > > > > + vdda-supply: > > > > + description: Definition of the regulator used for the VDDA > > power supply. > > > > + > > > > + vddd-supply: > > > > + description: Definition of the regulator used for the VDDD > > power supply. > > > > > > These descriptions can all be replaced with "foo-supply: true" IMO. > > > > > > > + port: > > > > + $ref: /schemas/graph.yaml#/$defs/port-base > > > > + unevaluatedProperties: false > > > > + > > > > + properties: > > > > + endpoint: > > > > + $ref: /schemas/media/video-interfaces.yaml# > > > > + unevaluatedProperties: false > > > > + > > > > + properties: > > > > + data-lanes: > > > > + oneOf: > > > > + - items: > > > > + - const: 1 > > > > + - const: 2 > > > > + - const: 3 > > > > + - const: 4 > > > > + - items: > > > > + - const: 1 > > > > + - const: 2 > > > > + > > > > + link-frequencies: true > > > > + > > > > + required: > > > > + - data-lanes > > > > + - link-frequencies > > > > + > > > > +required: > > > > + - compatible > > > > + - reg > > > > + - clocks > > > > > > > + - assigned-clocks > > > > + - assigned-clock-rates > > > > > > Why are these required? > > > > > > > + - vddio-supply > > > > + - vdda-supply > > > > + - vddd-supply > > > > + - port > > > > + > > > > +additionalProperties: false > > > > + > > > > +examples: > > > > + - | > > > > + #include <dt-bindings/gpio/gpio.h> > > > > + > > > > + i2c { > > > > + #address-cells = <1>; > > > > + #size-cells = <0>; > > > > + > > > > + sensor0@2 { > > > > + status = "okay"; > > > > + compatible = "GalaxyCore,gc08a3"; > > > > + reg = <0x31>; > > > > + > > > > + clocks = <&topckgen CLK_TOP_CAMTG>, > > > > + <&topckgen CLK_TOP_UNIVPLL_192M_D8>; > > > > + clock-names = "xvclk", "freq_mux"; > > > > + clock-frequency = <24000000>; > > > > + > > > > + assigned-clocks = <&topckgen CLK_TOP_CAMTG>, > > > > + <&topckgen CLK_TOP_UNIVPLL_192M_D8>; > > > > + assigned-clock-parents = <&topckgen > > CLK_TOP_UNIVPLL_192M_D8>; > > > > + assigned-clock-rates = <0>, <24000000>; > > > > + > > > > + enable-gpios = <&pio 19 GPIO_ACTIVE_HIGH>; > > > > + > > > > + pinctrl-names = "default"; > > > > + pinctrl-0 = <&camera_pins_cam0>; > > > > + > > > > + avdd-supply = <&mt6359_vfe28_ldo_reg>; > > > > + > > > > + port { > > > > + sensor0_out_2: endpoint { > > > > + data-lanes = <1 2 3 4>; > > > > + link-frequencies = /bits/ 64 <336000000 > > 207000000>; > > > > + remote-endpoint = <&seninf_csi_port_0_in_2>; > > > > + }; > > > > + }; > > > > + }; > > > > + > > > > + }; > > > > + > > > > +... > > > > diff --git a/Documentation/devicetree/bindings/vendor- > > prefixes.yaml b/Documentation/devicetree/bindings/vendor- > > prefixes.yaml > > > > index 309b94c328c8..a0bbec0bfee2 100644 > > > > --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml > > > > +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml > > > > @@ -502,6 +502,8 @@ patternProperties: > > > > description: Fujitsu Ltd. > > > > "^fxtec,.*": > > > > description: FX Technology Ltd. > > > > + "^GalaxyCore,.*": > > > > + description: GalaxyCore Inc. > > > > "^gardena,.*": > > > > description: GARDENA GmbH > > > > "^gateway,.*": > > > > -- > > Regards, > > > > Laurent Pinchart > > > ************* MEDIATEK Confidentiality Notice ******************** > The information contained in this e-mail message (including any > attachments) may be confidential, proprietary, privileged, or otherwise > exempt from disclosure under applicable laws. It is intended to be > conveyed only to the designated recipient(s). Any use, dissemination, > distribution, printing, retaining or copying of this e-mail (including its > attachments) by unintended recipient(s) is strictly prohibited and may > be unlawful. If you are not an intended recipient of this e-mail, or believe > that you have received this e-mail in error, please notify the sender > immediately (by replying to this e-mail), delete any and all copies of > this e-mail (including any attachments) from your system, and do not > disclose the content of this e-mail to any other person. Thank you! >
diff --git a/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml new file mode 100644 index 000000000000..089ea321da91 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml @@ -0,0 +1,128 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/galaxycore,gc08a3.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: GalaxyCore gc08a3 1/4" 8M Pixel MIPI CSI-2 sensor + +maintainers: + - Zhi Mao <zhi.mao@mediatek.com> + +description: |- + The gc08a3 is a raw image sensor with an MIPI CSI-2 image data + interface and CCI (I2C compatible) control bus. The output format + is raw Bayer. + +properties: + compatible: + const: GalaxyCore,gc08a3 + + reg: + maxItems: 1 + + clocks: + items: + - description: Reference to the mclk clock. + + assigned-clocks: + maxItems: 1 + + assigned-clock-rates: + maxItems: 1 + + enable-gpios: + description: Reference to the GPIO connected to the RESETB pin. Active low. + maxItems: 1 + + vddio-supply: + description: Definition of the regulator used for the VDDIO power supply. + + vdda-supply: + description: Definition of the regulator used for the VDDA power supply. + + vddd-supply: + description: Definition of the regulator used for the VDDD power supply. + + port: + $ref: /schemas/graph.yaml#/$defs/port-base + unevaluatedProperties: false + + properties: + endpoint: + $ref: /schemas/media/video-interfaces.yaml# + unevaluatedProperties: false + + properties: + data-lanes: + oneOf: + - items: + - const: 1 + - const: 2 + - const: 3 + - const: 4 + - items: + - const: 1 + - const: 2 + + link-frequencies: true + + required: + - data-lanes + - link-frequencies + +required: + - compatible + - reg + - clocks + - assigned-clocks + - assigned-clock-rates + - vddio-supply + - vdda-supply + - vddd-supply + - port + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + sensor0@2 { + status = "okay"; + compatible = "GalaxyCore,gc08a3"; + reg = <0x31>; + + clocks = <&topckgen CLK_TOP_CAMTG>, + <&topckgen CLK_TOP_UNIVPLL_192M_D8>; + clock-names = "xvclk", "freq_mux"; + clock-frequency = <24000000>; + + assigned-clocks = <&topckgen CLK_TOP_CAMTG>, + <&topckgen CLK_TOP_UNIVPLL_192M_D8>; + assigned-clock-parents = <&topckgen CLK_TOP_UNIVPLL_192M_D8>; + assigned-clock-rates = <0>, <24000000>; + + enable-gpios = <&pio 19 GPIO_ACTIVE_HIGH>; + + pinctrl-names = "default"; + pinctrl-0 = <&camera_pins_cam0>; + + avdd-supply = <&mt6359_vfe28_ldo_reg>; + + port { + sensor0_out_2: endpoint { + data-lanes = <1 2 3 4>; + link-frequencies = /bits/ 64 <336000000 207000000>; + remote-endpoint = <&seninf_csi_port_0_in_2>; + }; + }; + }; + + }; + +... diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml index 309b94c328c8..a0bbec0bfee2 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml @@ -502,6 +502,8 @@ patternProperties: description: Fujitsu Ltd. "^fxtec,.*": description: FX Technology Ltd. + "^GalaxyCore,.*": + description: GalaxyCore Inc. "^gardena,.*": description: GARDENA GmbH "^gateway,.*":