diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-05-21 10:15:33 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-05-21 10:15:33 -0400 |
commit | 4ab1056766a4e49f6b9ef324313dd1583f8f8f4e (patch) | |
tree | 89f975e7e021dd27dc807e45445e963aeb39fcda /arch/arm/boot/compressed | |
parent | 4175160b065e74572819a320dcd34129224a4e1c (diff) | |
parent | 4cdfc2ec72e940abb4322aa1bc14f43a1486fc5d (diff) |
Merge branch 'v3-removal' into for-linus
Conflicts:
arch/arm/boot/compressed/head.S
Diffstat (limited to 'arch/arm/boot/compressed')
-rw-r--r-- | arch/arm/boot/compressed/head.S | 44 |
1 files changed, 4 insertions, 40 deletions
diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S index 5ad33a4df675..b8c64b80bafc 100644 --- a/arch/arm/boot/compressed/head.S +++ b/arch/arm/boot/compressed/head.S | |||
@@ -686,19 +686,6 @@ __fa526_cache_on: | |||
686 | mcr p15, 0, r0, c8, c7, 0 @ flush UTLB | 686 | mcr p15, 0, r0, c8, c7, 0 @ flush UTLB |
687 | mov pc, r12 | 687 | mov pc, r12 |
688 | 688 | ||
689 | __arm6_mmu_cache_on: | ||
690 | mov r12, lr | ||
691 | mov r6, #CB_BITS | 0x12 @ U | ||
692 | bl __setup_mmu | ||
693 | mov r0, #0 | ||
694 | mcr p15, 0, r0, c7, c0, 0 @ invalidate whole cache v3 | ||
695 | mcr p15, 0, r0, c5, c0, 0 @ invalidate whole TLB v3 | ||
696 | mov r0, #0x30 | ||
697 | bl __common_mmu_cache_on | ||
698 | mov r0, #0 | ||
699 | mcr p15, 0, r0, c5, c0, 0 @ invalidate whole TLB v3 | ||
700 | mov pc, r12 | ||
701 | |||
702 | __common_mmu_cache_on: | 689 | __common_mmu_cache_on: |
703 | #ifndef CONFIG_THUMB2_KERNEL | 690 | #ifndef CONFIG_THUMB2_KERNEL |
704 | #ifndef DEBUG | 691 | #ifndef DEBUG |
@@ -763,16 +750,6 @@ call_cache_fn: adr r12, proc_types | |||
763 | .align 2 | 750 | .align 2 |
764 | .type proc_types,#object | 751 | .type proc_types,#object |
765 | proc_types: | 752 | proc_types: |
766 | .word 0x41560600 @ ARM6/610 | ||
767 | .word 0xffffffe0 | ||
768 | W(b) __arm6_mmu_cache_off @ works, but slow | ||
769 | W(b) __arm6_mmu_cache_off | ||
770 | mov pc, lr | ||
771 | THUMB( nop ) | ||
772 | @ b __arm6_mmu_cache_on @ untested | ||
773 | @ b __arm6_mmu_cache_off | ||
774 | @ b __armv3_mmu_cache_flush | ||
775 | |||
776 | .word 0x00000000 @ old ARM ID | 753 | .word 0x00000000 @ old ARM ID |
777 | .word 0x0000f000 | 754 | .word 0x0000f000 |
778 | mov pc, lr | 755 | mov pc, lr |
@@ -784,8 +761,10 @@ proc_types: | |||
784 | 761 | ||
785 | .word 0x41007000 @ ARM7/710 | 762 | .word 0x41007000 @ ARM7/710 |
786 | .word 0xfff8fe00 | 763 | .word 0xfff8fe00 |
787 | W(b) __arm7_mmu_cache_off | 764 | mov pc, lr |
788 | W(b) __arm7_mmu_cache_off | 765 | THUMB( nop ) |
766 | mov pc, lr | ||
767 | THUMB( nop ) | ||
789 | mov pc, lr | 768 | mov pc, lr |
790 | THUMB( nop ) | 769 | THUMB( nop ) |
791 | 770 | ||
@@ -984,21 +963,6 @@ __armv7_mmu_cache_off: | |||
984 | mcr p15, 0, r0, c7, c5, 4 @ ISB | 963 | mcr p15, 0, r0, c7, c5, 4 @ ISB |
985 | mov pc, r12 | 964 | mov pc, r12 |
986 | 965 | ||
987 | __arm6_mmu_cache_off: | ||
988 | mov r0, #0x00000030 @ ARM6 control reg. | ||
989 | b __armv3_mmu_cache_off | ||
990 | |||
991 | __arm7_mmu_cache_off: | ||
992 | mov r0, #0x00000070 @ ARM7 control reg. | ||
993 | b __armv3_mmu_cache_off | ||
994 | |||
995 | __armv3_mmu_cache_off: | ||
996 | mcr p15, 0, r0, c1, c0, 0 @ turn MMU and cache off | ||
997 | mov r0, #0 | ||
998 | mcr p15, 0, r0, c7, c0, 0 @ invalidate whole cache v3 | ||
999 | mcr p15, 0, r0, c5, c0, 0 @ invalidate whole TLB v3 | ||
1000 | mov pc, lr | ||
1001 | |||
1002 | /* | 966 | /* |
1003 | * Clean and flush the cache to maintain consistency. | 967 | * Clean and flush the cache to maintain consistency. |
1004 | * | 968 | * |