[PATCH v6] drm/panel: Add generic DSI display controller YAML bindings
Rob Herring
robh at kernel.org
Mon Dec 2 22:28:05 UTC 2019
On Thu, Nov 28, 2019 at 3:07 AM Linus Walleij <linus.walleij at linaro.org> wrote:
>
> This adds a starting point for processing and defining generic
> bindings used by DSI display controllers and panels attached to
> the virtual DSI ports.
>
> Cc: Stephan Gerhold <stephan at gerhold.net>
> Cc: devicetree at vger.kernel.org
> Suggested-by: Rob Herring <robh at kernel.org>
> Signed-off-by: Linus Walleij <linus.walleij at linaro.org>
> ---
> ChangeLog v5->v6:
> - Rename subject to pertain to DSI display controllers in general.
> - Change some of the wording in the DSI controller description text,
> making it clear that the binding pertains to the combination of a
> DSI controller with at least one panel attached.
> - Add a proper compiling example.
> ChangeLog v4->v5:
> - Drop the example.
> - I still have a vert annoying error message in the Sony
> panel bindings that uses this schema:
> sony,acx424akp.example.dt.yaml: panel at 0: $nodename:0: 'panel at 0' does not match '^dsi-controller(@.*)?$'
> As this is modeled very closely to
> Documentation/devicetree/bindings/net/mdio.yaml
> and that one doesn't emit this type of warning for its ethernet-phy at 0
> etc I am pretty much clueless and just can't see what the problem
> is.
> - If I can't figure this out the only viable next step is to drop the
> ambition to create yaml bindings simply because I'm unable to do
> it, and go back to traditional text bindings :(
> ChangeLog v3->v4:
> - Rename into display/dsi-controller.yaml
> - Require a virtual channel number for the DSI panel, as
> DSI have this 2-bit virtual address field.
> - Bring in some but not all properties from the existing MIPI
> DSI bindings. This schema can be used with simpler panels but
> not complex panels with multiple virtual channels for the
> moment. Let's handle it when we get there.
> - Add an example.
> ChangeLog v2->v3:
> - Make a more complete DSI panel binding including the controller
> and its address-cells and size-cells and a pattern for the panel
> nodes. The panel is one per DSI master, the reg property is
> compulsory but should always be 0 (as far as I can tell) as
> only one panel can be connected. The bus doesn't really have
> any addresses for the panel, the address/reg notation seems
> to be cargo-culted from the port graphs and is not necessary
> to parse some device trees, it is used to tell whether the
> node is a panel or not rather than any addressing.
> - I have no idea how many displays you can daisychain on a single
> DSI master, I just guess 15 will be enough. The MIPI-specs
> are memberwalled. Someone who knows can tell perhaps?
> ChangeLog v1->v2:
> - New patch after feedback.
> ---
> .../bindings/display/dsi-controller.yaml | 91 +++++++++++++++++++
> 1 file changed, 91 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/display/dsi-controller.yaml
I'll let you apply to drm-misc.
Reviewed-by: Rob Herring <robh at kernel.org>
More information about the dri-devel
mailing list