From: Liu Ying <victor.liu@nxp.com>
To: Rob Herring <robh@kernel.org>
Cc: Krzysztof Kozlowski <krzk@kernel.org>,
dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org,
imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, p.zabel@pengutronix.de,
airlied@gmail.com, daniel@ffwll.ch,
maarten.lankhorst@linux.intel.com, mripard@kernel.org,
tzimmermann@suse.de, krzk+dt@kernel.org, conor+dt@kernel.org,
shawnguo@kernel.org, s.hauer@pengutronix.de,
kernel@pengutronix.de, festevam@gmail.com, tglx@linutronix.de
Subject: Re: [PATCH 01/10] dt-bindings: display: imx: Add some i.MX8qxp Display Controller processing units
Date: Tue, 9 Jul 2024 15:36:04 +0800 [thread overview]
Message-ID: <0eacd62e-40ff-476d-9f6b-d0db2aca4108@nxp.com> (raw)
In-Reply-To: <20240708200431.GA3492466-robh@kernel.org>
On 07/09/2024, Rob Herring wrote:
> On Mon, Jul 08, 2024 at 02:30:37PM +0800, Liu Ying wrote:
>> On 07/07/2024, Krzysztof Kozlowski wrote:
>>> On 05/07/2024 11:09, Liu Ying wrote:
>>>> Freescale i.MX8qxp Display Controller is implemented as construction set of
>>>> building blocks with unified concept and standardized interfaces.
>>>>
>>>> Document some processing units to support two display outputs.
>>>
>>>
>>>> +maintainers:
>>>> + - Liu Ying <victor.liu@nxp.com>
>>>> +
>>>> +properties:
>>>> + compatible:
>>>> + const: fsl,imx8qxp-dc-tcon
>>>> +
>>>> + reg:
>>>> + maxItems: 1
>>>> +
>>>> + fsl,dc-tc-id:
>>>> + description: Timing Controller unit instance number
>>>
>>> No instance numbering. This applies to your entire patchset.
>>
>> Then, I'll call of_alias_get_id() from the drivers to get
>> instance number instead.
>
> Ideally, no.
>
>> As i.MX8qm SoC embeds two Display Controllers, the alias
>> stem would contain the Display Controller instance
>> number, like "dc0-tcon" and "dc1-tcon". Is this ok?
>
> The format of aliases is fooN, so no. Aliases should also be generic
> rather than vendor specific.
>
> If you need to describe the connection of components in the display
> pipeline, then use the graph binding.
I mentioned OF graph in the previous patch set discussion.
"
There are 50+ individual DPU internal units and 20+ unit types.
Do you really mean that each unit should be a separate device in
device tree and each unit type should have it's own compatible
string ?
Almost all units have input/output ports to connect with each other.
Some units have multiple input/output options.
Should we use OF graph ports to tell the connections ?
"
https://lists.infradead.org/pipermail/linux-arm-kernel/2023-August/861811.html
I hope we don't end up using the graph binding, as there are too
many input/output options between processing units in the pixel engine,
e.g.,
"
Selection of the source for the sec input of the layerblend0 module
000000b - Unit layerblend0 input port sec is disabled
010100b - Unit layerblend0 input port sec is connected to output of unit fetchwarp2
010110b - Unit layerblend0 input port sec is connected to output of unit fetchdecode0
011000b - Unit layerblend0 input port sec is connected to output of unit fetchdecode1
011010b - Unit layerblend0 input port sec is connected to output of unit fetchlayer0
011011b - Unit layerblend0 input port sec is connected to output of unit matrix4
011100b - Unit layerblend0 input port sec is connected to output of unit hscaler4
011101b - Unit layerblend0 input port sec is connected to output of unit vscaler4
011110b - Unit layerblend0 input port sec is connected to output of unit matrix5
011111b - Unit layerblend0 input port sec is connected to output of unit hscaler5
100000b - Unit layerblend0 input port sec is connected to output of unit vscaler5
Selection of the source for the prim input of the layerblend0 module
000000b - Unit layerblend0 input port prim is disabled
000000b - Unit layerblend0 input port prim is connected to output of unit constframe1
001010b - Unit layerblend0 input port prim is connected to output of unit blitblend9
001100b - Unit layerblend0 input port prim is connected to output of unit constframe0
001110b - Unit layerblend0 input port prim is connected to output of unit constframe4
010010b - Unit layerblend0 input port prim is connected to output of unit constframe5
011011b - Unit layerblend0 input port prim is connected to output of unit matrix4
011100b - Unit layerblend0 input port prim is connected to output of unit hscaler4
011101b - Unit layerblend0 input port prim is connected to output of unit vscaler4
011110b - Unit layerblend0 input port prim is connected to output of unit matrix5
011111b - Unit layerblend0 input port prim is connected to output of unit hscaler5
100000b - Unit layerblend0 input port prim is connected to output of unit vscaler5
"
Also, Matrix, GammarCor and Dither in the display engine can be bypassed.
Matrix can be put at optional position(1 or 2). Signature can be tapped
after FrameGen, GammaCor, Matrix or Dither.
FrameGen -> Matrix(1) -> GammaCor -> Maxtrix(2) -> Dither -> TCon
Aside from the alias approach, another idea is to specify the instance
number in compatible string, like "fsl,imx8qxp-dc-constframe5", no?
>
> Rob
--
Regards,
Liu Ying
next prev parent reply other threads:[~2024-07-09 7:35 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-05 9:09 [PATCH 00/10] Add Freescale i.MX8qxp Display Controller support Liu Ying
2024-07-05 9:09 ` [PATCH 01/10] dt-bindings: display: imx: Add some i.MX8qxp Display Controller processing units Liu Ying
2024-07-07 13:58 ` Krzysztof Kozlowski
2024-07-08 6:30 ` Liu Ying
2024-07-08 20:04 ` Rob Herring
2024-07-09 7:36 ` Liu Ying [this message]
2024-07-05 9:09 ` [PATCH 02/10] dt-bindings: display: imx: Add i.MX8qxp Display Controller display engine Liu Ying
2024-07-07 13:59 ` Krzysztof Kozlowski
2024-07-08 6:40 ` Liu Ying
2024-07-08 14:04 ` Krzysztof Kozlowski
2024-07-08 14:52 ` Maxime Ripard
2024-07-09 6:50 ` Krzysztof Kozlowski
2024-07-18 15:53 ` Maxime Ripard
2024-07-05 9:09 ` [PATCH 03/10] dt-bindings: display: imx: Add i.MX8qxp Display Controller pixel engine Liu Ying
2024-07-07 14:02 ` Krzysztof Kozlowski
2024-07-08 6:47 ` Liu Ying
2024-07-08 14:05 ` Krzysztof Kozlowski
2024-07-09 6:50 ` Liu Ying
2024-07-05 9:09 ` [PATCH 04/10] dt-bindings: interrupt-controller: Add i.MX8qxp Display Controller interrupt controller Liu Ying
2024-07-07 14:01 ` Krzysztof Kozlowski
2024-07-08 6:51 ` Liu Ying
2024-07-08 14:09 ` Krzysztof Kozlowski
2024-07-09 7:05 ` Liu Ying
2024-07-05 9:09 ` [PATCH 05/10] dt-bindings: display: imx: Add i.MX8qxp Display Controller Liu Ying
2024-07-07 14:03 ` Krzysztof Kozlowski
2024-07-08 7:01 ` Liu Ying
2024-07-05 9:09 ` [PATCH 06/10] drm/imx: Add i.MX8qxp Display Controller display engine Liu Ying
2024-07-05 9:09 ` [PATCH 07/10] drm/imx: Add i.MX8qxp Display Controller pixel engine Liu Ying
2024-07-05 9:09 ` [PATCH 08/10] drm/imx: Add i.MX8qxp Display Controller interrupt controller Liu Ying
2024-07-05 9:09 ` [PATCH 09/10] drm/imx: Add i.MX8qxp Display Controller KMS Liu Ying
2024-07-07 19:16 ` Markus Elfring
2024-07-08 6:21 ` Liu Ying
2024-07-08 7:09 ` [09/10] " Markus Elfring
2024-07-08 7:33 ` Krzysztof Kozlowski
2024-07-05 9:09 ` [PATCH 10/10] MAINTAINERS: Add maintainer for i.MX8qxp Display Controller Liu Ying
2024-07-05 19:02 ` Frank Li
2024-07-08 6:14 ` Liu Ying
2024-07-05 12:57 ` [PATCH 00/10] Add Freescale i.MX8qxp Display Controller support Francesco Dolcini
2024-07-08 7:03 ` Liu Ying
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=0eacd62e-40ff-476d-9f6b-d0db2aca4108@nxp.com \
--to=victor.liu@nxp.com \
--cc=airlied@gmail.com \
--cc=conor+dt@kernel.org \
--cc=daniel@ffwll.ch \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=festevam@gmail.com \
--cc=imx@lists.linux.dev \
--cc=kernel@pengutronix.de \
--cc=krzk+dt@kernel.org \
--cc=krzk@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=p.zabel@pengutronix.de \
--cc=robh@kernel.org \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
--cc=tglx@linutronix.de \
--cc=tzimmermann@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox