Initializer.h 528 B

12345678910111213141516171819202122
  1. #pragma once
  2. #include <AK/Types.h>
  3. #include <Kernel/ACPI/Definitions.h>
  4. #include <Kernel/PCI/Definitions.h>
  5. class PCI::Initializer {
  6. public:
  7. static PCI::Initializer& the();
  8. void initialize_pci_mmio_access(ACPI_RAW::MCFG& mcfg);
  9. void initialize_pci_io_access();
  10. void test_and_initialize(bool disable_pci_mmio);
  11. static void dismiss();
  12. private:
  13. ~Initializer();
  14. Initializer();
  15. bool test_acpi();
  16. bool test_pci_io();
  17. bool test_pci_mmio();
  18. void initialize_pci_mmio_access_after_test();
  19. };