Author: dquintana Date: Mon Jul 24 15:08:16 2017 New Revision: 75396
URL: http://svn.reactos.org/svn/reactos?rev=75396&view=rev Log: [BOOTLIB] Stub out some arch-specific functions (fixes x64 build).
[USBPORT] Actually fix x64 build. The old code was not working at all, but the bootlib errors cancelled the build earlier than I thought.
The X64 compilation now succeeds, but cabman crashes trying to generate the bootcd.
Modified: trunk/reactos/boot/environ/lib/arch/stub/arch.c trunk/reactos/boot/environ/lib/mm/stub/mm.c trunk/reactos/drivers/usb/usbport/usbport.h trunk/reactos/sdk/include/reactos/drivers/usbport/usbmport.h
Modified: trunk/reactos/boot/environ/lib/arch/stub/arch.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/lib/arch/stub/... ============================================================================== --- trunk/reactos/boot/environ/lib/arch/stub/arch.c [iso-8859-1] (original) +++ trunk/reactos/boot/environ/lib/arch/stub/arch.c [iso-8859-1] Mon Jul 24 15:08:16 2017 @@ -44,3 +44,9 @@ return STATUS_NOT_IMPLEMENTED; }
+VOID +Archx86TransferTo32BitApplicationAsm (VOID) +{ + EfiPrintf(L" Archx86TransferTo32BitApplicationAsm NOT IMPLEMENTED for this platform\r\n"); +} +
Modified: trunk/reactos/boot/environ/lib/mm/stub/mm.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/environ/lib/mm/stub/mm... ============================================================================== --- trunk/reactos/boot/environ/lib/mm/stub/mm.c [iso-8859-1] (original) +++ trunk/reactos/boot/environ/lib/mm/stub/mm.c [iso-8859-1] Mon Jul 24 15:08:16 2017 @@ -9,6 +9,10 @@ /* INCLUDES ******************************************************************/
#include "bl.h" + +BL_ADDRESS_RANGE MmArchKsegAddressRange; +ULONG_PTR MmArchTopOfApplicationAddressSpace; +ULONG MmArchLargePageSize;
/* FUNCTIONS *****************************************************************/
@@ -23,3 +27,26 @@ EfiPrintf(L" MmArchInitialize NOT IMPLEMENTED for this platform\r\n"); return STATUS_NOT_IMPLEMENTED; } + +NTSTATUS +MmMapPhysicalAddress ( + _Inout_ PPHYSICAL_ADDRESS PhysicalAddressPtr, + _Inout_ PVOID* VirtualAddressPtr, + _Inout_ PULONGLONG SizePtr, + _In_ ULONG CacheAttributes + ) +{ + EfiPrintf(L" MmMapPhysicalAddress NOT IMPLEMENTED for this platform\r\n"); + return STATUS_NOT_IMPLEMENTED; +} + +BOOLEAN +MmArchTranslateVirtualAddress ( + _In_ PVOID VirtualAddress, + _Out_opt_ PPHYSICAL_ADDRESS PhysicalAddress, + _Out_opt_ PULONG CachingFlags + ) +{ + EfiPrintf(L" MmMapPhysicalAddress NOT IMPLEMENTED for this platform\r\n"); + return FALSE; +}
Modified: trunk/reactos/drivers/usb/usbport/usbport.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/usbport/usbport... ============================================================================== --- trunk/reactos/drivers/usb/usbport/usbport.h [iso-8859-1] (original) +++ trunk/reactos/drivers/usb/usbport/usbport.h [iso-8859-1] Mon Jul 24 15:08:16 2017 @@ -359,11 +359,17 @@ /* Miniport extension should be aligned on 0x100 */ #if !defined(_M_X64) ULONG Padded[34]; +#else + ULONG Padded[0]; #endif
} USBPORT_DEVICE_EXTENSION, *PUSBPORT_DEVICE_EXTENSION;
+#if !defined(_M_X64) C_ASSERT(sizeof(USBPORT_DEVICE_EXTENSION) == 0x400); +#else +C_ASSERT(sizeof(USBPORT_DEVICE_EXTENSION) == 0x600); +#endif
typedef struct _USBPORT_RH_DESCRIPTORS { USB_DEVICE_DESCRIPTOR DeviceDescriptor; @@ -397,7 +403,7 @@ ULONG CallbackContext; } USBPORT_ASYNC_CALLBACK_DATA, *PUSBPORT_ASYNC_CALLBACK_DATA;
-C_ASSERT(sizeof(USBPORT_ASYNC_CALLBACK_DATA) == 84 + sizeof(PVOID)); +C_ASSERT(sizeof(USBPORT_ASYNC_CALLBACK_DATA) == 16 + 18 * sizeof(PVOID));
typedef struct _TIMER_WORK_QUEUE_ITEM { WORK_QUEUE_ITEM WqItem;
Modified: trunk/reactos/sdk/include/reactos/drivers/usbport/usbmport.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/sdk/include/reactos/drivers... ============================================================================== --- trunk/reactos/sdk/include/reactos/drivers/usbport/usbmport.h [iso-8859-1] (original) +++ trunk/reactos/sdk/include/reactos/drivers/usbport/usbmport.h [iso-8859-1] Mon Jul 24 15:08:16 2017 @@ -62,7 +62,7 @@ UCHAR Reserved3; } USBPORT_RESOURCES, *PUSBPORT_RESOURCES;
-C_ASSERT(sizeof(USBPORT_RESOURCES) == 40 + 3 * sizeof(PVOID)); +C_ASSERT(sizeof(USBPORT_RESOURCES) == 24 + 7 * sizeof(PVOID));
typedef ULONG MPSTATUS; // Miniport status typedef ULONG RHSTATUS; // Roothub status @@ -578,7 +578,7 @@ USBPORT_REGISTRATION_PACKET Packet; } USBPORT_MINIPORT_INTERFACE, *PUSBPORT_MINIPORT_INTERFACE;
-C_ASSERT(sizeof(USBPORT_MINIPORT_INTERFACE) == 328 + 2 * sizeof(PVOID)); +C_ASSERT(sizeof(USBPORT_MINIPORT_INTERFACE) == 32 + 76 * sizeof(PVOID));
#define USBPORT_TRANSFER_DIRECTION_OUT 1 // From host to device typedef struct _USBPORT_ENDPOINT_PROPERTIES { @@ -607,7 +607,7 @@ ULONG Reserved6; } USBPORT_ENDPOINT_PROPERTIES, *PUSBPORT_ENDPOINT_PROPERTIES;
-C_ASSERT(sizeof(USBPORT_ENDPOINT_PROPERTIES) == 64); +C_ASSERT(sizeof(USBPORT_ENDPOINT_PROPERTIES) == 48 + 4 * sizeof(PVOID));
typedef struct _USBPORT_SCATTER_GATHER_ELEMENT { PHYSICAL_ADDRESS SgPhysicalAddress; @@ -617,7 +617,7 @@ ULONG Reserved2; } USBPORT_SCATTER_GATHER_ELEMENT, *PUSBPORT_SCATTER_GATHER_ELEMENT;
-C_ASSERT(sizeof(USBPORT_SCATTER_GATHER_ELEMENT) == 20 + sizeof(PVOID)); +C_ASSERT(sizeof(USBPORT_SCATTER_GATHER_ELEMENT) == 24);
typedef struct _USBPORT_SCATTER_GATHER_LIST { ULONG Flags; @@ -627,7 +627,7 @@ USBPORT_SCATTER_GATHER_ELEMENT SgElement[1]; } USBPORT_SCATTER_GATHER_LIST, *PUSBPORT_SCATTER_GATHER_LIST;
-C_ASSERT(sizeof(USBPORT_SCATTER_GATHER_LIST) == 36 + sizeof(PVOID)); +C_ASSERT(sizeof(USBPORT_SCATTER_GATHER_LIST) == 24 + 4 * sizeof(PVOID));
typedef struct _USBPORT_TRANSFER_PARAMETERS { ULONG TransferFlags;