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@xxxxxxxxxxxx> > > 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@xxxxxxxxxxxx> > > + > > +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,.*": -- Regards, Laurent Pinchart