On Fri, Oct 02, 2020 at 07:21:02PM -0700, Anitha Chrisanthus wrote: > This patch adds bindings for Intel KeemBay Display > > Signed-off-by: Anitha Chrisanthus <anitha.chrisanthus@xxxxxxxxx> > --- > .../bindings/display/intel,kmb_display.yaml | 106 +++++++++++++++++++++ > 1 file changed, 106 insertions(+) > create mode 100644 Documentation/devicetree/bindings/display/intel,kmb_display.yaml > > diff --git a/Documentation/devicetree/bindings/display/intel,kmb_display.yaml b/Documentation/devicetree/bindings/display/intel,kmb_display.yaml > new file mode 100644 > index 0000000..65835cb > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/intel,kmb_display.yaml > @@ -0,0 +1,106 @@ > +# SPDX-License-Identifier: GPL-2.0-only check checkpatch.pl > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/intel,kmb_display.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Devicetree bindings for Intel Keem Bay display controller > + > +maintainers: > + - Anitha Chrisanthus <anitha.chrisanthus@xxxxxxxxx> > + - Edmond J Dea <edmund.j.dea@xxxxxxxxx> > + > +properties: > + compatible: > + const: intel,kmb_display 'keembay' was used elsewhere. Please be consistent. Don't use '_' either. > + > + reg: > + maxItems: 3 Can drop, implied. > + items: > + - description: Lcd registers range > + - description: Mipi registers range > + - description: Msscam registers range Is this really 1 h/w block? Don't really seem like it given addresses aren't adjacent, separate clocks, and MIPI blocks are often licensed IP. > + > + reg-names: > + items: > + - const: lcd_regs > + - const: mipi_regs > + - const: msscam_regs '_regs' is redundant. > + > + clocks: > + items: > + - description: LCD controller clock > + - description: Mipi DSI clock > + - description: Mipi DSI econfig clock > + - description: Mipi DSI config clock > + - description: System clock or pll0 clock > + > + clock-names: > + items: > + - const: clk_lcd > + - const: clk_mipi > + - const: clk_mipi_ecfg > + - const: clk_mipi_cfg > + - const: clk_pll0 > + > + interrupts: > + maxItems: 1 > + > + interrupt-names: > + items: > + - const: irq_lcd You don't really need *-names when there's only 1 entry. > + > + encoder-slave: > + description: bridge node entry for mipi to hdmi converter No, this is what 'port' is for. > + > + port: > + type: object > + description: > > + Port node with one endpoint connected to mipi to hdmi converter node. > + > +required: > + - compatible > + - reg > + - reg-names > + - clocks > + - clock-names > + - interrupts > + - interrupt-names > + - encoder-slave > + - port > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/interrupt-controller/irq.h> > + #define GIC_SPI There's a header for this. > + #define MOVISOC_KMB_MSS_AUX_LCD > + #define MOVISOC_KMB_MSS_AUX_MIPI_TX0 > + #define MOVISOC_KMB_MSS_AUX_MIPI_ECFG > + #define MOVISOC_KMB_MSS_AUX_MIPI_CFG > + #define MOVISOC_KMB_A53_PLL_0_OUT_0 > + display: display@20900000 { Drop unused labels. > + compatible = "intel,kmb_display"; > + reg = <0x20930000 0x3000>, > + <0x20900000 0x4000>, > + <0x20910000 0x30>; > + reg-names = "lcd_regs", "mipi_regs", "msscam_regs"; > + interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; > + interrupt-names = "irq_lcd"; > + clocks = <&scmi_clk MOVISOC_KMB_MSS_AUX_LCD>, > + <&scmi_clk MOVISOC_KMB_MSS_AUX_MIPI_TX0>, > + <&scmi_clk MOVISOC_KMB_MSS_AUX_MIPI_ECFG>, > + <&scmi_clk MOVISOC_KMB_MSS_AUX_MIPI_CFG>, > + <&scmi_clk MOVISOC_KMB_A53_PLL_0_OUT_0>; > + clock-names = "clk_lcd", "clk_mipi", "clk_mipi_ecfg", > + "clk_mipi_cfg", "clk_pll0"; > + > + encoder-slave = <&adv7535>; > + > + port { > + dsi_output: endpoint { > + remote-endpoint = <&adv7535_input>; > + }; > + }; > + }; > -- > 2.7.4 >