STRUCT CDX_CONTROLLER(9)
π struct cdx_controller(9) π
okay bestie, welcome to the Kernel API Manual β we're doing struct cdx_controller(9) today and honestly? she's kind of a big deal. this is the CDX controller object, the main character of the whole controller situation. let's get into it π
β¨ NAME β¨
struct cdx_controller β the CDX controller object. that's her. that's the whole vibe. π
πΈ SYNOPSIS πΈ
like, here's what she actually looks like. type her out exactly, no cap:
struct cdx_controller {
struct device *dev;
void *priv;
struct irq_domain *msi_domain;
u32 id;
bool controller_registered;
struct cdx_ops *ops;
};
yes the closing brace has an extra space before it in the original and I'm keeping it because I respect her. π«Ά
π¦ Members π¦
okay so every single field, one by one, no skipping, we're being thorough because that's the whole point:
devβ the Linux device that's associated with this CDX controller. her little Linux-device bestie. πprivβ private data. that's it. that's the description. it's private, mind your business πmsi_domainβ the MSI domain. β¨idβ the controller ID. it's au32, it's an ID, it does what it says πcontroller_registeredβ aboolthat tells you if the controller is registered with the bus.true= she's on the bus, living her life.false= she is not. πopsβ the CDX controller ops. a pointer tostruct cdx_ops, the operations situation. π
π SEE ALSO π
okay the receipts, the whole friend group, go check them out:
Kernel file ./include/linux/cdx/cdx_bus.h, plus CDX_DEVICE(9), CDX_DEVICE_DRIVER_OVERRIDE(9), struct cdx_ops(9), struct cdx_device(9), struct cdx_driver(9), __cdx_driver_register(9), cdx_driver_unregister(9), cdx_dev_reset(9), cdx_set_master(9), cdx_clear_master(9), cdx_enable_msi(9), and cdx_disable_msi(9). that's the whole crew, go say hi π
ngl there are no options, no exit statuses, no warnings and no bugs listed on this page β she's a struct, not a command, so this is genuinely the whole thing. don't go looking for more, bestie, there isn't more β¨
and that's the page!! slay π§ source/version is ./include/linux/cdx and it's dated October 2026 β wrote it down so you can cite me later, 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