drm_fb_xrgb8888_to_rgb565be(9)
π drm_fb_xrgb8888_to_rgb565be(9) β the Kernel API Manual era β¨
okay so bestie, welcome to the Kernel API Manual page for drm_fb_xrgb8888_to_rgb565be β it's giving "convert my pixels, but make it big-endian" and honestly? iconic.
πΈ NAME πΈ
drm_fb_xrgb8888_to_rgb565be β the glow-up function that converts XRGB8888 into a RGB565|DRM_FORMAT_BIG_ENDIAN clip buffer. no cap, that's literally her whole job π«Ά
β¨ SYNOPSIS β¨
void drm_fb_xrgb8888_to_rgb565be (struct iosys_map *dst ,
const unsigned int *dst_pitch ,
const struct iosys_map *src ,
const struct drm_framebuffer *fb ,
const struct drm_rect *clip ,
struct drm_format_conv_state *state );
void, bestie. she returns nothing β the real ones never need to prove themselves π
π ARGUMENTS π
dstβ array of RGB565BE destination buffers. plural, she's an array girlie β¨dst_pitchβ array of numbers of bytes between the start of two consecutive scanlines withindst. can beNULLif scanlines are stored next to each other (they're cozy like that π₯°)srcβ array of XRGB8888 source buffers. the origin story πfbβ DRM framebuffer. the main character, honestly πclipβ the clip rectangle area to copy. boundaries = self care πΈstateβ transform and conversion state. the vibe check, preserved across the whole operation π¦
π₯ DESCRIPTION π₯
so like, here's the tea: this function copies parts of a framebuffer over to display memory and converts the color format while it's at it, multitasking queen that she is. Destination and framebuffer formats must match β no catfishing allowed, fr fr.
The parameters dst, dst_pitch and src refer to arrays. Each array must have at least as many entries as there are planes in fb's format. Each entry stores the value for the format's respective color plane at the same index β like assigned seating but for pixel planes π
β οΈ heads up bestie: this function does not apply clipping on dst (i.e. the destination is at the top-left corner). don't come for her about the offset, she simply does not do that π
Drivers can use this function for RGB565BE devices that don't support XRGB8888 natively. she's the translator, the bridge, the moment π
β SEE ALSO β
- Kernel file
./drivers/gpu/drm/drm_format_helper.cβ the source of truth, go read her π drm_format_conv_state_init(9)drm_format_conv_state_copy(9)drm_format_conv_state_reserve(9)drm_format_conv_state_release(9)drm_fb_clip_offset(9)drm_fb_memcpy(9)drm_fb_swab(9)drm_fb_xrgb8888_to_rgb332(9)drm_fb_xrgb8888_to_rgb565(9)drm_fb_xrgb8888_to_xrgb1555(9)drm_fb_xrgb8888_to_argb1555(9)drm_fb_xrgb8888_to_rgba5551(9)drm_fb_xrgb8888_to_rgb888(9)drm_fb_xrgb8888_to_bgr888(9)drm_fb_xrgb8888_to_argb8888(9)drm_fb_xrgb8888_to_abgr8888(9)drm_fb_xrgb8888_to_xbgr8888(9)drm_fb_xrgb8888_to_bgrx8888(9)drm_fb_xrgb8888_to_xrgb2101010(9)drm_fb_xrgb8888_to_argb2101010(9)drm_fb_xrgb8888_to_gray8(9)drm_fb_argb8888_to_argb4444(9)drm_fb_xrgb8888_to_mono(9)drm_fb_xrgb8888_to_gray2(9)
the whole friend group, assembled. iykyk π§
and that's the page bestie!! brought to you straight outta ./drivers/gpu/drm, dated October 2026 β remember the date, it's giving timestamp slay πβ¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms