[ros-diffs] [sir_richard] 49752: [FREELDR]: VaToPa/PaToVa are assuming all architectures have VA at PA | KSEG0_BASE. This is not the case. On ZOOM2, DDR RAM starts at 0x80000000 for example, so KSEG0 == VA == ...

sir_richard at svn.reactos.org sir_richard at svn.reactos.org
Tue Nov 23 17:25:00 UTC 2010


Author: sir_richard
Date: Tue Nov 23 17:24:59 2010
New Revision: 49752

URL: http://svn.reactos.org/svn/reactos?rev=49752&view=rev
Log:
[FREELDR]: VaToPa/PaToVa are assuming all architectures have VA at PA | KSEG0_BASE. This is not the case. On ZOOM2, DDR RAM starts at 0x80000000 for example, so KSEG0 == VA == PA. Use an ifdef do handle this.

Modified:
    trunk/reactos/boot/freeldr/freeldr/windows/conversion.c

Modified: trunk/reactos/boot/freeldr/freeldr/windows/conversion.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/windows/conversion.c?rev=49752&r1=49751&r2=49752&view=diff
==============================================================================
--- trunk/reactos/boot/freeldr/freeldr/windows/conversion.c [iso-8859-1] (original)
+++ trunk/reactos/boot/freeldr/freeldr/windows/conversion.c [iso-8859-1] Tue Nov 23 17:24:59 2010
@@ -15,6 +15,7 @@
 
 /* FUNCTIONS **************************************************************/
 
+#ifndef _ZOOM2_
 /* Arch-specific addresses translation implementation */
 PVOID
 VaToPa(PVOID Va)
@@ -27,6 +28,19 @@
 {
 	return (PVOID)((ULONG_PTR)Pa | KSEG0_BASE);
 }
+#else
+PVOID
+VaToPa(PVOID Va)
+{
+    return Va;
+}
+
+PVOID
+PaToVa(PVOID Pa)
+{
+    return Pa;
+}
+#endif
 
 VOID
 List_PaToVa(LIST_ENTRY *ListEntry)




More information about the Ros-diffs mailing list