mirror of
https://github.com/reactos/reactos.git
synced 2024-10-01 06:57:08 +00:00
- Make sure this is XIP (Execute in Place) boot and not ramdisk boot before warning the user. Silences an incorrect debug print during ramdisk boot.
svn path=/trunk/; revision=34454
This commit is contained in:
parent
b60783d6c5
commit
e4202a6eec
|
@ -42,7 +42,7 @@ VOID
|
||||||
NTAPI
|
NTAPI
|
||||||
XIPInit(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
|
XIPInit(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
|
||||||
{
|
{
|
||||||
PCHAR CommandLine, XipBoot, XipRom, XipMegs, XipVerbose;
|
PCHAR CommandLine, XipBoot, XipRom, XipMegs, XipVerbose, XipRam;
|
||||||
PMEMORY_ALLOCATION_DESCRIPTOR XipDescriptor;
|
PMEMORY_ALLOCATION_DESCRIPTOR XipDescriptor;
|
||||||
|
|
||||||
/* Get the command line */
|
/* Get the command line */
|
||||||
|
@ -51,6 +51,7 @@ XIPInit(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
|
||||||
|
|
||||||
/* Get XIP settings */
|
/* Get XIP settings */
|
||||||
XipBoot = strstr(CommandLine, "XIPBOOT");
|
XipBoot = strstr(CommandLine, "XIPBOOT");
|
||||||
|
XipRam = strstr(CommandLine, "XIPRAM=");
|
||||||
XipRom = strstr(CommandLine, "XIPROM=");
|
XipRom = strstr(CommandLine, "XIPROM=");
|
||||||
XipMegs = strstr(CommandLine, "XIPMEGS=");
|
XipMegs = strstr(CommandLine, "XIPMEGS=");
|
||||||
XipVerbose = strstr(CommandLine, "XIPVERBOSE");
|
XipVerbose = strstr(CommandLine, "XIPVERBOSE");
|
||||||
|
@ -69,6 +70,12 @@ XIPInit(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
|
||||||
/* Find the XIP memory descriptor */
|
/* Find the XIP memory descriptor */
|
||||||
XipDescriptor = XIPpFindMemoryDescriptor(LoaderBlock);
|
XipDescriptor = XIPpFindMemoryDescriptor(LoaderBlock);
|
||||||
if (!XipDescriptor) return;
|
if (!XipDescriptor) return;
|
||||||
|
|
||||||
|
//
|
||||||
|
// Make sure this is really XIP, and not RAM Disk -- also validate XIP
|
||||||
|
// Basically, either this is a ROM boot or a RAM boot, but not both nor none
|
||||||
|
//
|
||||||
|
if (!((ULONG_PTR)XipRom ^ (ULONG_PTR)XipRam)) return;
|
||||||
|
|
||||||
/* FIXME: TODO */
|
/* FIXME: TODO */
|
||||||
DPRINT1("ReactOS does not yet support eXecute In Place boot technology\n");
|
DPRINT1("ReactOS does not yet support eXecute In Place boot technology\n");
|
||||||
|
|
Loading…
Reference in a new issue