Hm. I'm not sure offhand how to check if drmModeCrtcSetGamma is supported. I guess you could check if gamma size > 0 or something?
On Thu, Mar 12, 2020, 02:39 Rohit Visavalia <RVISAVAL@xxxxxxxxxx> wrote:
Hi Ilia Mirkin,
Thanks for the review.
By old-fashioned way you mean to say using drmModeCrtcSetGamma()? If yes then, it shows error as "failed to set gamma: Function no implemented" if any platform specific drm has no gamma property implemented.
Current code shows error while running modetest for Xilinx drm as it doesn't supports gamma property and ideally it should not show error as gamma is optional property, so it doesn't serve the purpose of optional property.
Please correct me if I am missing anything.
Thanks
Rohit
> -----Original Message-----
> From: Ilia Mirkin [mailto:imirkin@xxxxxxxxxxxx]
> Sent: Tuesday, March 3, 2020 7:08 PM
> To: Devarsh Thakkar <DEVARSHT@xxxxxxxxxx>
> Cc: Rohit Visavalia <RVISAVAL@xxxxxxxxxx>; dri-devel@xxxxxxxxxxxxxxxxxxxxx;
> emil.velikov@xxxxxxxxxxxxx; Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>; Hyun
> Kwon <hyunk@xxxxxxxxxx>; Ranganathan Sk <rsk@xxxxxxxxxx>; Dhaval
> Rajeshbhai Shah <dshah@xxxxxxxxxx>; Varunkumar Allagadapa
> <VARUNKUM@xxxxxxxxxx>
> Subject: Re: [PATCH libdrm] modetest: call drmModeCrtcSetGamma() only if
> add_property_optional returns true
>
> EXTERNAL EMAIL
>
> Pretty sure the current code is right. If the GAMMA_LUT property can't be set,
> it tries to set gamma the old-fashioned way.
>
> On Tue, Mar 3, 2020 at 8:12 AM Devarsh Thakkar <DEVARSHT@xxxxxxxxxx>
> wrote:
> >
> > Hi Rohit,
> >
> > This makes sense to me as gamma was implemented as optional property.
> > Reviewed-By: "Devarsh Thakkar <devarsh.thakkar@xxxxxxxxxx>"
> >
> > @emil.velikov@xxxxxxxxxxxxx, @imirkin@xxxxxxxxxxxx, @Ville Syrjälä,
> Could you please ack and help merge this patch if it also look good to you ?
> >
> > Regards,
> > Devarsh
> >
> > > -----Original Message-----
> > > From: Rohit Visavalia
> > > Sent: 27 February 2020 00:40
> > > To: Rohit Visavalia <RVISAVAL@xxxxxxxxxx>;
> > > dri-devel@xxxxxxxxxxxxxxxxxxxxx; imirkin@xxxxxxxxxxxx;
> > > emil.velikov@xxxxxxxxxxxxx
> > > Cc: Hyun Kwon <hyunk@xxxxxxxxxx>; Ranganathan Sk <rsk@xxxxxxxxxx>;
> > > Dhaval Rajeshbhai Shah <dshah@xxxxxxxxxx>; Varunkumar Allagadapa
> > > <VARUNKUM@xxxxxxxxxx>; Devarsh Thakkar <DEVARSHT@xxxxxxxxxx>
> > > Subject: RE: [PATCH libdrm] modetest: call drmModeCrtcSetGamma()
> > > only if add_property_optional returns true
> > >
> > > Gentle reminder.
> > >
> > > + Ilia Mirkin, +Emil Velikov.
> > >
> > > Thanks & Regards,
> > > Rohit
> > >
> > > > -----Original Message-----
> > > > From: Rohit Visavalia [mailto:rohit.visavalia@xxxxxxxxxx]
> > > > Sent: Tuesday, February 25, 2020 3:08 PM
> > > > To: dri-devel@xxxxxxxxxxxxxxxxxxxxx
> > > > Cc: Hyun Kwon <hyunk@xxxxxxxxxx>; Ranganathan Sk <rsk@xxxxxxxxxx>;
> > > > Dhaval Rajeshbhai Shah <dshah@xxxxxxxxxx>; Varunkumar Allagadapa
> > > > <VARUNKUM@xxxxxxxxxx>; Devarsh Thakkar <DEVARSHT@xxxxxxxxxx>;
> > > > Rohit Visavalia <RVISAVAL@xxxxxxxxxx>
> > > > Subject: [PATCH libdrm] modetest: call drmModeCrtcSetGamma() only
> > > > if add_property_optional returns true
> > > >
> > > > gamma is a optional property then also it prints error message, so
> > > > set gamma only if add_property_optional() returns true.
> > > >
> > > > Signed-off-by: Rohit Visavalia <rohit.visavalia@xxxxxxxxxx>
> > > > ---
> > > > tests/modetest/modetest.c | 2 +-
> > > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > > >
> > > > diff --git a/tests/modetest/modetest.c b/tests/modetest/modetest.c
> > > > index b907ab3..379b9ea 100644
> > > > --- a/tests/modetest/modetest.c
> > > > +++ b/tests/modetest/modetest.c
> > > > @@ -1138,7 +1138,7 @@ static void set_gamma(struct device *dev,
> > > > unsigned crtc_id, unsigned fourcc)
> > > >
> > > > add_property_optional(dev, crtc_id, "DEGAMMA_LUT", 0);
> > > > add_property_optional(dev, crtc_id, "CTM", 0);
> > > > - if (!add_property_optional(dev, crtc_id, "GAMMA_LUT", blob_id)) {
> > > > + if (add_property_optional(dev, crtc_id, "GAMMA_LUT", blob_id))
> > > > + {
> > > > uint16_t r[256], g[256], b[256];
> > > >
> > > > for (i = 0; i < 256; i++) {
> > > > --
> > > > 2.7.4
> >
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel