mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Liu Ying <victor.liu@nxp.com>
To: Maxime Ripard <mripard@kernel.org>
Cc: Rob Herring <robh@kernel.org>,
	Alexander Stein <alexander.stein@ew.tq-group.com>,
	dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, krzk+dt@kernel.org,
	conor+dt@kernel.org, andrzej.hajda@intel.com,
	neil.armstrong@linaro.org, rfoss@kernel.org,
	Laurent.pinchart@ideasonboard.com, jonas@kwiboo.se,
	jernej.skrabec@gmail.com, maarten.lankhorst@linux.intel.com,
	tzimmermann@suse.de, airlied@gmail.com, simona@ffwll.ch
Subject: Re: [PATCH 3/5] dt-bindings: display: simple-bridge: Document DPI color encoder
Date: Fri, 7 Mar 2025 11:10:00 +0800	[thread overview]
Message-ID: <0e82c4d6-8b93-4dd0-ae34-155e537ab344@nxp.com> (raw)
In-Reply-To: <20250306-kangaroo-of-pastoral-typhoon-8aefb2@houat>

On 03/06/2025, Maxime Ripard wrote:
> On Thu, Mar 06, 2025 at 03:02:41PM +0800, Liu Ying wrote:
>> On 03/06/2025, Rob Herring wrote:
>>> On Wed, Mar 05, 2025 at 10:35:26AM +0100, Alexander Stein wrote:
>>>> Hi,
>>>>
>>>> Am Dienstag, 4. März 2025, 16:23:20 CET schrieb Rob Herring:
>>>>> On Tue, Mar 04, 2025 at 06:15:28PM +0800, Liu Ying wrote:
>>>>>> A DPI color encoder, as a simple display bridge, converts input DPI color
>>>>>> coding to output DPI color coding, like Adafruit Kippah DPI hat[1] which
>>>>>> converts input 18-bit pixel data to 24-bit pixel data(with 2 low padding
>>>>>> bits in every color component though). Document the DPI color encoder.
>>>>>
>>>>> Why do we need a node for this? Isn't this just wired how it is wired 
>>>>> and there's nothing for s/w to see or do? I suppose if you are trying to 
>>>>> resolve the mode with 24-bit on one end and 18-bit on the other end, you 
>>>>> need to allow that and not require an exact match. You still might need 
>>>>> to figure out which pins the 18-bit data comes out on, but you have that 
>>>>> problem with an 18-bit panel too. IOW, how is this any different if you 
>>>>> have an 18-bit panel versus 24-bit panel?
>>>>
>>>> Especially panel-simple.c has a fixed configuration for each display, such as:
>>>>> .bus_format = MEDIA_BUS_FMT_RGB666_1X18
>>>>
>>>> How would you allow or even know it should be addressed as
>>>> MEDIA_BUS_FMT_RGB888_1X24 instead? I see different ways:
>>>> 1. Create a new display setting/compatible
>>>> 2. Add an overwrite property to the displays
>>>> 3. Use a (transparent) bridge (this series)
>>>>
>>>> Number 1 is IMHO out of question. 
>>>
>>> Agreed.
>>>
>>>> I personally don't like number 2 as this
>>>> feels like adding quirks to displays, which they don't have.
>>>
>>> This is what I would do except apply it to the controller side. We know 
>>> the panel side already. This is a board variation, so a property makes 
>>> sense. I don't think you need any more than knowing what's on each end. 
>>
>> With option 2, no matter putting a property in source side or sink side,
>> impacted display drivers and DT bindings need to be changed, once a board
>> manipulates the DPI color coding.  This adds burdens and introduces new
>> versions of those DT bindings.  Is this what we want?
> 
> There's an option 4: make it a property of the OF graph endpoints. In
> essence, it's similar to properties that are already there like
> lane-mapping, and it wouldn't affect the panel drivers, or create an
> intermediate bridge.

I don't see lane-mapping anywhere. Do you mean data-mapping instead?
data-mapping is not defined in dtschema. Only lvds-codec.yaml defines
data-mapping in endpoint.

With option 4, I guess you meant display sink drivers, i.e., panel and
bridge drivers, wouldn't be affected. Then, display source drivers, i.e.,
display controller and bridge drivers, would be affected. This adds
burdens for driver developers/maintainers(though almost no effort from
DT's PoV), doesn't it?

Moreover, why it has to be the display sink drivers which are not affected?
DT writers might choose to set the format at the sink endpoint, e.g., setting
RGB666 at the sink endpoint of a RGB888 DPI panel or bridge.

> 
> Maxime

-- 
Regards,
Liu Ying

  parent reply	other threads:[~2025-03-07  3:08 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-04 10:15 [PATCH 0/5] drm/bridge: simple-bridge: Add DPI color encoder support Liu Ying
2025-03-04 10:15 ` [PATCH 1/5] dt-bindings: display: Document DPI color codings Liu Ying
2025-03-04 10:33   ` Maxime Ripard
2025-03-05  7:51     ` Krzysztof Kozlowski
2025-03-05  8:26       ` Maxime Ripard
2025-03-05 12:16         ` Krzysztof Kozlowski
2025-03-06  7:13           ` Liu Ying
2025-03-04 10:15 ` [PATCH 2/5] drm/of: Add drm_of_dpi_get_color_coding() Liu Ying
2025-03-04 10:15 ` [PATCH 3/5] dt-bindings: display: simple-bridge: Document DPI color encoder Liu Ying
2025-03-04 10:38   ` Maxime Ripard
2025-03-06  5:49     ` Liu Ying
2025-03-04 11:27   ` Rob Herring (Arm)
2025-03-04 15:23   ` Rob Herring
2025-03-05  9:35     ` Alexander Stein
2025-03-05 16:38       ` Rob Herring
2025-03-06  7:02         ` Liu Ying
2025-03-06 11:35           ` Maxime Ripard
2025-03-06 20:34             ` Rob Herring
2025-03-07  3:25               ` Liu Ying
2025-03-10  9:53                 ` Maxime Ripard
2025-03-11  2:29                   ` Liu Ying
2025-03-11  7:44                     ` Maxime Ripard
2025-03-07  3:10             ` Liu Ying [this message]
2025-03-10  9:44               ` Maxime Ripard
2025-03-11  2:38                 ` Liu Ying
2025-03-11  7:52                   ` Maxime Ripard
2025-03-04 10:15 ` [PATCH 4/5] drm/bridge: simple-bridge: Add DPI color encoder support Liu Ying
2025-03-04 10:40   ` Maxime Ripard
2025-03-06  5:57     ` Liu Ying
2025-03-04 10:15 ` [PATCH 5/5] drm/bridge: simple-bridge: Add next panel support Liu Ying
2025-03-04 10:41   ` Maxime Ripard
2025-03-06  6:17     ` Liu Ying
2025-03-04 15:00 ` [PATCH 0/5] drm/bridge: simple-bridge: Add DPI color encoder support Alexander Stein
2026-01-12  9:31 ` Francesco Dolcini
2026-01-12  9:44   ` 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=0e82c4d6-8b93-4dd0-ae34-155e537ab344@nxp.com \
    --to=victor.liu@nxp.com \
    --cc=Laurent.pinchart@ideasonboard.com \
    --cc=airlied@gmail.com \
    --cc=alexander.stein@ew.tq-group.com \
    --cc=andrzej.hajda@intel.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=jernej.skrabec@gmail.com \
    --cc=jonas@kwiboo.se \
    --cc=krzk+dt@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=mripard@kernel.org \
    --cc=neil.armstrong@linaro.org \
    --cc=rfoss@kernel.org \
    --cc=robh@kernel.org \
    --cc=simona@ffwll.ch \
    --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

all inboxes | Powered by JetHome®