pixel_read_line_t(9)
β¨ pixel_read_line_t(9) β¨
okay so bestie, welcome to the Kernel API Manual entry for pixel_read_line_t β this is the one that reads a whole pixel line out of the source frame, converts it into struct pixel_argb_u16, and then writes it all into @out_pixel. it's giving "glow up pipeline" energy fr fr π
πΈ NAME πΈ
pixel_read_line_t β these functions are used to read a pixel line in the source frame, convert it to struct pixel_argb_u16 and write it to @out_pixel. π
π¦ SYNOPSIS π¦
void pixel_read_line_t (const struct vkms_plane_state *plane , int
x_start , int y_start , enum pixel_read_direction direction , int count
, struct pixel_argb_u16 out_pixel[] );
π ARGUMENTS π
planeβ the plane you're using as the source for the pixel value. your main character, basically πx_startβ the X (width) coordinate of the first pixel to copy. β οΈ the caller must ensure thatx_startis non-negative and smaller thanplane->frame_info->fb->width. no cap, if you don't do the vibe check here it's on you.y_startβ the Y (height) coordinate of the first pixel to copy. β οΈ again, the caller must ensure thaty_startis non-negative and smaller thanplane->frame_info->fb->height. same energy, don't skip it π«Άdirectionβ the direction to use for the copy, starting atx_start/y_start. where we're headed, bestie π§countβ number of pixels to copy. like, exactly how many pixels you're taking home πout_pixelβ pointer where to write the pixel values. they will be written fromout_pixel[0](included) toout_pixel[count](excluded). β οΈ the caller must ensure thatout_pixelhas a length of at leastcount. so yeah, size your array right or it's giving disaster π
lowkey the important part: those caller-side guarantees inx_start,y_startandout_pixelare your responsibility, not the function's. it literally says "the caller must ensure" three separate times. that's not a suggestion, that's the whole assignment π
π₯ SEE ALSO π₯
- Kernel file
./drivers/gpu/drm/vkms/vkms_drv.h struct vkms_frame_info(9)struct pixel_argb_u16(9)pixel_write_t(9)enum pixel_read_direction(9)struct conversion_matrix(9)struct vkms_plane_state(9)struct vkms_crtc_state(9)struct vkms_output(9)struct vkms_device(9)vkms_create(9)vkms_destroy(9)vkms_crtc_init(9)vkms_output_init(9)vkms_plane_init(9)
and that's the whole page, bestie β¨ it lives at ./drivers/gpu/drm/vkms, dated October 2026, and it's filed under pixel_read_line_t(9). go read your pixels responsibly πππ¦
π¦ 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