[PATCH v4 1/3] drm/rect: Add DRM_RECT_INIT() macro

Thomas Zimmermann tzimmermann at suse.de
Tue Jun 21 10:02:14 UTC 2022


Hi

Am 21.06.22 um 11:38 schrieb David Gow:
> On Tue, Jun 21, 2022 at 12:06 AM José Expósito
> <jose.exposito89 at gmail.com> wrote:
>>
>> Add a helper macro to initialize a rectangle from x, y, width and
>> height information.
>>
>> Reviewed-by: Jani Nikula <jani.nikula at intel.com>
>> Acked-by: Thomas Zimmermann <tzimmermann at suse.de>
>> Signed-off-by: José Expósito <jose.exposito89 at gmail.com>
>> ---
> 
> This looks good to me, though I have one minor concern about the macro
> name. (But if it's okay with the DRM folks, which it seems to be, I
> won't object.)
> 
> Either way,
> Reviewed-by: David Gow <davidgow at google.com>
> 
>>   include/drm/drm_rect.h | 16 ++++++++++++++++
>>   1 file changed, 16 insertions(+)
>>
>> diff --git a/include/drm/drm_rect.h b/include/drm/drm_rect.h
>> index 6f6e19bd4dac..e8d94fca2703 100644
>> --- a/include/drm/drm_rect.h
>> +++ b/include/drm/drm_rect.h
>> @@ -47,6 +47,22 @@ struct drm_rect {
>>          int x1, y1, x2, y2;
>>   };
>>
>> +/**
>> + * DRM_RECT_INIT - initialize a rectangle from x/y/w/h
>> + * @x: x coordinate
>> + * @y: y coordinate
>> + * @w: width
>> + * @h: height
>> + *
>> + * RETURNS:
>> + * A new rectangle of the specified size.
>> + */
>> +#define DRM_RECT_INIT(x, y, w, h) ((struct drm_rect){ \
>> +               .x1 = (x), \
>> +               .y1 = (y), \
>> +               .x2 = (x) + (w), \
>> +               .y2 = (y) + (h) })
>> +
> 
> My only slight concern here is that it might be a little bit confusing
> that a macro called DRM_RECT_INIT() accepts x/y/w/h, whereas the
> actual struct drm_rect is x1/y1/x2/y2. If the macro were called
> something like DRM_RECT_INIT_FROM_XYWH() or similar.

The existing drm_rect_init() function uses xywh arguments. So the 
current name is consistent with existing practice. I don't think we 
refer to x2,y2 much, if ever.

Best regards
Thomas

> 
> 
>>   /**
>>    * DRM_RECT_FMT - printf string for &struct drm_rect
>>    */
>> --
>> 2.25.1
>>

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20220621/125e3de4/attachment.sig>


More information about the dri-devel mailing list