1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 08:08:12 +00:00

Kernel: Print out PCI devices during boot

This will make boot logs much more useful on real hardware, by showing
exactly what Serenity is trying to boot on.
This commit is contained in:
Conrad Pankoff 2019-08-11 14:51:30 +10:00 committed by Andreas Kling
parent 3026c37d5d
commit d1a7316799

View file

@ -32,6 +32,7 @@
#include <Kernel/Multiboot.h>
#include <Kernel/Net/E1000NetworkAdapter.h>
#include <Kernel/Net/NetworkTask.h>
#include <Kernel/PCI.h>
#include <Kernel/TTY/PTYMultiplexer.h>
#include <Kernel/TTY/VirtualConsole.h>
#include <Kernel/VM/MemoryManager.h>
@ -215,6 +216,16 @@ extern "C" [[noreturn]] void init()
MemoryManager::initialize();
PIT::initialize();
PCI::enumerate_all([](const PCI::Address& address, PCI::ID id) {
kprintf("PCI device: bus=%d slot=%d function=%d id=%w:%w\n",
address.bus(),
address.slot(),
address.function(),
id.vendor_id,
id.device_id
);
});
new BXVGADevice;
auto e1000 = E1000NetworkAdapter::autodetect();