Re: [PATCH 4/4] drm/sun4i: Enable DRM InfoFrame support on H6

2019-06-24 Thread Andrzej Hajda
On 24.06.2019 18:07, Chen-Yu Tsai wrote:
> On Tue, Jun 25, 2019 at 12:03 AM Jernej Škrabec  
> wrote:
>> Dne ponedeljek, 24. junij 2019 ob 17:56:30 CEST je Chen-Yu Tsai napisal(a):
>>> On Mon, Jun 24, 2019 at 11:49 PM Andrzej Hajda  wrote:
 On 24.06.2019 17:05, Jernej Škrabec wrote:
> Dne ponedeljek, 24. junij 2019 ob 17:03:31 CEST je Andrzej Hajda
>> napisal(a):
>> On 26.05.2019 23:20, Jonas Karlman wrote:
>>> This patch enables Dynamic Range and Mastering InfoFrame on H6.
>>>
>>> Cc: Maxime Ripard 
>>> Cc: Jernej Skrabec 
>>> Signed-off-by: Jonas Karlman 
>>> ---
>>>
>>>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 2 ++
>>>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 1 +
>>>  2 files changed, 3 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
>>> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c index
>>> 39d8509d96a0..b80164dd8ad8
>>> 100644
>>> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
>>> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
>>> @@ -189,6 +189,7 @@ static int sun8i_dw_hdmi_bind(struct device *dev,
>>> struct device *master,>
>>>
>>> sun8i_hdmi_phy_init(hdmi->phy);
>>>
>>> plat_data->mode_valid = hdmi->quirks->mode_valid;
>>>
>>> +   plat_data->drm_infoframe = hdmi->quirks->drm_infoframe;
>>>
>>> sun8i_hdmi_phy_set_ops(hdmi->phy, plat_data);
>>>
>>> platform_set_drvdata(pdev, hdmi);
>>>
>>> @@ -255,6 +256,7 @@ static const struct sun8i_dw_hdmi_quirks
>>> sun8i_a83t_quirks = {>
>>>
>>>  static const struct sun8i_dw_hdmi_quirks sun50i_h6_quirks = {
>>>
>>> .mode_valid = sun8i_dw_hdmi_mode_valid_h6,
>>>
>>> +   .drm_infoframe = true,
>>>
>>>  };
>>>
>>>  static const struct of_device_id sun8i_dw_hdmi_dt_ids[] = {
>>>
>>> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
>>> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h index
>>> 720c5aa8adc1..2a0ec08ee236
>>> 100644
>>> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
>>> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
>>> @@ -178,6 +178,7 @@ struct sun8i_dw_hdmi_quirks {
>>>
>>> enum drm_mode_status (*mode_valid)(struct drm_connector
> *connector,
>
>>>const struct
> drm_display_mode *mode);
>
>>> unsigned int set_rate : 1;
>>>
>>> +   unsigned int drm_infoframe : 1;
>> Again, drm_infoframe suggests it contains inforframe, but in fact it
>> just informs infoframe can be used, so again my suggestion
>> use_drm_infoframe.
>>
>> Moreover bool type seems more appropriate here.
> checkpatch will give warning if bool is used.
 Then I would say "fix/ignore checkpatch" :)

 But maybe there is a reason.
>>> Here's an old one from Linus: https://lkml.org/lkml/2013/9/1/154
>>>
>>> I'd say that bool in a struct is a waste of space compared to a 1 bit
>>> bitfield, especially when there already are other bitfields in the same
>>> struct.
 Anyway I've tested and I do not see the warning, could you elaborate it.
>>> Maybe checkpatch.pl --strict?
>> It seems they removed that check:
>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?
>> id=7967656ffbfa493f5546c0f1
>>
>> After reading that block of text, I'm not sure what would be prefered way for
>> this case.
> This:
>
> +If a structure has many true/false values, consider consolidating them into a
> +bitfield with 1 bit members, or using an appropriate fixed width type, such 
> as
> +u8.
>
> would suggest using a bitfield, or flags within a fixed width type?


OK, I have also guessed what kind of warning Jernej was writing about.
And IMO it rather does not fit here:

- no concurrent writes,

- no need for size/cache optimizations.

But since there are some controversies about bool in struct and file has
already convention of bitfield I do not insist on it, you can keep it as is.


Regards

Andrzej



>
> ChenYu
>
>

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Re: [PATCH 4/4] drm/sun4i: Enable DRM InfoFrame support on H6

2019-06-24 Thread Chen-Yu Tsai
On Tue, Jun 25, 2019 at 12:03 AM Jernej Škrabec  wrote:
>
> Dne ponedeljek, 24. junij 2019 ob 17:56:30 CEST je Chen-Yu Tsai napisal(a):
> > On Mon, Jun 24, 2019 at 11:49 PM Andrzej Hajda  wrote:
> > > On 24.06.2019 17:05, Jernej Škrabec wrote:
> > > > Dne ponedeljek, 24. junij 2019 ob 17:03:31 CEST je Andrzej Hajda
> napisal(a):
> > > >> On 26.05.2019 23:20, Jonas Karlman wrote:
> > > >>> This patch enables Dynamic Range and Mastering InfoFrame on H6.
> > > >>>
> > > >>> Cc: Maxime Ripard 
> > > >>> Cc: Jernej Skrabec 
> > > >>> Signed-off-by: Jonas Karlman 
> > > >>> ---
> > > >>>
> > > >>>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 2 ++
> > > >>>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 1 +
> > > >>>  2 files changed, 3 insertions(+)
> > > >>>
> > > >>> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> > > >>> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c index
> > > >>> 39d8509d96a0..b80164dd8ad8
> > > >>> 100644
> > > >>> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> > > >>> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> > > >>> @@ -189,6 +189,7 @@ static int sun8i_dw_hdmi_bind(struct device *dev,
> > > >>> struct device *master,>
> > > >>>
> > > >>> sun8i_hdmi_phy_init(hdmi->phy);
> > > >>>
> > > >>> plat_data->mode_valid = hdmi->quirks->mode_valid;
> > > >>>
> > > >>> +   plat_data->drm_infoframe = hdmi->quirks->drm_infoframe;
> > > >>>
> > > >>> sun8i_hdmi_phy_set_ops(hdmi->phy, plat_data);
> > > >>>
> > > >>> platform_set_drvdata(pdev, hdmi);
> > > >>>
> > > >>> @@ -255,6 +256,7 @@ static const struct sun8i_dw_hdmi_quirks
> > > >>> sun8i_a83t_quirks = {>
> > > >>>
> > > >>>  static const struct sun8i_dw_hdmi_quirks sun50i_h6_quirks = {
> > > >>>
> > > >>> .mode_valid = sun8i_dw_hdmi_mode_valid_h6,
> > > >>>
> > > >>> +   .drm_infoframe = true,
> > > >>>
> > > >>>  };
> > > >>>
> > > >>>  static const struct of_device_id sun8i_dw_hdmi_dt_ids[] = {
> > > >>>
> > > >>> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> > > >>> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h index
> > > >>> 720c5aa8adc1..2a0ec08ee236
> > > >>> 100644
> > > >>> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> > > >>> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> > > >>> @@ -178,6 +178,7 @@ struct sun8i_dw_hdmi_quirks {
> > > >>>
> > > >>> enum drm_mode_status (*mode_valid)(struct drm_connector
> > > >
> > > > *connector,
> > > >
> > > >>>const struct
> > > >
> > > > drm_display_mode *mode);
> > > >
> > > >>> unsigned int set_rate : 1;
> > > >>>
> > > >>> +   unsigned int drm_infoframe : 1;
> > > >>
> > > >> Again, drm_infoframe suggests it contains inforframe, but in fact it
> > > >> just informs infoframe can be used, so again my suggestion
> > > >> use_drm_infoframe.
> > > >>
> > > >> Moreover bool type seems more appropriate here.
> > > >
> > > > checkpatch will give warning if bool is used.
> > >
> > > Then I would say "fix/ignore checkpatch" :)
> > >
> > > But maybe there is a reason.
> >
> > Here's an old one from Linus: https://lkml.org/lkml/2013/9/1/154
> >
> > I'd say that bool in a struct is a waste of space compared to a 1 bit
> > bitfield, especially when there already are other bitfields in the same
> > struct.
> > > Anyway I've tested and I do not see the warning, could you elaborate it.
> >
> > Maybe checkpatch.pl --strict?
>
> It seems they removed that check:
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?
> id=7967656ffbfa493f5546c0f1
>
> After reading that block of text, I'm not sure what would be prefered way for
> this case.

This:

+If a structure has many true/false values, consider consolidating them into a
+bitfield with 1 bit members, or using an appropriate fixed width type, such as
+u8.

would suggest using a bitfield, or flags within a fixed width type?

ChenYu


Re: [PATCH 4/4] drm/sun4i: Enable DRM InfoFrame support on H6

2019-06-24 Thread Jernej Škrabec
Dne ponedeljek, 24. junij 2019 ob 17:56:30 CEST je Chen-Yu Tsai napisal(a):
> On Mon, Jun 24, 2019 at 11:49 PM Andrzej Hajda  wrote:
> > On 24.06.2019 17:05, Jernej Škrabec wrote:
> > > Dne ponedeljek, 24. junij 2019 ob 17:03:31 CEST je Andrzej Hajda 
napisal(a):
> > >> On 26.05.2019 23:20, Jonas Karlman wrote:
> > >>> This patch enables Dynamic Range and Mastering InfoFrame on H6.
> > >>> 
> > >>> Cc: Maxime Ripard 
> > >>> Cc: Jernej Skrabec 
> > >>> Signed-off-by: Jonas Karlman 
> > >>> ---
> > >>> 
> > >>>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 2 ++
> > >>>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 1 +
> > >>>  2 files changed, 3 insertions(+)
> > >>> 
> > >>> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> > >>> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c index
> > >>> 39d8509d96a0..b80164dd8ad8
> > >>> 100644
> > >>> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> > >>> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> > >>> @@ -189,6 +189,7 @@ static int sun8i_dw_hdmi_bind(struct device *dev,
> > >>> struct device *master,>
> > >>> 
> > >>> sun8i_hdmi_phy_init(hdmi->phy);
> > >>> 
> > >>> plat_data->mode_valid = hdmi->quirks->mode_valid;
> > >>> 
> > >>> +   plat_data->drm_infoframe = hdmi->quirks->drm_infoframe;
> > >>> 
> > >>> sun8i_hdmi_phy_set_ops(hdmi->phy, plat_data);
> > >>> 
> > >>> platform_set_drvdata(pdev, hdmi);
> > >>> 
> > >>> @@ -255,6 +256,7 @@ static const struct sun8i_dw_hdmi_quirks
> > >>> sun8i_a83t_quirks = {>
> > >>> 
> > >>>  static const struct sun8i_dw_hdmi_quirks sun50i_h6_quirks = {
> > >>>  
> > >>> .mode_valid = sun8i_dw_hdmi_mode_valid_h6,
> > >>> 
> > >>> +   .drm_infoframe = true,
> > >>> 
> > >>>  };
> > >>>  
> > >>>  static const struct of_device_id sun8i_dw_hdmi_dt_ids[] = {
> > >>> 
> > >>> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> > >>> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h index
> > >>> 720c5aa8adc1..2a0ec08ee236
> > >>> 100644
> > >>> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> > >>> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> > >>> @@ -178,6 +178,7 @@ struct sun8i_dw_hdmi_quirks {
> > >>> 
> > >>> enum drm_mode_status (*mode_valid)(struct drm_connector
> > > 
> > > *connector,
> > > 
> > >>>const struct
> > > 
> > > drm_display_mode *mode);
> > > 
> > >>> unsigned int set_rate : 1;
> > >>> 
> > >>> +   unsigned int drm_infoframe : 1;
> > >> 
> > >> Again, drm_infoframe suggests it contains inforframe, but in fact it
> > >> just informs infoframe can be used, so again my suggestion
> > >> use_drm_infoframe.
> > >> 
> > >> Moreover bool type seems more appropriate here.
> > > 
> > > checkpatch will give warning if bool is used.
> > 
> > Then I would say "fix/ignore checkpatch" :)
> > 
> > But maybe there is a reason.
> 
> Here's an old one from Linus: https://lkml.org/lkml/2013/9/1/154
> 
> I'd say that bool in a struct is a waste of space compared to a 1 bit
> bitfield, especially when there already are other bitfields in the same
> struct.
> > Anyway I've tested and I do not see the warning, could you elaborate it.
> 
> Maybe checkpatch.pl --strict?

It seems they removed that check:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?
id=7967656ffbfa493f5546c0f1

After reading that block of text, I'm not sure what would be prefered way for 
this case.

Best regards,
Jernej






Re: [PATCH 4/4] drm/sun4i: Enable DRM InfoFrame support on H6

2019-06-24 Thread Chen-Yu Tsai
On Mon, Jun 24, 2019 at 11:49 PM Andrzej Hajda  wrote:
>
> On 24.06.2019 17:05, Jernej Škrabec wrote:
> > Dne ponedeljek, 24. junij 2019 ob 17:03:31 CEST je Andrzej Hajda napisal(a):
> >> On 26.05.2019 23:20, Jonas Karlman wrote:
> >>> This patch enables Dynamic Range and Mastering InfoFrame on H6.
> >>>
> >>> Cc: Maxime Ripard 
> >>> Cc: Jernej Skrabec 
> >>> Signed-off-by: Jonas Karlman 
> >>> ---
> >>>
> >>>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 2 ++
> >>>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 1 +
> >>>  2 files changed, 3 insertions(+)
> >>>
> >>> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> >>> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c index 39d8509d96a0..b80164dd8ad8
> >>> 100644
> >>> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> >>> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> >>> @@ -189,6 +189,7 @@ static int sun8i_dw_hdmi_bind(struct device *dev,
> >>> struct device *master,>
> >>> sun8i_hdmi_phy_init(hdmi->phy);
> >>>
> >>> plat_data->mode_valid = hdmi->quirks->mode_valid;
> >>>
> >>> +   plat_data->drm_infoframe = hdmi->quirks->drm_infoframe;
> >>>
> >>> sun8i_hdmi_phy_set_ops(hdmi->phy, plat_data);
> >>>
> >>> platform_set_drvdata(pdev, hdmi);
> >>>
> >>> @@ -255,6 +256,7 @@ static const struct sun8i_dw_hdmi_quirks
> >>> sun8i_a83t_quirks = {>
> >>>  static const struct sun8i_dw_hdmi_quirks sun50i_h6_quirks = {
> >>>
> >>> .mode_valid = sun8i_dw_hdmi_mode_valid_h6,
> >>>
> >>> +   .drm_infoframe = true,
> >>>
> >>>  };
> >>>
> >>>  static const struct of_device_id sun8i_dw_hdmi_dt_ids[] = {
> >>>
> >>> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> >>> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h index 720c5aa8adc1..2a0ec08ee236
> >>> 100644
> >>> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> >>> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> >>> @@ -178,6 +178,7 @@ struct sun8i_dw_hdmi_quirks {
> >>>
> >>> enum drm_mode_status (*mode_valid)(struct drm_connector
> > *connector,
> >>>
> >>>const struct
> > drm_display_mode *mode);
> >>>
> >>> unsigned int set_rate : 1;
> >>>
> >>> +   unsigned int drm_infoframe : 1;
> >> Again, drm_infoframe suggests it contains inforframe, but in fact it
> >> just informs infoframe can be used, so again my suggestion
> >> use_drm_infoframe.
> >>
> >> Moreover bool type seems more appropriate here.
> > checkpatch will give warning if bool is used.
>
>
> Then I would say "fix/ignore checkpatch" :)
>
> But maybe there is a reason.

Here's an old one from Linus: https://lkml.org/lkml/2013/9/1/154

I'd say that bool in a struct is a waste of space compared to a 1 bit bitfield,
especially when there already are other bitfields in the same struct.

> Anyway I've tested and I do not see the warning, could you elaborate it.

Maybe checkpatch.pl --strict?

ChenYu


Re: [PATCH 4/4] drm/sun4i: Enable DRM InfoFrame support on H6

2019-06-24 Thread Andrzej Hajda
On 24.06.2019 17:05, Jernej Škrabec wrote:
> Dne ponedeljek, 24. junij 2019 ob 17:03:31 CEST je Andrzej Hajda napisal(a):
>> On 26.05.2019 23:20, Jonas Karlman wrote:
>>> This patch enables Dynamic Range and Mastering InfoFrame on H6.
>>>
>>> Cc: Maxime Ripard 
>>> Cc: Jernej Skrabec 
>>> Signed-off-by: Jonas Karlman 
>>> ---
>>>
>>>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 2 ++
>>>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 1 +
>>>  2 files changed, 3 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
>>> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c index 39d8509d96a0..b80164dd8ad8
>>> 100644
>>> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
>>> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
>>> @@ -189,6 +189,7 @@ static int sun8i_dw_hdmi_bind(struct device *dev,
>>> struct device *master,> 
>>> sun8i_hdmi_phy_init(hdmi->phy);
>>> 
>>> plat_data->mode_valid = hdmi->quirks->mode_valid;
>>>
>>> +   plat_data->drm_infoframe = hdmi->quirks->drm_infoframe;
>>>
>>> sun8i_hdmi_phy_set_ops(hdmi->phy, plat_data);
>>> 
>>> platform_set_drvdata(pdev, hdmi);
>>>
>>> @@ -255,6 +256,7 @@ static const struct sun8i_dw_hdmi_quirks
>>> sun8i_a83t_quirks = {> 
>>>  static const struct sun8i_dw_hdmi_quirks sun50i_h6_quirks = {
>>>  
>>> .mode_valid = sun8i_dw_hdmi_mode_valid_h6,
>>>
>>> +   .drm_infoframe = true,
>>>
>>>  };
>>>  
>>>  static const struct of_device_id sun8i_dw_hdmi_dt_ids[] = {
>>>
>>> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
>>> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h index 720c5aa8adc1..2a0ec08ee236
>>> 100644
>>> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
>>> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
>>> @@ -178,6 +178,7 @@ struct sun8i_dw_hdmi_quirks {
>>>
>>> enum drm_mode_status (*mode_valid)(struct drm_connector 
> *connector,
>>> 
>>>const struct 
> drm_display_mode *mode);
>>> 
>>> unsigned int set_rate : 1;
>>>
>>> +   unsigned int drm_infoframe : 1;
>> Again, drm_infoframe suggests it contains inforframe, but in fact it
>> just informs infoframe can be used, so again my suggestion
>> use_drm_infoframe.
>>
>> Moreover bool type seems more appropriate here.
> checkpatch will give warning if bool is used.


Then I would say "fix/ignore checkpatch" :)

But maybe there is a reason.

Anyway I've tested and I do not see the warning, could you elaborate it.


Regards

Andrzej



>
> Best regards,
> Jernej
>
>> Beside this:
>>
>> Reviewed-by: Andrzej Hajda 
>>
>>  --
>> Regards
>> Andrzej
>>
>>>  };
>>>  
>>>  struct sun8i_dw_hdmi {
>
>
>
>
>



Re: [PATCH 4/4] drm/sun4i: Enable DRM InfoFrame support on H6

2019-06-24 Thread Jernej Škrabec
Dne ponedeljek, 24. junij 2019 ob 17:03:31 CEST je Andrzej Hajda napisal(a):
> On 26.05.2019 23:20, Jonas Karlman wrote:
> > This patch enables Dynamic Range and Mastering InfoFrame on H6.
> > 
> > Cc: Maxime Ripard 
> > Cc: Jernej Skrabec 
> > Signed-off-by: Jonas Karlman 
> > ---
> > 
> >  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 2 ++
> >  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 1 +
> >  2 files changed, 3 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> > b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c index 39d8509d96a0..b80164dd8ad8
> > 100644
> > --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> > +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> > @@ -189,6 +189,7 @@ static int sun8i_dw_hdmi_bind(struct device *dev,
> > struct device *master,> 
> > sun8i_hdmi_phy_init(hdmi->phy);
> > 
> > plat_data->mode_valid = hdmi->quirks->mode_valid;
> > 
> > +   plat_data->drm_infoframe = hdmi->quirks->drm_infoframe;
> > 
> > sun8i_hdmi_phy_set_ops(hdmi->phy, plat_data);
> > 
> > platform_set_drvdata(pdev, hdmi);
> > 
> > @@ -255,6 +256,7 @@ static const struct sun8i_dw_hdmi_quirks
> > sun8i_a83t_quirks = {> 
> >  static const struct sun8i_dw_hdmi_quirks sun50i_h6_quirks = {
> >  
> > .mode_valid = sun8i_dw_hdmi_mode_valid_h6,
> > 
> > +   .drm_infoframe = true,
> > 
> >  };
> >  
> >  static const struct of_device_id sun8i_dw_hdmi_dt_ids[] = {
> > 
> > diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> > b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h index 720c5aa8adc1..2a0ec08ee236
> > 100644
> > --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> > +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> > @@ -178,6 +178,7 @@ struct sun8i_dw_hdmi_quirks {
> > 
> > enum drm_mode_status (*mode_valid)(struct drm_connector 
*connector,
> > 
> >const struct 
drm_display_mode *mode);
> > 
> > unsigned int set_rate : 1;
> > 
> > +   unsigned int drm_infoframe : 1;
> 
> Again, drm_infoframe suggests it contains inforframe, but in fact it
> just informs infoframe can be used, so again my suggestion
> use_drm_infoframe.
> 
> Moreover bool type seems more appropriate here.

checkpatch will give warning if bool is used.

Best regards,
Jernej

> 
> Beside this:
> 
> Reviewed-by: Andrzej Hajda 
> 
>  --
> Regards
> Andrzej
> 
> >  };
> >  
> >  struct sun8i_dw_hdmi {






Re: [PATCH 4/4] drm/sun4i: Enable DRM InfoFrame support on H6

2019-06-24 Thread Andrzej Hajda
On 26.05.2019 23:20, Jonas Karlman wrote:
> This patch enables Dynamic Range and Mastering InfoFrame on H6.
>
> Cc: Maxime Ripard 
> Cc: Jernej Skrabec 
> Signed-off-by: Jonas Karlman 
> ---
>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 2 ++
>  drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 1 +
>  2 files changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c 
> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> index 39d8509d96a0..b80164dd8ad8 100644
> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
> @@ -189,6 +189,7 @@ static int sun8i_dw_hdmi_bind(struct device *dev, struct 
> device *master,
>   sun8i_hdmi_phy_init(hdmi->phy);
>  
>   plat_data->mode_valid = hdmi->quirks->mode_valid;
> + plat_data->drm_infoframe = hdmi->quirks->drm_infoframe;
>   sun8i_hdmi_phy_set_ops(hdmi->phy, plat_data);
>  
>   platform_set_drvdata(pdev, hdmi);
> @@ -255,6 +256,7 @@ static const struct sun8i_dw_hdmi_quirks 
> sun8i_a83t_quirks = {
>  
>  static const struct sun8i_dw_hdmi_quirks sun50i_h6_quirks = {
>   .mode_valid = sun8i_dw_hdmi_mode_valid_h6,
> + .drm_infoframe = true,
>  };
>  
>  static const struct of_device_id sun8i_dw_hdmi_dt_ids[] = {
> diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h 
> b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> index 720c5aa8adc1..2a0ec08ee236 100644
> --- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> +++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
> @@ -178,6 +178,7 @@ struct sun8i_dw_hdmi_quirks {
>   enum drm_mode_status (*mode_valid)(struct drm_connector *connector,
>  const struct drm_display_mode *mode);
>   unsigned int set_rate : 1;
> + unsigned int drm_infoframe : 1;


Again, drm_infoframe suggests it contains inforframe, but in fact it
just informs infoframe can be used, so again my suggestion
use_drm_infoframe.

Moreover bool type seems more appropriate here.

Beside this:

Reviewed-by: Andrzej Hajda 

 --
Regards
Andrzej


>  };
>  
>  struct sun8i_dw_hdmi {




[PATCH 4/4] drm/sun4i: Enable DRM InfoFrame support on H6

2019-05-26 Thread Jonas Karlman
This patch enables Dynamic Range and Mastering InfoFrame on H6.

Cc: Maxime Ripard 
Cc: Jernej Skrabec 
Signed-off-by: Jonas Karlman 
---
 drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c | 2 ++
 drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h | 1 +
 2 files changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c 
b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
index 39d8509d96a0..b80164dd8ad8 100644
--- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
+++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.c
@@ -189,6 +189,7 @@ static int sun8i_dw_hdmi_bind(struct device *dev, struct 
device *master,
sun8i_hdmi_phy_init(hdmi->phy);
 
plat_data->mode_valid = hdmi->quirks->mode_valid;
+   plat_data->drm_infoframe = hdmi->quirks->drm_infoframe;
sun8i_hdmi_phy_set_ops(hdmi->phy, plat_data);
 
platform_set_drvdata(pdev, hdmi);
@@ -255,6 +256,7 @@ static const struct sun8i_dw_hdmi_quirks sun8i_a83t_quirks 
= {
 
 static const struct sun8i_dw_hdmi_quirks sun50i_h6_quirks = {
.mode_valid = sun8i_dw_hdmi_mode_valid_h6,
+   .drm_infoframe = true,
 };
 
 static const struct of_device_id sun8i_dw_hdmi_dt_ids[] = {
diff --git a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h 
b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
index 720c5aa8adc1..2a0ec08ee236 100644
--- a/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
+++ b/drivers/gpu/drm/sun4i/sun8i_dw_hdmi.h
@@ -178,6 +178,7 @@ struct sun8i_dw_hdmi_quirks {
enum drm_mode_status (*mode_valid)(struct drm_connector *connector,
   const struct drm_display_mode *mode);
unsigned int set_rate : 1;
+   unsigned int drm_infoframe : 1;
 };
 
 struct sun8i_dw_hdmi {
-- 
2.17.1