Skip to content

Commit

Permalink
Kernel: Expand PATA driver to support multiple hard drives (SerenityO…
Browse files Browse the repository at this point in the history
…S#365)

The previous implementation of the PIIX3/4 PATA/IDE channel driver only
supported a single drive, as the object model was wrong (the channel
inherits the IRQ, not the disk drive itself). This fixes it by 'attaching'
two `PATADiskDevices` to a `PATAChannel`, which makes more sense.

The reading/writing code is presented as is, which violates the spec
outlined by Seagate in the linked datasheet. That spec is rather old,
so it might not be 100% up to date, though may cause issues on real
hardware, so until we can actually test it, this will suffice.
  • Loading branch information
Quaker762 authored and awesomekling committed Jul 28, 2019
1 parent cf57d64 commit 59e122f
Show file tree
Hide file tree
Showing 6 changed files with 435 additions and 232 deletions.
Loading

0 comments on commit 59e122f

Please sign in to comment.