On Mon, Oct 14, 2024 at 5:01 AM Liu Ying <victor.liu@xxxxxxx> wrote: > > On 10/14/2024, Dmitry Baryshkov wrote: > > [...] > > >>>>> My suggestion would be to add a single root-level property which > >>>>> specifies which port provides even pixel data. > >>>> > >>>> That won't work. The LVDS source side expects the ports of > >>>> the sink side specify dual-lvds-{odd,even}-pixels properties. > >>> > >>> I didn't notice that these properties are already defined. > >>> > >>> As these properties are common between several schema files, please > >>> extract them to a common schema file (like lvds.yaml). > >> > >> I'm not sure how to do that. Is it obvious? > >> Please shed some light. > >> > >> Only two panel schema files are defining even/odd pixels now - > >> advantech,idk-2121wr.yaml and panel-simple-lvds-dual-ports.yaml. > >> Maybe, extract them later when more schema files(especially for > >> bridges) try to define the same? I'd like to keep a low profile > >> for now. > > > > I'd say, please extract those now. Adding third is more than enough and > > should be avoided. Extracting is pretty simple. One patch to move the > > definition and descriptions from panel-simple-lvds-dual-ports to a > > common location (e.g. lvds-dual-ports.yaml). Leave the required > > constrains in place. Second patch is to add oneOf constraints to the > > ports. > > oneOf just sits below ports so that single-port and dual-port > are documented separately? That won't pass dt_binding_check > as the v1 binding has proved that warnings will be generated. > > > port@0 might get the same oneOf + the > > dual-lvds-{odd,even}-pixels:false case, allowing a single-port > > definition. > > I don't catch this. > Below snippet is a draft lvds-dual-port.yaml. Please make panel-simple-lvds-dual-ports.yaml use this. > How can it be referenced in ite,it6263.yaml? > > ---8<--- > allOf: > - $ref: lvds.yaml# > > properties: > ports: > $ref: /schemas/graph.yaml#/properties/ports > > properties: > port@0: > $ref: /schemas/graph.yaml#/$defs/port-base > unevaluatedProperties: false > description: the first LVDS input link > > properties: > dual-lvds-odd-pixels: > type: boolean > description: the first sink port for odd pixels > > dual-lvds-even-pixels: > type: boolean > description: the first sink port for even pixels > > oneOf: > - required: [dual-lvds-even-pixels] > - required: [dual-lvds-odd-pixels] > > port@1: > $ref: /schemas/graph.yaml#/$defs/port-base > unevaluatedProperties: false > description: the second LVDS input link > > properties: > dual-lvds-even-pixels: > type: boolean > description: the second sink port for even pixels > > dual-lvds-odd-pixels: > type: boolean > description: the second sink port for odd pixels > > oneOf: > - required: [dual-lvds-even-pixels] > - required: [dual-lvds-odd-pixels] > > required: > - port@0 > - port@1 > > unevaluatedProperties: false > ---8<--- > > -- > Regards, > Liu Ying >