ARM64: initial port

This commit is contained in:
Bill Zissimopoulos
2021-12-07 14:40:28 +00:00
parent c208e0ecbd
commit 41cc70e573
49 changed files with 2151 additions and 315 deletions

View File

@ -1117,6 +1117,13 @@ enum
FspFsvolDeviceEaCacheItemSizeMax = FSP_FSCTL_ALIGN_UP(16384, PAGE_SIZE),
};
typedef struct
{
LIST_ENTRY ListEntry;
PIO_TIMER_ROUTINE TimerRoutine;
PDEVICE_OBJECT DeviceObject;
PVOID Context;
} FSP_DEVICE_TIMER;
typedef struct
{
PUNICODE_STRING FileName;
PVOID Context;
@ -1144,6 +1151,8 @@ typedef struct
LONG RefCount;
UINT32 Kind;
GUID SiloContainerId;
/* IoTimer emulation */
FSP_DEVICE_TIMER DeviceTimer;
} FSP_DEVICE_EXTENSION;
typedef struct
{
@ -1295,6 +1304,12 @@ NTSTATUS FspDeviceCopyList(
VOID FspDeviceDeleteList(
PDEVICE_OBJECT *DeviceObjects, ULONG DeviceObjectCount);
VOID FspDeviceDeleteAll(VOID);
NTSTATUS FspDeviceInitializeAllTimers(VOID);
VOID FspDeviceFinalizeAllTimers(VOID);
NTSTATUS FspDeviceInitializeTimer(PDEVICE_OBJECT DeviceObject,
PIO_TIMER_ROUTINE TimerRoutine, PVOID Context);
VOID FspDeviceStartTimer(PDEVICE_OBJECT DeviceObject);
VOID FspDeviceStopTimer(PDEVICE_OBJECT DeviceObject);
static inline
VOID FspDeviceGlobalLock(VOID)
{