forked from Minki/linux
88be351593
Add code to the 54xx ColdFire CPU init to setup memory ready for the m68k paged memory start up. Some of the RAM variables that were specific to the non-mmu code paths now need to be used during this setup, so when CONFIG_MMU is enabled. Move these out of page_no.h and into page.h. Signed-off-by: Greg Ungerer <gerg@uclinux.org> Acked-by: Matt Waddel <mwaddel@yahoo.com> Acked-by: Kurt Mahan <kmahan@xmission.com> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
54 lines
1.2 KiB
C
54 lines
1.2 KiB
C
#ifndef _M68K_PAGE_H
|
|
#define _M68K_PAGE_H
|
|
|
|
#include <linux/const.h>
|
|
#include <asm/setup.h>
|
|
#include <asm/page_offset.h>
|
|
|
|
/* PAGE_SHIFT determines the page size */
|
|
#ifndef CONFIG_SUN3
|
|
#define PAGE_SHIFT (12)
|
|
#else
|
|
#define PAGE_SHIFT (13)
|
|
#endif
|
|
#define PAGE_SIZE (_AC(1, UL) << PAGE_SHIFT)
|
|
#define PAGE_MASK (~(PAGE_SIZE-1))
|
|
#define PAGE_OFFSET (PAGE_OFFSET_RAW)
|
|
|
|
#ifndef __ASSEMBLY__
|
|
|
|
/*
|
|
* These are used to make use of C type-checking..
|
|
*/
|
|
typedef struct { unsigned long pte; } pte_t;
|
|
typedef struct { unsigned long pmd[16]; } pmd_t;
|
|
typedef struct { unsigned long pgd; } pgd_t;
|
|
typedef struct { unsigned long pgprot; } pgprot_t;
|
|
typedef struct page *pgtable_t;
|
|
|
|
#define pte_val(x) ((x).pte)
|
|
#define pmd_val(x) ((&x)->pmd[0])
|
|
#define pgd_val(x) ((x).pgd)
|
|
#define pgprot_val(x) ((x).pgprot)
|
|
|
|
#define __pte(x) ((pte_t) { (x) } )
|
|
#define __pmd(x) ((pmd_t) { (x) } )
|
|
#define __pgd(x) ((pgd_t) { (x) } )
|
|
#define __pgprot(x) ((pgprot_t) { (x) } )
|
|
|
|
extern unsigned long _rambase;
|
|
extern unsigned long _ramstart;
|
|
extern unsigned long _ramend;
|
|
|
|
#endif /* !__ASSEMBLY__ */
|
|
|
|
#ifdef CONFIG_MMU
|
|
#include "page_mm.h"
|
|
#else
|
|
#include "page_no.h"
|
|
#endif
|
|
|
|
#include <asm-generic/getorder.h>
|
|
|
|
#endif /* _M68K_PAGE_H */
|