X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Farm%2Fmm%2Fproc-sa110.S;h=360cae905692bbc0ca6a6f6c3c219321b994bdbb;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=d58fce5cc85d7bb99101f307d1a381c5260ae39a;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/arch/arm/mm/proc-sa110.S b/arch/arm/mm/proc-sa110.S index d58fce5cc..360cae905 100644 --- a/arch/arm/mm/proc-sa110.S +++ b/arch/arm/mm/proc-sa110.S @@ -186,21 +186,31 @@ ENTRY(cpu_sa110_set_pte) .type __sa110_setup, #function __sa110_setup: - mrc p15, 0, r0, c1, c0 @ get control register v4 - bic r0, r0, #0x2e00 @ ..VI ZFRS BLDP WCAM - bic r0, r0, #0x0002 @ ..0. 000. .... ..0. - orr r0, r0, #0x003d - orr r0, r0, #0x1100 @ ...1 ...1 ..11 11.1 mov r10, #0 mcr p15, 0, r10, c7, c7 @ invalidate I,D caches on v4 mcr p15, 0, r10, c7, c10, 4 @ drain write buffer on v4 mcr p15, 0, r10, c8, c7 @ invalidate I,D TLBs on v4 - mcr p15, 0, r4, c2, c0 @ load page table pointer - mov r10, #0x1f @ Domains 0, 1 = client - mcr p15, 0, r10, c3, c0 @ load domain access register + mrc p15, 0, r0, c1, c0 @ get control register v4 + ldr r5, sa110_cr1_clear + bic r0, r0, r5 + ldr r5, sa110_cr1_set + orr r0, r0, r5 mov pc, lr .size __sa110_setup, . - __sa110_setup + /* + * R + * .RVI ZFRS BLDP WCAM + * ..01 0001 ..11 1101 + * + */ + .type sa110_cr1_clear, #object + .type sa110_cr1_set, #object +sa110_cr1_clear: + .word 0x3f3f +sa110_cr1_set: + .word 0x113d + __INITDATA /* @@ -245,7 +255,11 @@ cpu_sa110_name: __sa110_proc_info: .long 0x4401a100 .long 0xfffffff0 - .long 0x00000c0e + .long PMD_TYPE_SECT | \ + PMD_SECT_BUFFERABLE | \ + PMD_SECT_CACHEABLE | \ + PMD_SECT_AP_WRITE | \ + PMD_SECT_AP_READ b __sa110_setup .long cpu_arch_name .long cpu_elf_name