serenity/Kernel/Debug.h.in
Liav A 0810c1b972 Kernel/Storage: Introduce basic abstraction layer for ATA components
This abstraction layer is mainly for ATA ports (AHCI ports, IDE ports).
The goal is to create a convenient and flexible framework so it's
possible to expand to support other types of controller (e.g. Intel PIIX
and ICH IDE controllers) and to abstract operations that are possible on
each component.

Currently only the ATA IDE code is affected by this, making it much
cleaner and readable - the ATA bus mastering code is moved to the
ATAPort code so more implementations in the near future can take
advantage of such functionality easily.

In addition to that, the hierarchy of the ATA IDE code resembles more of
the SATA AHCI code now, which means the IDEChannel class is solely
responsible for getting interrupts, passing them for further processing
in the ATAPort code to take care of the rest of the handling logic.
2022-07-19 11:07:34 +01:00

377 lines
5.7 KiB
C

/*
* Copyright (c) 2021, Paul Scharnofske
* Copyright (c) 2022, the SerenityOS developers.
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#ifndef AC97_DEBUG
#cmakedefine01 AC97_DEBUG
#endif
#ifndef AHCI_DEBUG
#cmakedefine01 AHCI_DEBUG
#endif
#ifndef ACPI_DEBUG
#cmakedefine01 ACPI_DEBUG
#endif
#ifndef APIC_DEBUG
#cmakedefine01 APIC_DEBUG
#endif
#ifndef APIC_SMP_DEBUG
#cmakedefine01 APIC_SMP_DEBUG
#endif
#ifndef ARP_DEBUG
#cmakedefine01 ARP_DEBUG
#endif
#ifndef ATA_DEBUG
#cmakedefine01 ATA_DEBUG
#endif
#ifndef BBFS_DEBUG
#cmakedefine01 BBFS_DEBUG
#endif
#ifndef BXVGA_DEBUG
#cmakedefine01 BXVGA_DEBUG
#endif
#ifndef COMMIT_DEBUG
#cmakedefine01 COMMIT_DEBUG
#endif
#ifndef CONTEXT_SWITCH_DEBUG
#cmakedefine01 CONTEXT_SWITCH_DEBUG
#endif
#ifndef CONTIGUOUS_VMOBJECT_DEBUG
#cmakedefine01 CONTIGUOUS_VMOBJECT_DEBUG
#endif
#ifndef E1000_DEBUG
#cmakedefine01 E1000_DEBUG
#endif
#ifndef E1000E_DEBUG
#cmakedefine01 E1000E_DEBUG
#endif
#ifndef ETHERNET_DEBUG
#cmakedefine01 ETHERNET_DEBUG
#endif
#ifndef ETHERNET_VERY_DEBUG
#cmakedefine01 ETHERNET_VERY_DEBUG
#endif
#ifndef EXEC_DEBUG
#cmakedefine01 EXEC_DEBUG
#endif
#ifndef EXT2_BLOCKLIST_DEBUG
#cmakedefine01 EXT2_BLOCKLIST_DEBUG
#endif
#ifndef EXT2_DEBUG
#cmakedefine01 EXT2_DEBUG
#endif
#ifndef EXT2_VERY_DEBUG
#cmakedefine01 EXT2_VERY_DEBUG
#endif
#ifndef FRAMEBUFFER_DEVICE_DEBUG
#cmakedefine01 FRAMEBUFFER_DEVICE_DEBUG
#endif
#ifndef FILEDESCRIPTION_DEBUG
#cmakedefine01 FILEDESCRIPTION_DEBUG
#endif
#ifndef FORK_DEBUG
#cmakedefine01 FORK_DEBUG
#endif
#ifndef FUTEX_DEBUG
#cmakedefine01 FUTEX_DEBUG
#endif
#ifndef FUTEXQUEUE_DEBUG
#cmakedefine01 FUTEXQUEUE_DEBUG
#endif
#ifndef GPT_DEBUG
#cmakedefine01 GPT_DEBUG
#endif
#ifndef HPET_COMPARATOR_DEBUG
#cmakedefine01 HPET_COMPARATOR_DEBUG
#endif
#ifndef HPET_DEBUG
#cmakedefine01 HPET_DEBUG
#endif
#ifndef ICMP_DEBUG
#cmakedefine01 ICMP_DEBUG
#endif
#ifndef INTEL_GRAPHICS_DEBUG
#cmakedefine01 INTEL_GRAPHICS_DEBUG
#endif
#ifndef INTERRUPT_DEBUG
#cmakedefine01 INTERRUPT_DEBUG
#endif
#ifndef IO_DEBUG
#cmakedefine01 IO_DEBUG
#endif
#ifndef IOAPIC_DEBUG
#cmakedefine01 IOAPIC_DEBUG
#endif
#ifndef ISO9660_DEBUG
#cmakedefine01 ISO9660_DEBUG
#endif
#ifndef ISO9660_VERY_DEBUG
#cmakedefine01 ISO9660_VERY_DEBUG
#endif
#ifndef IPV4_DEBUG
#cmakedefine01 IPV4_DEBUG
#endif
#ifndef IPV4_SOCKET_DEBUG
#cmakedefine01 IPV4_SOCKET_DEBUG
#endif
#ifndef IRQ_DEBUG
#cmakedefine01 IRQ_DEBUG
#endif
#ifndef KEYBOARD_DEBUG
#cmakedefine01 KEYBOARD_DEBUG
#endif
#ifndef KMALLOC_DEBUG
#cmakedefine01 KMALLOC_DEBUG
#endif
#ifndef KMALLOC_VERIFY_NO_SPINLOCK_HELD
#cmakedefine01 KMALLOC_VERIFY_NO_SPINLOCK_HELD
#endif
#ifndef LOCAL_SOCKET_DEBUG
#cmakedefine01 LOCAL_SOCKET_DEBUG
#endif
#ifndef LOCK_DEBUG
#cmakedefine01 LOCK_DEBUG
#endif
#ifndef LOCK_IN_CRITICAL_DEBUG
#cmakedefine01 LOCK_IN_CRITICAL_DEBUG
#endif
#ifndef LOCK_RANK_ENFORCEMENT
#cmakedefine01 LOCK_RANK_ENFORCEMENT
#endif
#ifndef LOCK_RESTORE_DEBUG
#cmakedefine01 LOCK_RESTORE_DEBUG
#endif
#ifndef LOCK_SHARED_UPGRADE_DEBUG
#cmakedefine01 LOCK_SHARED_UPGRADE_DEBUG
#endif
#ifndef LOCK_TRACE_DEBUG
#cmakedefine01 LOCK_TRACE_DEBUG
#endif
#ifndef MASTERPTY_DEBUG
#cmakedefine01 MASTERPTY_DEBUG
#endif
#ifndef MBR_DEBUG
#cmakedefine01 MBR_DEBUG
#endif
#ifndef MOUSE_DEBUG
#cmakedefine01 MOUSE_DEBUG
#endif
#ifndef MEMORY_DEVICE_DEBUG
#cmakedefine01 MEMORY_DEVICE_DEBUG
#endif
#ifndef MULTIPROCESSOR_DEBUG
#cmakedefine01 MULTIPROCESSOR_DEBUG
#endif
#ifndef NE2000_DEBUG
#cmakedefine01 NE2000_DEBUG
#endif
#ifndef NETWORK_TASK_DEBUG
#cmakedefine01 NETWORK_TASK_DEBUG
#endif
#ifndef NVME_DEBUG
#cmakedefine01 NVME_DEBUG
#endif
#ifndef OFFD_DEBUG
#cmakedefine01 OFFD_DEBUG
#endif
#ifndef PAGE_FAULT_DEBUG
#cmakedefine01 PAGE_FAULT_DEBUG
#endif
#ifndef PATA_DEBUG
#cmakedefine01 PATA_DEBUG
#endif
#ifndef PCI_DEBUG
#cmakedefine01 PCI_DEBUG
#endif
#ifndef POLL_SELECT_DEBUG
#cmakedefine01 POLL_SELECT_DEBUG
#endif
#ifndef PROCESS_DEBUG
#cmakedefine01 PROCESS_DEBUG
#endif
#ifndef PROCFS_DEBUG
#cmakedefine01 PROCFS_DEBUG
#endif
#ifndef PS2MOUSE_DEBUG
#cmakedefine01 PS2MOUSE_DEBUG
#endif
#ifndef PTMX_DEBUG
#cmakedefine01 PTMX_DEBUG
#endif
#ifndef ROUTING_DEBUG
#cmakedefine01 ROUTING_DEBUG
#endif
#ifndef RTL8139_DEBUG
#cmakedefine01 RTL8139_DEBUG
#endif
#ifndef RTL8168_DEBUG
#cmakedefine01 RTL8168_DEBUG
#endif
#ifndef SB16_DEBUG
#cmakedefine01 SB16_DEBUG
#endif
#ifndef SCHEDULER_DEBUG
#cmakedefine01 SCHEDULER_DEBUG
#endif
#ifndef SCHEDULER_RUNNABLE_DEBUG
#cmakedefine01 SCHEDULER_RUNNABLE_DEBUG
#endif
#ifndef SIGNAL_DEBUG
#cmakedefine01 SIGNAL_DEBUG
#endif
#ifndef SLAVEPTY_DEBUG
#cmakedefine01 SLAVEPTY_DEBUG
#endif
#ifndef SMP_DEBUG
#cmakedefine01 SMP_DEBUG
#endif
#ifndef SOCKET_DEBUG
#cmakedefine01 SOCKET_DEBUG
#endif
#ifndef STORAGE_DEVICE_DEBUG
#cmakedefine01 STORAGE_DEVICE_DEBUG
#endif
#ifndef TCP_DEBUG
#cmakedefine01 TCP_DEBUG
#endif
#ifndef TCP_SOCKET_DEBUG
#cmakedefine01 TCP_SOCKET_DEBUG
#endif
#ifndef THREAD_DEBUG
#cmakedefine01 THREAD_DEBUG
#endif
#ifndef TTY_DEBUG
#cmakedefine01 TTY_DEBUG
#endif
#ifndef UDP_DEBUG
#cmakedefine01 UDP_DEBUG
#endif
#ifndef UHCI_DEBUG
#cmakedefine01 UHCI_DEBUG
#endif
#ifndef UHCI_VERBOSE_DEBUG
#cmakedefine01 UHCI_VERBOSE_DEBUG
#endif
#ifndef USB_DEBUG
#cmakedefine01 USB_DEBUG
#endif
#ifndef VFS_DEBUG
#cmakedefine01 VFS_DEBUG
#endif
#ifndef VMWARE_BACKDOOR_DEBUG
#cmakedefine01 VMWARE_BACKDOOR_DEBUG
#endif
#ifndef VOLATILE_PAGE_RANGES_DEBUG
#cmakedefine01 VOLATILE_PAGE_RANGES_DEBUG
#endif
#ifndef VIRTIO_DEBUG
#cmakedefine01 VIRTIO_DEBUG
#endif
#ifndef VIRTUAL_CONSOLE_DEBUG
#cmakedefine01 VIRTUAL_CONSOLE_DEBUG
#endif
#ifndef VRA_DEBUG
#cmakedefine01 VRA_DEBUG
#endif
#ifndef WAITBLOCK_DEBUG
#cmakedefine01 WAITBLOCK_DEBUG
#endif
#ifndef WAITQUEUE_DEBUG
#cmakedefine01 WAITQUEUE_DEBUG
#endif