T113 TCON Top tinting troubleshooting

John Watts contact at jookia.org
Sat Jun 29 02:12:30 UTC 2024


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.


More information about the dri-devel mailing list