Message ID | 6ad44a04366e65d5baec08dd966f5c81995d626d.1696608809.git.mehdi.djait@bootlin.com |
---|---|
State | New |
Headers | show |
Series | media: i2c: Introduce driver for the TW9900 video decoder | expand |
Hi Mehdi, Thank you for the patch. On Fri, Oct 06, 2023 at 06:25:29PM +0200, Mehdi Djait wrote: > The Techwell TW9900 is a video decoder supporting multiple input > standards, such as PAL and NTSC, and outputs a BT.656 video > signal. > > It's designed to be low-power, posesses some features such as a > programmable comb-filter, and automatic input standard detection > > Signed-off-by: Mehdi Djait <mehdi.djait@bootlin.com> > --- > V5->V6: > - This commit had a "Reviewed-by: Rob Herring <robh@kernel.org>" Tag but > decided not to collect it because the last Iteration was more than 2 > years ago > - removed SECAM from the mentioned standards > - changed maintainer > > V4->V5: > - renamed the file to match the compatible string, and referenced > the graph.yaml schema > > V3->V4: > - add the missing reset-gpios node to the binding > > V2->V3: > - fix the example not compiling due to a typo in the reset-gpios > node. > > .../bindings/media/i2c/techwell,tw9900.yaml | 61 +++++++++++++++++++ > 1 file changed, 61 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml > > diff --git a/Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml b/Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml > new file mode 100644 > index 000000000000..24bbbff5cc01 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml > @@ -0,0 +1,61 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/media/i2c/techwell,tw9900.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Techwell TW9900 NTSC/PAL video decoder > + > +maintainers: > + - Mehdi Djait <mehdi.djait@bootlin.com> > + > +description: > + The tw9900 is a multi-standard video decoder, supporting NTSC, PAL standards > + with auto-detection features. > + > +properties: > + compatible: > + const: techwell,tw9900 > + > + reg: > + maxItems: 1 > + > + vdd-supply: > + description: VDD power supply > + > + reset-gpios: > + description: GPIO descriptor for the RESET input pin > + maxItems: 1 How about the power down GPIO ? The chip requires a clock, which is provided by a crystal oscillator in the block diagram I found. Does it also support an external clock ? If so the bindings should support it, although this could be added later. > + > + port: > + $ref: /schemas/graph.yaml#/properties/port > + description: > + Video port for the decoder output. How about input ports, connected to nodes that model the connector(s) ? > + > +additionalProperties: false > + > +required: > + - compatible > + - reg > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + tw9900: tw9900@44 { > + compatible = "techwell,tw9900"; > + reg = <0x44>; > + > + vdd-supply = <&tw9900_supply>; > + reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>; > + > + port { > + tw9900_out: endpoint { > + remote-endpoint = <&vip_in>; > + }; > + }; > + }; > + };
Hi laurent, Thank you for the review. On Mon, Oct 09, 2023 at 05:18:38AM +0300, Laurent Pinchart wrote: > Hi Mehdi, > > Thank you for the patch. > > On Fri, Oct 06, 2023 at 06:25:29PM +0200, Mehdi Djait wrote: > > The Techwell TW9900 is a video decoder supporting multiple input > > standards, such as PAL and NTSC, and outputs a BT.656 video > > signal. > > > > It's designed to be low-power, posesses some features such as a > > programmable comb-filter, and automatic input standard detection > > > > Signed-off-by: Mehdi Djait <mehdi.djait@bootlin.com> > > --- > > V5->V6: > > - This commit had a "Reviewed-by: Rob Herring <robh@kernel.org>" Tag but > > decided not to collect it because the last Iteration was more than 2 > > years ago > > - removed SECAM from the mentioned standards > > - changed maintainer > > > > V4->V5: > > - renamed the file to match the compatible string, and referenced > > the graph.yaml schema > > > > V3->V4: > > - add the missing reset-gpios node to the binding > > > > V2->V3: > > - fix the example not compiling due to a typo in the reset-gpios > > node. > > > > .../bindings/media/i2c/techwell,tw9900.yaml | 61 +++++++++++++++++++ > > 1 file changed, 61 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml > > > > diff --git a/Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml b/Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml > > new file mode 100644 > > index 000000000000..24bbbff5cc01 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml > > @@ -0,0 +1,61 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/media/i2c/techwell,tw9900.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Techwell TW9900 NTSC/PAL video decoder > > + > > +maintainers: > > + - Mehdi Djait <mehdi.djait@bootlin.com> > > + > > +description: > > + The tw9900 is a multi-standard video decoder, supporting NTSC, PAL standards > > + with auto-detection features. > > + > > +properties: > > + compatible: > > + const: techwell,tw9900 > > + > > + reg: > > + maxItems: 1 > > + > > + vdd-supply: > > + description: VDD power supply > > + > > + reset-gpios: > > + description: GPIO descriptor for the RESET input pin > > + maxItems: 1 > > How about the power down GPIO ? I will add the power-down GPIO. > > The chip requires a clock, which is provided by a crystal oscillator in > the block diagram I found. Does it also support an external clock ? If > so the bindings should support it, although this could be added later. > > > + > > + port: > > + $ref: /schemas/graph.yaml#/properties/port > > + description: > > + Video port for the decoder output. > > How about input ports, connected to nodes that model the connector(s) ? > Could this be added later. Tbh I am not familiar with this. But if it must be added now: Would this be a correct binding: ports: $ref: /schemas/graph.yaml#/properties/ports patternProperties: "^port@[0-1]$": $ref: /schemas/graph.yaml#/properties/port description: Input port nodes for analog inputs. properties: port@2: $ref: /schemas/graph.yaml#/properties/port description: Video port for the decoder output. and in the example: ... ports { #address-cells = <1>; #size-cells = <0>; port@2 { reg = <2>; endpoint { remote-endpoint = <&vip_in>; }; }; }; ... -- Kind Regards Mehdi Djait
diff --git a/Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml b/Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml new file mode 100644 index 000000000000..24bbbff5cc01 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml @@ -0,0 +1,61 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/techwell,tw9900.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Techwell TW9900 NTSC/PAL video decoder + +maintainers: + - Mehdi Djait <mehdi.djait@bootlin.com> + +description: + The tw9900 is a multi-standard video decoder, supporting NTSC, PAL standards + with auto-detection features. + +properties: + compatible: + const: techwell,tw9900 + + reg: + maxItems: 1 + + vdd-supply: + description: VDD power supply + + reset-gpios: + description: GPIO descriptor for the RESET input pin + maxItems: 1 + + port: + $ref: /schemas/graph.yaml#/properties/port + description: + Video port for the decoder output. + +additionalProperties: false + +required: + - compatible + - reg + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + + tw9900: tw9900@44 { + compatible = "techwell,tw9900"; + reg = <0x44>; + + vdd-supply = <&tw9900_supply>; + reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>; + + port { + tw9900_out: endpoint { + remote-endpoint = <&vip_in>; + }; + }; + }; + };
The Techwell TW9900 is a video decoder supporting multiple input standards, such as PAL and NTSC, and outputs a BT.656 video signal. It's designed to be low-power, posesses some features such as a programmable comb-filter, and automatic input standard detection Signed-off-by: Mehdi Djait <mehdi.djait@bootlin.com> --- V5->V6: - This commit had a "Reviewed-by: Rob Herring <robh@kernel.org>" Tag but decided not to collect it because the last Iteration was more than 2 years ago - removed SECAM from the mentioned standards - changed maintainer V4->V5: - renamed the file to match the compatible string, and referenced the graph.yaml schema V3->V4: - add the missing reset-gpios node to the binding V2->V3: - fix the example not compiling due to a typo in the reset-gpios node. .../bindings/media/i2c/techwell,tw9900.yaml | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/i2c/techwell,tw9900.yaml