STRUCT SDMA_FIRMWARE_HEADER(9)
π struct sdma_firmware_header(9) π
okay bestie, so this is a page from the Kernel API Manual, and today's main character is struct sdma_firmware_header β literally the layout of the firmware image. yes, the whole layout. she's the blueprint, the vibe check for the bytes. let's get into it π«Ά
β¨ NAME β¨
struct sdma_firmware_header β Layout of the firmware image. that's it, that's the whole job, and she does it flawlessly π
πΈ SYNOPSIS πΈ
struct sdma_firmware_header {
u32 magic;
u32 version_major;
u32 version_minor;
u32 script_addrs_start;
u32 num_script_addrs;
u32 ram_code_start;
u32 ram_code_size;
};
look at her. seven fields. all u32. no notes. π
π¦ Members π¦
okay so every single field, and what she actually means:
magicβ it's"SDMA". that's the whole description. iconic, no cap. it's the little hello at the top so you know you're in the right file π₯version_majorβ increased whenever the layout ofstruct sdma_script_start_addrschanges. like, if that struct gets a glow-up, this number has to go up too. them's the rules πversion_minorβ the firmware minor version (for binary compatible changes). so like, small changes that don't break anything β she gets a lil bump πscript_addrs_startβ offset ofstruct sdma_script_start_addrsin this image. i.e. where in the file to go find her π§num_script_addrsβ Number of script addresses in this image. literally just the count, bestie πram_code_startβ offset of SDMA ram image in this firmware image. the starting point, the entrance, the where-it-begins βram_code_sizeβ size of SDMA ram image. how big she is. that's it π
π SEE ALSO π
Kernel file ./drivers/dma/imx-sdma.c β and honestly the whole friend group:
struct sdma_channel_control(9)struct sdma_state_registers(9)struct sdma_context_data(9)struct sdma_desc(9)struct sdma_channel(9)
go read them, they're all slaying in their own lanes π
lowkey a reminder thatmagicmust literally be"SDMA"β that's not a vibe, that's a requirement π
and that's the page!! sign-off time: this one lives in ./drivers/dma, dated October 2026, and it's the struct sdma_firmware_header(9) manual page. mwah, ily, go read your kernel docs π«Άβ¨πΈ
π¦ 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