NCR5380_transfer_pio(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NCR5380_transfer_pio πŸ’…

okay bestie, welcome to the Kernel API Manual page for NCR5380_transfer_pio β€” yes that's her full name and yes she's the main character of this file πŸŽ€


🌸 NAME 🌸

NCR5380_transfer_pio β€” she transfers data in whatever phase you tell her, using polled I/O πŸ‘‘ no cap, that's literally the whole job.


✨ SYNOPSIS ✨

void NCR5380_transfer_pio (struct Scsi_Host *instance , unsigned char
*phase , int *count , unsigned char **data , unsigned int can_sleep );

it's giving "void function, five args, zero notes" 😭 copy it exactly, bestie, don't you dare retype it from memory πŸ’€


πŸ¦‹ ARGUMENTS πŸ¦‹

  • instance β€” the instance of the driver 🫢 like, which driver are we even talking to, that one.
  • phase β€” a pointer to what phase is expected ✨ she's pointing at the vibe we're expecting, okay?
  • count β€” a pointer to the number of bytes to transfer 🌸 so we know how much data we're moving.
  • data β€” a pointer to a data pointer πŸŽ€ yes, a double pointer, she's fancy like that, deal with it.
  • can_sleep β€” 1 or 0 when sleeping is permitted or not, respectively πŸ’€ so 1 = nap time allowed, 0 = no napping on the job 😀

πŸ’œ RETURN πŸ’œ

void. that's it, that's the return. but listen β€” *phase, *count, and *data are all modified in place πŸ‘€ so the pointers you passed in get their contents rewritten, fr fr don't be surprised when they come back different, that's the whole point 🫢


🌈 SEE ALSO 🌈

Kernel file ./drivers/scsi/NCR5380.c β€” plus the whole friend group, all of them, every single one, no skipping πŸ™ˆ:


ngl the whole squad lives in ./drivers/scsi and they're all lowkey iconic together, go read them, iykyk πŸ”₯

k bye bestie, this page ships from ./drivers/scsi and it's dated October 2026 β€” slay, stay polled, and don't forget to sleep when can_sleep says you can πŸ’–πŸ§šβ­

πŸ“¦ where this page comes from