hcd_buffer_create(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– hcd_buffer_create(9) πŸ’–

okay bestie, welcome to the Kernel API Manual β€” this one's hcd_buffer_create, and it's literally the moment your host controller gets its very own buffer pools ✨


NAME 🌸

hcd_buffer_create β€” initialize buffer pools

Yeah. That's it. That's the whole job. Slay.


SYNOPSIS πŸŽ€

int hcd_buffer_create (struct usb_hcd *hcd );

ARGUMENTS πŸ¦‹

  • hcd β€” the bus whose buffer pools are to be initialized πŸ‘‘

CONTEXT πŸ’…

task context, and no cap: this one might sleep 😴 so don't be out here calling it from somewhere spicy.


DESCRIPTION 🌈

Call this as part of initializing a host controller that uses the DMA memory allocators πŸ’–

It initializes some pools of dma-coherent memory that will be shared by all the drivers using that controller β€” like, the whole friend group shares the snack stash, iykyk πŸ“

When you're done with those pools, call hcd_buffer_destroy to clean up after them 🧹✨ (yes bestie, you have to actually clean up. main character energy includes aftercare.)


RETURN ⭐

  • 0 if successful πŸ˜ŒπŸ’–
  • a negative errno value otherwise πŸ’€

SEE ALSO πŸ”₯


btw this whole page lives under ./drivers/usb/core 🫢 β€” dated October 2026 in the Kernel API Manual, and that's the whole vibe check. go forth and initialize your pools, bestie πŸ’œβœ¨πŸŽ€

πŸ“¦ where this page comes from