/* * Copyright (c) 2023, Edwin Rijkee * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include #include namespace Kernel { class VoodooGraphicsAdapter final : public GenericGraphicsAdapter , public PCI::Device { public: static ErrorOr probe(PCI::DeviceIdentifier const&); static ErrorOr> create(PCI::DeviceIdentifier const&); virtual ~VoodooGraphicsAdapter() = default; virtual StringView device_name() const override { return "VoodooGraphicsAdapter"sv; } private: ErrorOr initialize_adapter(PCI::DeviceIdentifier const&); explicit VoodooGraphicsAdapter(PCI::DeviceIdentifier const&); LockRefPtr m_display_connector; }; }