Hi
Am 21.02.25 um 16:51 schrieb andriy.shevchenko@linux.intel.com:
On Fri, Feb 21, 2025 at 11:36:00AM +0000, Aditya Garg wrote:
From: Kerem Karabay kekrby@gmail.com
Add XRGB8888 emulation helper for devices that only support BGR888.
...
- for (x = 0; x < pixels; x++) {
pix = le32_to_cpu(sbuf32[x]);
/* write red-green-blue to output in little endianness */
*dbuf8++ = (pix & 0x00ff0000) >> 16;
*dbuf8++ = (pix & 0x0000ff00) >> 8;
*dbuf8++ = (pix & 0x000000ff) >> 0;
put_unaligned_be24()
I'm all for sharing helper code, but maybe not here.
- DRM pixel formats are always little endian. - CPU encoding is LE or BE. - Pixel-component order can be anything: RGB/BGR/etc.
So the code has a comment to explain what happens here. Adding that call with the _be24 postfix into the mix would make it more confusing.
- }
...
- static const u8 dst_pixsize[DRM_FORMAT_MAX_PLANES] = {
3,
- };
One line?
static const u8 dst_pixsize[DRM_FORMAT_MAX_PLANES] = { 3 };
I'd be ok, if there's a string preference in the kernel to use thins style. Most of DRM doesn't AFAIK.
Best regards Thomas