NeKernel
dev
Loading...
Searching...
No Matches
Database.h
Go to the documentation of this file.
1
/* ========================================
2
3
Copyright (C) 2024-2025, Amlal El Mahrouss, licensed under the Apache 2.0 license.
4
5
======================================== */
6
#pragma once
7
8
#include <
KernelKit/PCI/Device.h
>
9
#include <
NeKit/Config.h
>
10
11
namespace
Kernel
{
12
namespace
Types
{
13
// https://wiki.osdev.org/PCI
14
enum class
PciDeviceKind
:
UChar
{
15
MassStorageController
= 0x1,
16
NetworkController
= 0x2,
17
DisplayController
= 0x3,
18
MultimediaController
= 0x4,
19
MemoryController
= 0x5,
20
Bridge
= 0x6,
21
CommunicationController
= 0x7,
22
GenericSystemPeripheral
= 0x8,
23
InputDeviceController
= 0x9,
24
DockingStation
= 0xa,
25
Processor
= 0xb,
26
SerialBusController
= 0xc,
27
WirelessController
= 0xd,
28
IntelligentController
= 0xe,
29
SatelliteCommunicationsController
= 0xf,
30
CoProcessor
= 0x40,
31
Unassgined
= 0xf,
32
Invalid
=
Unassgined
,
33
};
34
}
// namespace Types
35
}
// namespace Kernel
36
37
inline
BOOL
operator!=
(
const
Kernel::Types::PciDeviceKind
& lhs,
Kernel::UChar
rhs) {
38
return
rhs != (
Kernel::UChar
) lhs;
39
}
40
41
inline
BOOL
operator==
(
const
Kernel::Types::PciDeviceKind
& lhs,
Kernel::UChar
rhs) {
42
return
rhs == (
Kernel::UChar
) lhs;
43
}
44
45
inline
BOOL
operator!=
(
Kernel::UChar
lhs,
const
Kernel::Types::PciDeviceKind
& rhs) {
46
return
lhs != (
Kernel::UChar
) rhs;
47
}
48
49
inline
BOOL
operator==
(
Kernel::UChar
lhs,
const
Kernel::Types::PciDeviceKind
& rhs) {
50
return
lhs == (
Kernel::UChar
) rhs;
51
}
operator!=
BOOL operator!=(const Kernel::Types::PciDeviceKind &lhs, Kernel::UChar rhs)
Definition
Database.h:37
operator==
BOOL operator==(const Kernel::Types::PciDeviceKind &lhs, Kernel::UChar rhs)
Definition
Database.h:41
BOOL
#define BOOL
Device.h
Config.h
Kernel::Types
Definition
Database.h:12
Kernel::Types::PciDeviceKind
PciDeviceKind
Definition
Database.h:14
Kernel::Types::PciDeviceKind::CommunicationController
@ CommunicationController
Definition
Database.h:21
Kernel::Types::PciDeviceKind::MultimediaController
@ MultimediaController
Definition
Database.h:18
Kernel::Types::PciDeviceKind::Invalid
@ Invalid
Definition
Database.h:32
Kernel::Types::PciDeviceKind::NetworkController
@ NetworkController
Definition
Database.h:16
Kernel::Types::PciDeviceKind::DockingStation
@ DockingStation
Definition
Database.h:24
Kernel::Types::PciDeviceKind::DisplayController
@ DisplayController
Definition
Database.h:17
Kernel::Types::PciDeviceKind::SatelliteCommunicationsController
@ SatelliteCommunicationsController
Definition
Database.h:29
Kernel::Types::PciDeviceKind::Unassgined
@ Unassgined
Definition
Database.h:31
Kernel::Types::PciDeviceKind::IntelligentController
@ IntelligentController
Definition
Database.h:28
Kernel::Types::PciDeviceKind::GenericSystemPeripheral
@ GenericSystemPeripheral
Definition
Database.h:22
Kernel::Types::PciDeviceKind::InputDeviceController
@ InputDeviceController
Definition
Database.h:23
Kernel::Types::PciDeviceKind::MemoryController
@ MemoryController
Definition
Database.h:19
Kernel::Types::PciDeviceKind::MassStorageController
@ MassStorageController
Definition
Database.h:15
Kernel::Types::PciDeviceKind::CoProcessor
@ CoProcessor
Definition
Database.h:30
Kernel::Types::PciDeviceKind::WirelessController
@ WirelessController
Definition
Database.h:27
Kernel::Types::PciDeviceKind::Bridge
@ Bridge
Definition
Database.h:20
Kernel::Types::PciDeviceKind::Processor
@ Processor
Definition
Database.h:25
Kernel::Types::PciDeviceKind::SerialBusController
@ SerialBusController
Definition
Database.h:26
Kernel
UPS inline definitions.
Definition
Device.h:12
Kernel::UChar
__UINT8_TYPE__ UChar
Definition
Config.h:54
src
kernel
KernelKit
PCI
Database.h
Generated by
1.15.0