ata_bmdma_port_start32(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 ata_bmdma_port_start32(9) 🌸

okay bestie, welcome to the Linux Kernel API Manual page for ata_bmdma_port_start32 β€” yes that name is a mouthful, no I will not be pronouncing it out loud πŸ’…


✨ NAME ✨

ata_bmdma_port_start32 β€” get a port all set up for dma. that's it, that's the whole vibe πŸŽ€


✨ SYNOPSIS ✨

int ata_bmdma_port_start32 (struct ata_port *ap );

✨ ARGUMENTS ✨

  • ap β€” the port we're initializing πŸ’–

✨ DESCRIPTION ✨

so this one gets called just after the data structures for each port are initialized, right? and what it does is genuinely iconic: it enables 32bit PIO and allocates space for the PRD table. periodt 🫢

it may be used as the port_start entry in ata_port_operations for devices that are capable of 32bit PIO β€” iykyk, that's the whole point of it existing ✨

LOCKING: inherited from caller. no cap, you don't gotta do anything extra here, just whatever lock situation you already had walking in πŸ”’


✨ SEE ALSO ✨

kernel file ./drivers/ata/libata-sff.c, plus the whole friend group πŸ‘‘:

like, the entire libata friend group showed up to the group chat, and honestly? we love that for them πŸ˜­πŸ’–


okay that's the whole page bestie, go forth and initialize ur ports πŸ¦‹πŸ’œ

this has been your girl, signing off β€” brought to you by ./drivers/ata, dated October 2026, and yes the source line said the same thing twice so I'm saying it once with love 🌈✨

πŸ“¦ where this page comes from