diff options
Diffstat (limited to 'arch/blackfin/kernel/cplb-mpu/cplbinit.c')
-rw-r--r-- | arch/blackfin/kernel/cplb-mpu/cplbinit.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/arch/blackfin/kernel/cplb-mpu/cplbinit.c b/arch/blackfin/kernel/cplb-mpu/cplbinit.c index 48060105346a..55af729f8495 100644 --- a/arch/blackfin/kernel/cplb-mpu/cplbinit.c +++ b/arch/blackfin/kernel/cplb-mpu/cplbinit.c | |||
@@ -36,7 +36,7 @@ struct cplb_entry dcplb_tbl[MAX_CPLBS]; | |||
36 | int first_switched_icplb, first_switched_dcplb; | 36 | int first_switched_icplb, first_switched_dcplb; |
37 | int first_mask_dcplb; | 37 | int first_mask_dcplb; |
38 | 38 | ||
39 | void __init generate_cpl_tables(void) | 39 | void __init generate_cplb_tables(void) |
40 | { | 40 | { |
41 | int i_d, i_i; | 41 | int i_d, i_i; |
42 | unsigned long addr; | 42 | unsigned long addr; |
@@ -83,8 +83,18 @@ void __init generate_cpl_tables(void) | |||
83 | dcplb_tbl[i_d].addr = L1_DATA_A_START; | 83 | dcplb_tbl[i_d].addr = L1_DATA_A_START; |
84 | dcplb_tbl[i_d++].data = L1_DMEMORY | PAGE_SIZE_4MB; | 84 | dcplb_tbl[i_d++].data = L1_DMEMORY | PAGE_SIZE_4MB; |
85 | #endif | 85 | #endif |
86 | #if L1_CODE_LENGTH > 0 | ||
86 | icplb_tbl[i_i].addr = L1_CODE_START; | 87 | icplb_tbl[i_i].addr = L1_CODE_START; |
87 | icplb_tbl[i_i++].data = L1_IMEMORY | PAGE_SIZE_4MB; | 88 | icplb_tbl[i_i++].data = L1_IMEMORY | PAGE_SIZE_4MB; |
89 | #endif | ||
90 | |||
91 | /* Cover L2 memory */ | ||
92 | #if L2_LENGTH > 0 | ||
93 | dcplb_tbl[i_d].addr = L2_START; | ||
94 | dcplb_tbl[i_d++].data = L2_DMEMORY | PAGE_SIZE_1MB; | ||
95 | icplb_tbl[i_i].addr = L2_START; | ||
96 | icplb_tbl[i_i++].data = L2_IMEMORY | PAGE_SIZE_1MB; | ||
97 | #endif | ||
88 | 98 | ||
89 | first_mask_dcplb = i_d; | 99 | first_mask_dcplb = i_d; |
90 | first_switched_dcplb = i_d + (1 << page_mask_order); | 100 | first_switched_dcplb = i_d + (1 << page_mask_order); |