diff options
Diffstat (limited to 'arch/arm/kernel')
-rw-r--r-- | arch/arm/kernel/armksyms.c | 2 | ||||
-rw-r--r-- | arch/arm/kernel/head.S | 17 |
2 files changed, 10 insertions, 9 deletions
diff --git a/arch/arm/kernel/armksyms.c b/arch/arm/kernel/armksyms.c index 85e664b6a5f1..f7b450f97e68 100644 --- a/arch/arm/kernel/armksyms.c +++ b/arch/arm/kernel/armksyms.c | |||
@@ -158,6 +158,6 @@ EXPORT_SYMBOL(__gnu_mcount_nc); | |||
158 | #endif | 158 | #endif |
159 | 159 | ||
160 | #ifdef CONFIG_ARM_PATCH_PHYS_VIRT | 160 | #ifdef CONFIG_ARM_PATCH_PHYS_VIRT |
161 | EXPORT_SYMBOL(__pv_phys_offset); | 161 | EXPORT_SYMBOL(__pv_phys_pfn_offset); |
162 | EXPORT_SYMBOL(__pv_offset); | 162 | EXPORT_SYMBOL(__pv_offset); |
163 | #endif | 163 | #endif |
diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S index 914616e0bdcd..3aca959fee8d 100644 --- a/arch/arm/kernel/head.S +++ b/arch/arm/kernel/head.S | |||
@@ -584,9 +584,10 @@ __fixup_pv_table: | |||
584 | subs r3, r0, r3 @ PHYS_OFFSET - PAGE_OFFSET | 584 | subs r3, r0, r3 @ PHYS_OFFSET - PAGE_OFFSET |
585 | add r4, r4, r3 @ adjust table start address | 585 | add r4, r4, r3 @ adjust table start address |
586 | add r5, r5, r3 @ adjust table end address | 586 | add r5, r5, r3 @ adjust table end address |
587 | add r6, r6, r3 @ adjust __pv_phys_offset address | 587 | add r6, r6, r3 @ adjust __pv_phys_pfn_offset address |
588 | add r7, r7, r3 @ adjust __pv_offset address | 588 | add r7, r7, r3 @ adjust __pv_offset address |
589 | str r8, [r6, #LOW_OFFSET] @ save computed PHYS_OFFSET to __pv_phys_offset | 589 | mov r0, r8, lsr #12 @ convert to PFN |
590 | str r0, [r6, #LOW_OFFSET] @ save computed PHYS_OFFSET to __pv_phys_pfn_offset | ||
590 | strcc ip, [r7, #HIGH_OFFSET] @ save to __pv_offset high bits | 591 | strcc ip, [r7, #HIGH_OFFSET] @ save to __pv_offset high bits |
591 | mov r6, r3, lsr #24 @ constant for add/sub instructions | 592 | mov r6, r3, lsr #24 @ constant for add/sub instructions |
592 | teq r3, r6, lsl #24 @ must be 16MiB aligned | 593 | teq r3, r6, lsl #24 @ must be 16MiB aligned |
@@ -600,7 +601,7 @@ ENDPROC(__fixup_pv_table) | |||
600 | 1: .long . | 601 | 1: .long . |
601 | .long __pv_table_begin | 602 | .long __pv_table_begin |
602 | .long __pv_table_end | 603 | .long __pv_table_end |
603 | 2: .long __pv_phys_offset | 604 | 2: .long __pv_phys_pfn_offset |
604 | .long __pv_offset | 605 | .long __pv_offset |
605 | 606 | ||
606 | .text | 607 | .text |
@@ -688,11 +689,11 @@ ENTRY(fixup_pv_table) | |||
688 | ENDPROC(fixup_pv_table) | 689 | ENDPROC(fixup_pv_table) |
689 | 690 | ||
690 | .data | 691 | .data |
691 | .globl __pv_phys_offset | 692 | .globl __pv_phys_pfn_offset |
692 | .type __pv_phys_offset, %object | 693 | .type __pv_phys_pfn_offset, %object |
693 | __pv_phys_offset: | 694 | __pv_phys_pfn_offset: |
694 | .quad 0 | 695 | .word 0 |
695 | .size __pv_phys_offset, . -__pv_phys_offset | 696 | .size __pv_phys_pfn_offset, . -__pv_phys_pfn_offset |
696 | 697 | ||
697 | .globl __pv_offset | 698 | .globl __pv_offset |
698 | .type __pv_offset, %object | 699 | .type __pv_offset, %object |