linux-mips
[Top] [All Lists]

[PATCH] Physical mem start different from 0

To: linux-mips@linux-mips.org
Subject: [PATCH] Physical mem start different from 0
From: moreau francis <francis_moreau2000@yahoo.fr>
Date: Fri, 8 Apr 2005 14:58:56 +0200 (CEST)
Cc: ralf@linux-mips.org
Original-recipient: rfc822;linux-mips@linux-mips.org
Sender: linux-mips-bounce@linux-mips.org
Ralf,

I'm sending to you a very trivial patch.
It's related to memory start address that does not
start at 0. This can easily be handled with uses of
"pfn_to_phys" and "virt_to_phys" macros. But some
parts of the kernel don't use them, and do for
instance
"addr << PAGE_SHIFT".
The patch deals with such cases in pgtable-32.h. If
you agree with, I'll send others patches to remove
them from every places I found.

     Francis


        

        
                
__________________________________________________________________
Découvrez le nouveau Yahoo! Mail : 250 Mo d'espace de stockage pour vos mails ! 
Créez votre Yahoo! Mail sur http://fr.mail.yahoo.com/
--- pgtable-32.h.old    2005-04-08 14:37:00.231705720 +0200
+++ pgtable-32.h        2005-04-08 14:24:24.360615592 +0200
@@ -136,8 +136,8 @@ pfn_pte(unsigned long pfn, pgprot_t prot
 #define pte_pfn(x)             ((unsigned long)((x).pte >> (PAGE_SHIFT + 2)))
 #define pfn_pte(pfn, prot)     __pte(((pfn) << (PAGE_SHIFT + 2)) | 
pgprot_val(prot))
 #else
-#define pte_pfn(x)             ((unsigned long)((x).pte >> PAGE_SHIFT))
-#define pfn_pte(pfn, prot)     __pte(((pfn) << PAGE_SHIFT) | pgprot_val(prot))
+#define pte_pfn(x)             ((unsigned long)(phys_to_pfn((x).pte)))
+#define pfn_pte(pfn, prot)     __pte((pfn_to_phys(pfn) | pgprot_val(prot)))
 #endif
 #endif /* defined(CONFIG_64BIT_PHYS_ADDR) && defined(CONFIG_CPU_MIPS32) */
 
<Prev in Thread] Current Thread [Next in Thread>
  • [PATCH] Physical mem start different from 0, moreau francis <=