Commit a979a541 authored by Thomas Zimmermann's avatar Thomas Zimmermann
Browse files

drm/format-helper: Normalize BT.601 factors to 256



BT.601 weights RGB components by certain factors to convert the
color to grayscale. Normalize the constants to 256 instead of 10.
Allows for slightly more precise rounding. The division by 256 can
be compiled as an 8-bit shift, which might be faster on some hardware.

Signed-off-by: default avatarThomas Zimmermann <tzimmermann@suse.de>
Acked-by: default avatarJavier Martinez Canillas <javierm@redhat.com>
Link: https://lore.kernel.org/r/20250603161158.423962-1-tzimmermann@suse.de
parent e2944dc6
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -42,7 +42,7 @@ static inline u32 drm_pixel_xrgb8888_to_r8_bt601(u32 pix)
	u32 b =  pix & 0x000000ff;

	/* ITU-R BT.601: Y = 0.299 R + 0.587 G + 0.114 B */
	return (3 * r + 6 * g + b) / 10;
	return (77 * r + 150 * g + 29 * b) / 256;
}

static inline u32 drm_pixel_xrgb8888_to_rgb332(u32 pix)