1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2026-01-16 03:01:00 +00:00
serenity/Kernel/Storage
Liav A 793d315994 Kernel: Don't reset AHCI ports during boot unless requested
Instead of blindly resetting every AHCI port, let's just reset only the
controller by default. The user can still request to reset everything
with a new kernel boot argument called ahci_reset_mode which is set
by default to "controller", so the code will only invoke an HBA reset.

This kernel boot argument can be set to 3 different values:
1. "controller" - reset the HBA and skip resetting AHCI ports
2. "none" - don't reset anything, so we rely on the firmware to
initialize the AHCI HBA and ports for us.
3. "complete" - reset the AHCI HBA and ports.
2021-03-13 09:52:31 +01:00
..
Partition Kernel: Convert klog() => AK::Format in Storage 2021-03-12 15:22:35 +01:00
AHCI.h Kernel: Add basic AHCI functionality 2021-03-05 11:29:34 +01:00
AHCIController.cpp Kernel: Don't reset AHCI ports during boot unless requested 2021-03-13 09:52:31 +01:00
AHCIController.h Kernel: Add basic AHCI functionality 2021-03-05 11:29:34 +01:00
AHCIPort.cpp Kernel: Don't reset AHCI ports during boot unless requested 2021-03-13 09:52:31 +01:00
AHCIPort.h Kernel: Don't reset AHCI ports during boot unless requested 2021-03-13 09:52:31 +01:00
AHCIPortHandler.cpp Kernel: Don't reset AHCI ports during boot unless requested 2021-03-13 09:52:31 +01:00
AHCIPortHandler.h Kernel: Add basic AHCI functionality 2021-03-05 11:29:34 +01:00
ATA.h Kernel: Add basic AHCI functionality 2021-03-05 11:29:34 +01:00
IDEChannel.cpp Kernel: Convert klog() => AK::Format in IDEChannel 2021-03-12 12:16:06 +01:00
IDEChannel.h Kernel: Clear pending interrupts before enabling IRQs of IDE Channel 2021-02-05 09:10:37 +01:00
IDEController.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
IDEController.h Kernel: Untangle StorageController from PCI::DeviceController 2021-01-22 22:17:39 +01:00
PATADiskDevice.cpp Kernel: Use global mechanism to determine minor number of Storage Device 2021-03-05 11:29:34 +01:00
PATADiskDevice.h Kernel: Use global mechanism to determine minor number of Storage Device 2021-03-05 11:29:34 +01:00
RamdiskController.cpp Everywhere: Rename ASSERT => VERIFY 2021-02-23 20:56:54 +01:00
RamdiskController.h Kernel: Implement RamdiskDevice 2021-01-22 22:17:39 +01:00
RamdiskDevice.cpp Kernel: Convert klog() => AK::Format in Storage 2021-03-12 15:22:35 +01:00
RamdiskDevice.h Kernel: Make device generate their own names 2021-01-22 22:17:39 +01:00
SATADiskDevice.cpp Kernel: Add basic AHCI functionality 2021-03-05 11:29:34 +01:00
SATADiskDevice.h Kernel: Add basic AHCI functionality 2021-03-05 11:29:34 +01:00
StorageController.h Kernel: Add enum values for later implementation of AHCI 2021-03-05 11:29:34 +01:00
StorageDevice.cpp Kernel: Convert klog() => AK::Format in Storage 2021-03-12 15:22:35 +01:00
StorageDevice.h Kernel: Use global mechanism to determine minor number of Storage Device 2021-03-05 11:29:34 +01:00
StorageManagement.cpp Kernel: Add basic AHCI functionality 2021-03-05 11:29:34 +01:00
StorageManagement.h Kernel: Use global mechanism to determine minor number of Storage Device 2021-03-05 11:29:34 +01:00