[<prev] [next>] [day] [month] [year] [list]
Message-ID: <Zn9tjooo9f-oe_3h@titan>
Date: Sat, 29 Jun 2024 12:12:30 +1000
From: John Watts <contact@...kia.org>
To: Jakob L <jakobl.gm.g@...il.com>
Cc: linux-sunxi@...ts.linux.dev, andre.przywara@....com,
"K. James" <kirby.nankivell@...il.com>,
Paul Kocialkowski <contact@...lk.fr>,
Maxime Ripard <mripard@...nel.org>, Chen-Yu Tsai <wens@...e.org>,
Jernej Skrabec <jernej.skrabec@...il.com>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Thomas Zimmermann <tzimmermann@...e.de>,
David Airlie <airlied@...il.com>, Daniel Vetter <daniel@...ll.ch>,
Samuel Holland <samuel@...lland.org>,
dri-devel@...ts.freedesktop.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: T113 TCON Top tinting troubleshooting
On Sat, Jun 29, 2024 at 01:49:53AM +0200, Jakob L wrote:
> Hi John,
>
> good find! This seems to fix it on my DSI implementation. Every of the
> recent boots resulted in a pink tint (usually it was green for me, or blue)
> Booted 10 times - no tint.
>
> So this patch is good, but probably has to be implemented as a quirk?
>
> Jakob
Hi Jakob,
I'm not sure if this needs to be a quirk: There's not really a reason to
set both DEs to the same output. My thinking right now is to error in
this situation.
However I think we have to somehow track which DEs have been set so we
can pretend they start unset. For example:
DE0: (Unset, LCD0) DE1: (Unset, TVE0)
Setting DE0 to LCD0 should work, then setting DE1 to LCD0 should fail.
Setting DE0 to LCD0 should work, then setting DE0 to TVE0 should work.
Setting DE0 to TVE0 should work, then setting DE1 to TVE0 should fail.
The mechanism here for setting a DE I think would go like this:
1. Check the opposite DE's value
2. If it is duplicate and set, error
3. If it is duplicate and unset, change the opposite DE's value
4. Set the DE
5. Mark it as set
Step three requires finding an unused DE value, this could be done by
inverting the bits of the new DE. Alternatively we could do what
Allwinner does and start with both DEs at different values and the move
instead the current DE value to the opposite DE to avoid conflicts.
'Set' here may make more sense as 'used'.
I'm good at mentally over-engineering things, so if you can think of a
better solution please tell me.
John.
Powered by blists - more mailing lists