1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 20:57:44 +00:00

IDEDiskDevice: Implement basic DMA writes.

This could share more code with reads, and generally be better. But it works
and it's considerably faster than PIO, so let's use it. :^)
This commit is contained in:
Andreas Kling 2019-05-26 14:58:21 +02:00
parent dd595fe865
commit bb288c1baf
2 changed files with 79 additions and 3 deletions

View file

@ -39,9 +39,10 @@ private:
void initialize();
bool wait_for_irq();
bool read_sectors_with_dma(dword sector, word count, byte*);
bool read_sectors(dword start_sector, word count, byte* buffer);
bool write_sectors(dword start_sector, word count, const byte* data);
bool read_sectors_with_dma(dword lba, word count, byte*);
bool write_sectors_with_dma(dword lba, word count, const byte*);
bool read_sectors(dword lba, word count, byte* buffer);
bool write_sectors(dword lba, word count, const byte* data);
Lock m_lock { "IDEDiskDevice" };
word m_cylinders { 0 };