mirror of
https://github.com/reactos/reactos.git
synced 2024-10-01 15:07:53 +00:00
- Enable RAMDISK support in LLB.
- Build commandline for OS Loader (FreeLDR). - Now ready to start loading freeldr.ini svn path=/trunk/; revision=45403
This commit is contained in:
parent
8649bab99c
commit
09504f4242
|
@ -29,10 +29,23 @@ POSLOADER_INIT
|
||||||
NTAPI
|
NTAPI
|
||||||
LlbHwLoadOsLoaderFromRam(VOID)
|
LlbHwLoadOsLoaderFromRam(VOID)
|
||||||
{
|
{
|
||||||
ULONG Base, Dummy;
|
ULONG Base, RootFs, Size;
|
||||||
|
CHAR CommandLine[64];
|
||||||
|
|
||||||
/* On versatile, the loader is loaded with the RAMDISK. Just get the address */
|
/* On versatile, the NAND image is loaded as the RAMDISK */
|
||||||
LlbEnvGetRamDiskInformation(&Base, &Dummy);
|
LlbEnvGetRamDiskInformation(&Base, &Size);
|
||||||
|
|
||||||
|
/* The LLB is first, which we already have, so skip it */
|
||||||
|
Base += 0x10000; // 64 KB (see nandflash)
|
||||||
|
|
||||||
|
/* The OS loader is next, followed by the root file system */
|
||||||
|
RootFs = Base + 0x80000; // 512 KB (see nandflash)
|
||||||
|
|
||||||
|
/* Set parameters for the OS loader */
|
||||||
|
sprintf(CommandLine, "rdbase=0x%x rdsize=0x%x", RootFs, Size);
|
||||||
|
LlbSetCommandLine(CommandLine);
|
||||||
|
|
||||||
|
/* Return the OS loader base address */
|
||||||
return (POSLOADER_INIT)Base;
|
return (POSLOADER_INIT)Base;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -94,7 +94,7 @@ LlbLoadOsLoader(
|
||||||
VOID
|
VOID
|
||||||
NTAPI
|
NTAPI
|
||||||
LlbBoot(
|
LlbBoot(
|
||||||
IN PCHAR CommandLine
|
VOID
|
||||||
);
|
);
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
|
@ -29,7 +29,7 @@ LlbStartup(IN ULONG Reserved,
|
||||||
printf("ReactOS ARM Low-Level Boot Loader [" __DATE__ " "__TIME__ "]\n");
|
printf("ReactOS ARM Low-Level Boot Loader [" __DATE__ " "__TIME__ "]\n");
|
||||||
|
|
||||||
/* Boot the OS Loader */
|
/* Boot the OS Loader */
|
||||||
LlbBoot("");
|
LlbBoot();
|
||||||
while (TRUE);
|
while (TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -124,7 +124,7 @@ LlbLoadOsLoader(VOID)
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
NTAPI
|
NTAPI
|
||||||
LlbBoot(IN PCHAR CommandLine)
|
LlbBoot(VOID)
|
||||||
{
|
{
|
||||||
/* Setup the ARM block */
|
/* Setup the ARM block */
|
||||||
LlbBuildArmBlock();
|
LlbBuildArmBlock();
|
||||||
|
@ -132,9 +132,6 @@ LlbBoot(IN PCHAR CommandLine)
|
||||||
/* Build the memory map */
|
/* Build the memory map */
|
||||||
LlbBuildMemoryMap();
|
LlbBuildMemoryMap();
|
||||||
|
|
||||||
/* Set the command-line */
|
|
||||||
LlbSetCommandLine(CommandLine);
|
|
||||||
|
|
||||||
/* Load the OS loader */
|
/* Load the OS loader */
|
||||||
LlbLoadOsLoader();
|
LlbLoadOsLoader();
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,7 @@
|
||||||
<linkerflag>-Wl,--image-base=0x80FFF000</linkerflag>
|
<linkerflag>-Wl,--image-base=0x80FFF000</linkerflag>
|
||||||
</if>
|
</if>
|
||||||
<if property="SARCH" value="versatile">
|
<if property="SARCH" value="versatile">
|
||||||
<linkerflag>-Wl,--image-base=0x007FF000</linkerflag>
|
<linkerflag>-Wl,--image-base=0x0080F000</linkerflag>
|
||||||
</if>
|
</if>
|
||||||
</group>
|
</group>
|
||||||
</module>
|
</module>
|
||||||
|
|
Loading…
Reference in a new issue