commit: http://blackfin.uclinux.org/git/?p=linux-kernel;a=commitdiff;h=cb06da6f3c8bb211adfdb2351427243f8500b26d branch: http://blackfin.uclinux.org/git/?p=linux-kernel;a=shortlog;h=refs/heads/trunk
Signed-off-by: Steven Miao <[email protected]> --- arch/blackfin/kernel/cplb-nompu/cplbinit.c | 18 ++++++++++++++---- 1 files changed, 14 insertions(+), 4 deletions(-) diff --git a/arch/blackfin/kernel/cplb-nompu/cplbinit.c b/arch/blackfin/kernel/cplb-nompu/cplbinit.c index 660c4f3..2f2e6a6 100644 --- a/arch/blackfin/kernel/cplb-nompu/cplbinit.c +++ b/arch/blackfin/kernel/cplb-nompu/cplbinit.c @@ -30,6 +30,7 @@ void __init generate_cplb_tables_cpu(unsigned int cpu) { int i_d, i_i; unsigned long addr; + unsigned long cplb_pageflags, cplb_pagesize; struct cplb_entry *d_tbl = dcplb_tbl[cpu]; struct cplb_entry *i_tbl = icplb_tbl[cpu]; @@ -49,11 +50,20 @@ void __init generate_cplb_tables_cpu(unsigned int cpu) /* Cover kernel memory with 4M pages. */ addr = 0; - for (; addr < memory_start; addr += 4 * 1024 * 1024) { +#ifdef PAGE_SIZE_16MB + cplb_pageflags = PAGE_SIZE_16MB; + cplb_pagesize = SIZE_16M; +#else + cplb_pageflags = PAGE_SIZE_4MB; + cplb_pagesize = SIZE_4M; +#endif + + + for (; addr < memory_start; addr += cplb_pagesize) { d_tbl[i_d].addr = addr; - d_tbl[i_d++].data = "" | PAGE_SIZE_4MB; + d_tbl[i_d++].data = "" | cplb_pageflags; i_tbl[i_i].addr = addr; - i_tbl[i_i++].data = "" | PAGE_SIZE_4MB; + i_tbl[i_i++].data = "" | cplb_pageflags; } #ifdef CONFIG_ROMKERNEL @@ -94,7 +104,7 @@ void __init generate_cplb_tables_cpu(unsigned int cpu) #endif #ifdef CONFIG_BF60x d_tbl[i_d].addr = BOOT_ROM_START; - d_tbl[i_d++].data = "" | PAGE_SIZE_1MB; + d_tbl[i_d++].data = "" | PAGE_SIZE_64KB; #endif first_switched_dcplb = i_d; first_switched_icplb = i_i;
_______________________________________________ Linux-kernel-commits mailing list [email protected] https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits
