[V7 01/45] drm: Add helper for conversion from signed-magnitude
Louis Chauvet
louis.chauvet at bootlin.com
Tue Feb 25 09:35:08 UTC 2025
Le 24/02/2025 à 19:50, Alex Hung a écrit :
>
>
> On 2/24/25 09:07, Louis Chauvet wrote:
>>
>>
>> Le 20/12/2024 à 05:33, Alex Hung a écrit :
>>> From: Harry Wentland <harry.wentland at amd.com>
>>>
>>> CTM values are defined as signed-magnitude values. Add
>>> a helper that converts from CTM signed-magnitude fixed
>>> point value to the twos-complement value used by
>>> drm_fixed.
>>>
>>> Signed-off-by: Harry Wentland <harry.wentland at amd.com>
>>
>> Reviewed-by: Louis Chauvet <louis.chauvet at bootlin.com>
>
> Hi Louis,
>
> Thanks for reviewing.
>
> The replies to other patches (2, 3, 5, 6, 7, 9, 10) seem to be empty (I
> checked on my inbox and on
> https://lore.kernel.org/all/44edbdfb-5e23-4c19-8c80-e7acb8b4930f@amd.com/T/#m2232bab7c543229a057123c5e762bf49c86a4148)
>
> Did you try to send something which didn't go through?
Hi!
Sorry for this, I clearly don't know what happened, they are also empty
in my Sent folder...
Sorry for this, I will resend them.
Louis Chauvet
>>
>>> ---
>>> include/drm/drm_fixed.h | 18 ++++++++++++++++++
>>> 1 file changed, 18 insertions(+)
>>>
>>> diff --git a/include/drm/drm_fixed.h b/include/drm/drm_fixed.h
>>> index 1922188f00e8..0b44f2f294ce 100644
>>> --- a/include/drm/drm_fixed.h
>>> +++ b/include/drm/drm_fixed.h
>>> @@ -78,6 +78,24 @@ static inline u32 dfixed_div(fixed20_12 A,
>>> fixed20_12 B)
>>> #define DRM_FIXED_EPSILON 1LL
>>> #define DRM_FIXED_ALMOST_ONE (DRM_FIXED_ONE - DRM_FIXED_EPSILON)
>>> +/**
>>> + * @drm_sm2fixp
>>> + *
>>> + * Convert a 1.31.32 signed-magnitude fixed point to 32.32
>>> + * 2s-complement fixed point
>>> + *
>>> + * @return s64 2s-complement fixed point
>>> + */
>>> +static inline s64 drm_sm2fixp(__u64 a)
>>> +{
>>> + if ((a & (1LL << 63))) {
>>> + return -(a & 0x7fffffffffffffffll);
>>> + } else {
>>> + return a;
>>> + }
>>> +
>>> +}
>>> +
>>> static inline s64 drm_int2fixp(int a)
>>> {
>>> return ((s64)a) << DRM_FIXED_POINT;
>>
>
--
Louis Chauvet, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
More information about the amd-gfx
mailing list