STRUCT SDW_INTEL_CTX(9)
π struct sdw_intel_ctx(9) π
okay so hi bestie, welcome to the Kernel API Manual entry for struct sdw_intel_ctx β yes it's giving "struct with a whole lot of responsibilities" and honestly? iconic. π
β¨ NAME β¨
struct sdw_intel_ctx β the context allocated by the controller driver probe. like, the little home base the probe sets up for itself. π
πΈ SYNOPSIS πΈ
struct sdw_intel_ctx {
int count;
void __iomem *mmio_base;
u32 link_mask;
acpi_handle handle;
struct sdw_intel_link_dev **ldev;
struct list_head link_list;
struct mutex shim_lock;
u32 shim_mask;
u32 shim_base;
u32 alh_base;
struct sdw_peripherals *peripherals;
};
(that stray space before the closing }; is canon, don't come for me π
)
π¦ Members π¦
so this is the part where we meet every single member one by one, no skipping, periodt.
countβ the link count. literally how many links we're talking about. π’mmio_baseβ the mmio base of SoundWire registers. careful though bestie: it's only used to check hardware capabilities after all power dependencies are settled. so don't go poking at it early, mwah. β‘link_maskβ a bit-wise mask listing the SoundWire links reported by the Controller. bit-wise, iykyk. πhandleβ the ACPI parent handle. πͺͺldevβ info for each link, and it's controller-specific and kept opaque here. so likeβ¦ not our business, respectfully. πlink_listβ a list used to handle interrupts across all links. all of them. every single one. πshim_lockβ a mutex to handle concurrent rmw (read-modify-write) access to the shared SHIM registers. concurrency protection slay π«Άshim_maskβ flags to track initialization of the SHIM shared registers. π©shim_baseβ the sdw shim base. πalh_baseβ the sdw alh base. πperipheralsβ an array representing Peripherals exposed across all enabled links. π
β SEE ALSO β
go read these next, bestie, they're all in the Kernel file ./include/linux/soundwire/sdw_intel.h:
struct sdw_intel_stream_params_data(9)struct sdw_intel_stream_free_data(9)struct sdw_intel_ops(9)struct sdw_intel_acpi_info(9)struct sdw_intel_res(9)
and that's the whole page, no cap π this came out of ./include/linux/soundwire and it's stamped October 2026 β mwah, bye bestie, go forth and probe 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