/* * Copyright (c) 2021, Liav A. * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include #include #include namespace Kernel { class AsyncBlockDeviceRequest; class ATADevice; class ATAController : public StorageController , public Weakable { public: virtual void start_request(const ATADevice&, AsyncBlockDeviceRequest&) = 0; protected: ATAController() = default; }; }