STRUCT KOMEDA_COMPONENT(9)
π struct komeda_component β a Kernel API Manual moment π
okay bestie, welcome to the struct komeda_component(9) page π this is from the Kernel API Manual, and it's genuinely one of those structs that's giving main character energy in the Arm display driver. it's a struct, it's a private obj, it's everything. let's get into it β¨
πΈ SYNOPSIS πΈ
struct komeda_component {
struct drm_private_obj obj;
struct komeda_pipeline *pipeline;
char name[32];
u32 __iomem *reg;
u32 id;
u32 hw_id;
u8 max_active_inputs;
u8 max_active_outputs;
u32 supported_inputs;
u32 supported_outputs;
const struct komeda_component_funcs *funcs;
};
like, look at her. eleven members, zero notes. slay π
π¦ Members π¦
objβ treat the component as a private obj, that's literally the whole vibe π₯pipelineβ the komeda pipeline this component belongs to, i.e. which family she's in πnameβ the component name, cute littlechar name[32], 32 chars of pure identity πregβ the component register base, which is initialized by chip and used by chip only. so like, not your business, that's chip's business πidβ the component id πhw_idβ the component hw id, which is initialized by chip and used by chip only. again: chip-only zone, we don't touch πmax_active_inputs,max_active_outputsβ okay so this is the group-chat part, they share a description:
the maximum number of inputs/outputs that can be active at the same time π«Ά
Note: the number isn't the bit number ofsupported_inputsorsupported_outputs, but may be less than it, since the component may not support enabling allsupported_inputs/supported_outputsat the same time. no cap, read that twice π
max_active_outputsβ maximum number of outputs β¨supported_inputs,supported_outputsβ these two are also sharing, besties fr fr:
bitmask of BIT(component->id) for the supported inputs/outputs, and it describes the possibilities of how a component is linked into a pipeline π
supported_outputsβ bitmask of supported output componenet ids π₯ (yes, "componenet" β we keep the spelling exactly as it is, that's canon now, iykyk π)funcsβ the chip functions to access HW,const struct komeda_component_funcs *, don't lose theconstbestie π
β¨ Description β¨
struct komeda_component describes the data flow capabilities for how to link a component into the display pipeline πΈ and here's the iconic part: all specified components are subclass of this structure. like, every single one. no exceptions, periodt π
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/arm/display/komeda/komeda_pipeline.hπ struct komeda_component_output(9)struct komeda_component_state(9)struct komeda_pipeline(9)struct komeda_pipeline_state(9)
go read those too, they're literally the supporting cast and they ate π«Ά
and that's the page!! source/version is ./drivers/gpu/drm/arm/display/... and the date on this one is October 2026 β so yeah, she's from the future, iconic behavior β bye bestie, go link some components ππ§
π¦ 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