[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <3659815.iIbC2pHGDl@jernej-laptop>
Date: Sun, 16 Nov 2025 13:10:35 +0100
From: Jernej Škrabec <jernej.skrabec@...il.com>
To: Krzysztof Kozlowski <krzk@...nel.org>
Cc: wens@...e.org, samuel@...lland.org, mripard@...nel.org,
maarten.lankhorst@...ux.intel.com, tzimmermann@...e.de, airlied@...il.com,
simona@...ll.ch, robh@...nel.org, krzk+dt@...nel.org, conor+dt@...nel.org,
mturquette@...libre.com, sboyd@...nel.org, dri-devel@...ts.freedesktop.org,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-sunxi@...ts.linux.dev, linux-kernel@...r.kernel.org,
linux-clk@...r.kernel.org
Subject: Re: [PATCH 4/7] dt-bindings: display: allwinner: Add DE33 planes
Dne nedelja, 16. november 2025 ob 12:49:45 Srednjeevropski standardni čas je Krzysztof Kozlowski napisal(a):
> On 16/11/2025 12:44, Jernej Škrabec wrote:
> > Hi!
> >
> > Dne nedelja, 16. november 2025 ob 12:29:27 Srednjeevropski standardni čas je Krzysztof Kozlowski napisal(a):
> >> On Sat, Nov 15, 2025 at 03:13:44PM +0100, Jernej Skrabec wrote:
> >>> Allwinner Display Engine 3.3 contains planes, which are shared resources
> >>> between all mixers present in SoC. They can be assigned to specific
> >>> mixer by using registers which reside in display clocks MMIO.
> >>>
> >>> Add a binding for them.
> >>>
> >>> Signed-off-by: Jernej Skrabec <jernej.skrabec@...il.com>
> >>> ---
> >>> .../allwinner,sun50i-h616-de33-planes.yaml | 44 +++++++++++++++++++
> >>> 1 file changed, 44 insertions(+)
> >>> create mode 100644 Documentation/devicetree/bindings/display/allwinner,sun50i-h616-de33-planes.yaml
> >>>
> >>> diff --git a/Documentation/devicetree/bindings/display/allwinner,sun50i-h616-de33-planes.yaml b/Documentation/devicetree/bindings/display/allwinner,sun50i-h616-de33-planes.yaml
> >>> new file mode 100644
> >>> index 000000000000..801e5068a6b5
> >>> --- /dev/null
> >>> +++ b/Documentation/devicetree/bindings/display/allwinner,sun50i-h616-de33-planes.yaml
> >>> @@ -0,0 +1,44 @@
> >>> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> >>> +%YAML 1.2
> >>> +---
> >>> +$id: http://devicetree.org/schemas/display/allwinner,sun50i-h616-de33-planes.yaml#
> >>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >>> +
> >>> +title: Allwinner H616 Display Engine 3.3 planes
> >>> +
> >>> +maintainers:
> >>> + - Jernej Skrabec <jernej.skrabec@...il.com>
> >>> +
> >>> +description: |
> >>
> >> Do not need '|' unless you need to preserve formatting.
> >>
> >>> + Display Engine 3.3 planes are independent of mixers, contrary to
> >>> + previous generations of Display Engine. Planes can be assigned to
> >>> + mixers independently and even dynamically during runtime.
> >>> +
> >>> +properties:
> >>> + compatible:
> >>> + enum:
> >>> + - allwinner,sun50i-h616-de33-planes
> >>> +
> >>> + reg:
> >>> + maxItems: 1
> >>> +
> >>> + allwinner,plane-mapping:
> >>> + $ref: /schemas/types.yaml#/definitions/phandle
> >>> + description: Phandle of Display Engine clock node
> >>
> >> You description is almost duplicating property name. You need to explain
> >> here how this device uses them.
> >
> > So I guess I can copy commit description here? It is needed to
> > access registers from different core, so it can assign (map)
> > planes between mixers at runtime.
>
>
> "to assign (map) planes between mixers." is enough.
>
> But it looks unfortunately like a spaghetti.
>
> Your mixer binding references via phandle this planes. These planes
> reference via phandle some other region to configure planes between mixers.
>
> Isn't this the job of this device?
It is a bit confusing, yes. There is no clean split in register space
for some functionality. Register space for this node on H616 SoC
represents 6 planes (each plane consist of framebuffer management, CSC
unit, scaler, etc.) but not actual registers which tell to which mixer
they are currently assigned.
Best regards,
Jernej
Powered by blists - more mailing lists