HyperDbg Debugger
Loading...
Searching...
No Matches
hardware.c File Reference
#include "common.h"

Macros

#define ARRAY_SIZE(array)   (sizeof(array) / sizeof(array[0]))
 

Functions

 C_ASSERT (ARRAY_SIZE(UartHardwareDrivers)==19)
 

Variables

UART_HARDWARE_DRIVER UsifHardwareDriver
 
PUART_HARDWARE_DRIVER UartHardwareDrivers []
 
ULONG UartHardwareDriverCount = ARRAY_SIZE(UartHardwareDrivers)
 

Macro Definition Documentation

◆ ARRAY_SIZE

#define ARRAY_SIZE ( array)    (sizeof(array) / sizeof(array[0]))

Function Documentation

◆ C_ASSERT()

C_ASSERT ( ARRAY_SIZE(UartHardwareDrivers) = =19)

Variable Documentation

◆ UartHardwareDriverCount

ULONG UartHardwareDriverCount = ARRAY_SIZE(UartHardwareDrivers)

◆ UartHardwareDrivers

PUART_HARDWARE_DRIVER UartHardwareDrivers[]
35 {
36
37#if defined(_X86_) || defined(_AMD64_)
38
42 NULL,
43 NULL,
44 NULL,
45 NULL, // 0x3-0x6
46 NULL, // 0x7 = UEFI debug protocol
47 NULL,
48 NULL,
49 NULL, // 0x8-0xA
50 &UsifHardwareDriver, // 0xB
51 NULL,
52 NULL,
53 NULL,
54 NULL,
55 NULL,
56 NULL, // 0xC-0x11
58
59#elif defined(_ARM_) || defined(_ARM64_)
60
61 NULL, // 0x0
63 NULL, // 0x2
64 &PL011HardwareDriver, // 0x3
67 &OmapHardwareDriver, // 0x6
68 NULL, // 0x7 = UEFI debug protocol
72 NULL, // 0xB
73 &MX6HardwareDriver, // 0xC
75 &SBSAHardwareDriver, // 0xE
76 NULL, // 0xF = ARM DCC
77 &Bcm2835HardwareDriver, // 0x10
78 &SDM845HardwareDriver, // 0x11
80
81#else
82
83# error "Unknown Processor Architecture"
84
85#endif
86
87};
UART_HARDWARE_DRIVER Apm88xxxxHardwareDriver
Definition apm88xxxx.c:144
UART_HARDWARE_DRIVER Bcm2835HardwareDriver
Definition bcm2835.c:339
UART_HARDWARE_DRIVER UsifHardwareDriver
Definition hardware.c:23
UART_HARDWARE_DRIVER MSM8974HardwareDriver
Definition msm8974.c:638
UART_HARDWARE_DRIVER MSM8x60HardwareDriver
Definition msm8x60.c:639
UART_HARDWARE_DRIVER MX6HardwareDriver
Definition mx6uart.c:382
NULL()
Definition test-case-generator.py:530
UART_HARDWARE_DRIVER NvidiaHardwareDriver
Definition nvidia.c:110
UART_HARDWARE_DRIVER OmapHardwareDriver
Definition omap.c:254
UART_HARDWARE_DRIVER SBSAHardwareDriver
Definition pl011.c:604
UART_HARDWARE_DRIVER SBSA32HardwareDriver
Definition pl011.c:611
UART_HARDWARE_DRIVER PL011HardwareDriver
Definition pl011.c:597
UART_HARDWARE_DRIVER Sam5250HardwareDriver
Definition sam5250.c:343
UART_HARDWARE_DRIVER SDM845HardwareDriver
Definition sdm845.c:1441
UART_HARDWARE_DRIVER SpiMax311HardwareDriver
Definition spimax311.c:943
UART_HARDWARE_DRIVER Uart16550HardwareDriver
Definition uart16550.c:814
UART_HARDWARE_DRIVER MM16550HardwareDriver
Definition uart16550.c:821
UART_HARDWARE_DRIVER Legacy16550HardwareDriver
Definition uart16550.c:807

◆ UsifHardwareDriver

UART_HARDWARE_DRIVER UsifHardwareDriver
Initial value:
= {
BOOLEAN UsifSetBaud(_Inout_ PCPPORT Port, ULONG Rate)
Definition usif.c:79
BOOLEAN UsifRxReady(_Inout_ PCPPORT Port)
Definition usif.c:231
UART_STATUS UsifGetByte(_Inout_ PCPPORT Port, _Out_ PUCHAR Byte)
Definition usif.c:116
UART_STATUS UsifPutByte(_Inout_ PCPPORT Port, UCHAR Byte, BOOLEAN BusyWait)
Definition usif.c:174
BOOLEAN UsifInitializePort(_In_opt_ _Null_terminated_ PCHAR LoadOptions, _Inout_ PCPPORT Port, BOOLEAN MemoryMapped, UCHAR AccessSize, UCHAR BitWidth)
Definition usif.c:30