drm_fb_xrgb8888_to_argb1555(9)
π drm_fb_xrgb8888_to_argb1555 π
okay so bestie, welcome to the Kernel API Manual entry for drm_fb_xrgb8888_to_argb1555(9) β yes that name is a mouthful, no we are not shortening it, it's iconic and we respect it π
β¨ NAME β¨
drm_fb_xrgb8888_to_argb1555 β converts XRGB8888 into an ARGB1555 clip buffer. literally a glow-up for your pixels π
πΈ SYNOPSIS πΈ
void drm_fb_xrgb8888_to_argb1555 (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 );
π¦ ARGUMENTS π¦
dstβ array of ARGB1555 destination buffers π«Άdst_pitchβ array of numbers of bytes between the start of two consecutive scanlines withindst; this one can beNULLif the scanlines are just stored next to each other (they're cozy like that, no cap)srcβ array of XRGB8888 source bufferfbβ DRM framebufferclipβ the clip rectangle area to copy βοΈstateβ transform and conversion state
π₯ DESCRIPTION π₯
So what this function actually does: it copies parts of a framebuffer over to display memory and converts the color format while it's at it. multitasking queen π
The parameters dst, dst_pitch and src refer to arrays. Each array has to have at least as many entries as there are planes in fb's format β like, at minimum, don't skimp. Each entry stores the value for the format's respective color plane at the same index. matching sets only π
Heads up bestie: this function does not apply clipping on dst β meaning the destination sits at the top-left corner. that's just the vibe, ok?
Drivers can use this function for ARGB1555 devices that don't support XRGB8888 natively. It sets an opaque alpha channel as part of the conversion β fully opaque, no see-through, periodt β¨
β SEE ALSO β
Kernel file ./drivers/gpu/drm/drm_format_helper.c β go read it, it's giving main character energy π
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_rgb565be(9)drm_fb_xrgb8888_to_xrgb1555(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 fr fr π
and that's the whole page, bestie! this one lives in ./drivers/gpu/drm, dated October 2026 β stamped, sealed, slayed. mwah πβ¨
π¦ 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