hpt37x_init_one(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

okay so bestie, this is hpt37x_init_one β€” it literally initialises an HPT37X/302. that's the whole vibe. main character energy for your HPT37x chip fr fr.

(this lil page lives in the Kernel API Manual, in case you were wondering πŸŽ€)

✨ SYNOPSIS ✨

int hpt37x_init_one (struct pci_dev *dev , const struct pci_device_id *id );

🌸 ARGUMENTS 🌸

  • dev β€” the PCI device. like, the actual hardware we're doing a vibe check on πŸ’–
  • id β€” the entry in the match table. it's giving "which chip are you, bestie?" energy πŸ”₯

πŸ¦‹ DESCRIPTION πŸ¦‹

so we're initialising an HPT37x device. no cap, there are some interesting complications here πŸ‘€

firstly: the chip might report 366 and still be one of several variants. literally a "who am I really" moment 😭

secondly: all the timings depend on the clock for the chip, and we have to detect it and look it up. ngl, we must clock the clock πŸ”

here's the known chip mapping, bestie β€” this is the tea β˜• it may be missing a couple of later releases, so don't come for me if your fave isn't here πŸ™ˆ

  • HPT366 β€” PCI 4 (HPT366), Rev 0, Notes: Other driver
  • HPT366 β€” PCI 4 (HPT366), Rev 1, Notes: Other driver
  • HPT368 β€” PCI 4 (HPT366), Rev 2, Notes: Other driver
  • HPT370 β€” PCI 4 (HPT366), Rev 3, Notes: UDMA100
  • HPT370A β€” PCI 4 (HPT366), Rev 4, Notes: UDMA100
  • HPT372 β€” PCI 4 (HPT366), Rev 5, Notes: UDMA133 (1)
  • HPT372N β€” PCI 4 (HPT366), Rev 6, Notes: Other driver
  • HPT372A β€” PCI 5 (HPT372), Rev 1, Notes: UDMA133 (1)
  • HPT372N β€” PCI 5 (HPT372), Rev 2, Notes: Other driver
  • HPT302 β€” PCI 6 (HPT302), Rev 1, Notes: UDMA133
  • HPT302N β€” PCI 6 (HPT302), Rev 2, Notes: Other driver
  • HPT371 β€” PCI 7 (HPT371), Rev *, Notes: UDMA133
  • HPT374 β€” PCI 8 (HPT374), Rev *, Notes: UDMA133 4 channel
  • HPT372N β€” PCI 9 (HPT372N), Rev *, Notes: Other driver
(1) UDMA133 support depends on the bus clock. periodt. don't forget it πŸ’…

πŸ‘‘ SEE ALSO πŸ‘‘

the kernel file ./drivers/ata/pata_hpt37x.c β€” go read it, it ate πŸ’–

and the whole friend group of functions, all iconic, all (9):


aaaand that's the page, bestie 🫢 straight outta ./drivers/ata, dated October 2026 β€” slay, go init that chip πŸ’œβœ¨

πŸ“¦ where this page comes from