[Letux-kernel] [PATCH v12 2/9] drm/ingenic: Add support for JZ4780 and HDMI output

Paul Cercueil paul at crapouillou.net
Wed Feb 2 13:28:17 CET 2022



Le mer., févr. 2 2022 at 13:17:14 +0100, H. Nikolaus Schaller 
<hns at goldelico.com> a écrit :
> Hi Paul,
> 
>>  Am 02.02.2022 um 13:06 schrieb Paul Cercueil <paul at crapouillou.net>:
>> 
>>  Hi Nikolaus,
>> 
>>>>>  @@ -446,6 +454,9 @@ static int 
>>>>> ingenic_drm_plane_atomic_check(struct drm_plane *plane,
>>>>>  	if (!crtc)
>>>>>  		return 0;
>>>>>  +	if (plane == &priv->f0)
>>>>>  +		return -EINVAL;
>>>>  This will break JZ4725B -> JZ4770 SoCs, the f0 plane is perfectly 
>>>> usable there.
>>>  Hm. I think it was your request/proposal to add this [1]?
>> 
>>  Because otherwise with your current patchset the f0 plane does not 
>> work *on JZ4780*.
> 
> Not that I am eager to fix that, but...
> maybe it could be better to fix than having the check and -EINVAL 
> depend on SoC compatible string
> (or some new flag in soc_info. plane_f0_not_working)?

Totally agree! A proper fix would be much better. A 
"plane_f0_not_working" in the meantime is OK with me.

Note that there are other things not working with your current 
implementation, for instance you cannot set the X/Y start position of 
the f1 plane, which means it's only really usable for fullscreen 
desktop/windows.

>>  It does work on older SoCs.
>> 
>>>  What I have forgotten is why the f0 plane should not be usable for 
>>> jz4780.
>> 
>>  We return an error here to prevent userspace from using the f0 
>> plane until it's effectively working on the JZ4780.
> 
> Well, what would be not working with that plane if user-space would 
> try to use it?

 From what I remember, it wouldn't show anything on screen, and after 
that trying to use the f1 plane wouldn't work either.

-Paul




More information about the Letux-kernel mailing list