summaryrefslogtreecommitdiff
path: root/kernel/drivers/ahci.c
AgeCommit message (Collapse)Author
2024-12-09mmu: Make certain allocations physical and virtual mapping linearAnton Kling
Previously it was possible for fragmentation to occur and as a result certain allocations would have a linear virtual address space but not a linear physical address space. This is bad since a lot of calls to kmalloc_align rely upon both being linear, it has now been changed such that all allocations done by kmalloc_align now guarantee this mapping holds for both virtual and physical addresses. It was due to oversight and sheer luck that this had been working for so long.
2024-11-30kernel: Change math.h to use macrosAnton Kling
Having min/max be functions was a stupid decision in the first place
2024-07-02ahci: Bug fix, turns out the async optimization does not work that wellAnton Kling
2024-06-30ahci/ext2: small fixesAnton Kling
2024-06-30AHCI: Optimization to writesAnton Kling
Now it avoids waiting for completion if possible and can instead batch commands.
2024-06-30AHCI: Only check command slots that existAnton Kling
2024-06-17Reorganize logging codeAnton Kling
2024-04-26Kernel/VFS: Change polling from variables to functionsAnton Kling
Instead of having to store state in variables functions are called to check the object directly.
2024-04-26Kernel: More out of memory condition checksAnton Kling
2024-03-17stuffAnton Kling
2024-02-21New clang-format optionsAnton Kling
2023-11-13AHCI: Add write function.Anton Kling
This also changes the ext2 filesystem so it will now write to the file it mounted. Currently the file mounted is /dev/sda which points to a SATA drive.
2023-11-13Kernel: Add support for AHCI and make use of it with the current filesystem.Anton Kling
It will now also create a corresponding /dev/sd* device for each detected SATA drive. The filesystem still writes using the ATA driver. This should be fixed soon.
2023-11-13Memory: Fix problem where certain tables did not get marked as kernel.Anton Kling
This caused the tables to be cloned instead of having the pointer copied on the new page directory creations. This is just a solution to the symptom of having a bad design for memory managment. Maybe I will figure out something better.
2023-11-12AHCI: Add very basic AHCI and some additional helper functions to mmu.cAnton Kling
Currently certain parts of the code are taken from osdev wiki as there seems to be very little documentation that I can find on how H2D FIS is structured. Those parts, especially some of the uglier parts of the example code will be rewritten/changed.