efar_init_one(9)
π efar_init_one(9) β a Kernel API Manual moment β¨
okay so before we even get into it: this is from the Kernel API Manual, section 9, and the whole vibe is "we're registering a PCI device and being very normal about it" π
πΈ NAME πΈ
efar_init_one β the function that registers an EFAR ATA PCI device with kernel services, bestie. that's literally her whole job π
β¨ SYNOPSIS β¨
int efar_init_one (struct pci_dev *pdev , const struct pci_device_id *ent );
like, she takes two pointers and gives you back an int. simple. iconic. no cap π«Ά
π¦ ARGUMENTS π¦
pdevβ the PCI device you're registering, bestie. this is the main character of the whole operation πentβ the entry inefar_pci_tblthat matches up withpdev. they're a matched set, fr fr π
π₯ DESCRIPTION π₯
so this one gets called from the kernel PCI layer. that's it, that's the tea β the PCI layer is the one doing the calling, not you, so don't come for her πΈ
LOCKING: the locking here is inherited from the PCI layer, and heads up β it may sleep π΄π so don't go calling this from somewhere spicy where sleeping is not allowed. that's a whole situation you do not want.
β RETURN β
- Zero on success π slay, she worked
- or a
-ERRNOvalue π which means something went sideways, and the errno will tell you what
π SEE ALSO π
- kernel file
./drivers/ata/pata_efar.cβ go read the source, iykyk π efar_pre_reset(9)efar_cable_detect(9)efar_set_piomode(9)efar_set_dmamode(9)
the whole efar friend group, honestly π«Άβ¨
and that's the page, bestie π this one lives down in ./drivers/ata, dated October 2026, version vibes and all β mwah, go register some devices 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