@@ -487,6 +487,8 @@ ENDPROC_CFI(copy_page_asm)
487487 * parisc chip designers that there will not ever be a parisc
488488 * chip with a larger alias boundary (Never say never :-) ).
489489 *
490+ * Yah, what about the PA8800 and PA8900 processors?
491+ *
490492 * Subtle: the dtlb miss handlers support the temp alias region by
491493 * "knowing" that if a dtlb miss happens within the temp alias
492494 * region it must have occurred while in clear_user_page. Since
@@ -545,17 +547,17 @@ ENTRY_CFI(copy_user_page_asm)
545547#endif
546548 convert_phys_for_tlb_insert20 %r26 /* convert phys addr to tlb insert format */
547549 convert_phys_for_tlb_insert20 %r23 /* convert phys addr to tlb insert format */
548- depd %r24,63 ,22 , %r28 /* Form aliased virtual address 'to' */
550+ depd %r24,63 ,TMPALIAS_SIZE_BITS , %r28 /* Form aliased virtual address 'to' */
549551 depdi 0 , 63 ,PAGE_SHIFT, %r28 /* Clear any offset bits */
550552 copy %r28, %r29
551- depdi 1 , 41 ,1 , %r29 /* Form aliased virtual address 'from' */
553+ depdi 1 , 63 -TMPALIAS_SIZE_BITS ,1 , %r29 /* Form aliased virtual address 'from' */
552554#else
553555 extrw,u %r26, 24 ,25 , %r26 /* convert phys addr to tlb insert format */
554556 extrw,u %r23, 24 ,25 , %r23 /* convert phys addr to tlb insert format */
555- depw %r24, 31 ,22 , %r28 /* Form aliased virtual address 'to' */
557+ depw %r24, 31 ,TMPALIAS_SIZE_BITS , %r28 /* Form aliased virtual address 'to' */
556558 depwi 0 , 31 ,PAGE_SHIFT, %r28 /* Clear any offset bits */
557559 copy %r28, %r29
558- depwi 1 , 9 ,1 , %r29 /* Form aliased virtual address 'from' */
560+ depwi 1 , 31 -TMPALIAS_SIZE_BITS ,1 , %r29 /* Form aliased virtual address 'from' */
559561#endif
560562
561563 /* Purge any old translations */
@@ -691,11 +693,11 @@ ENTRY_CFI(clear_user_page_asm)
691693 depdi 0 , 31 ,32 , %r28 /* clear any sign extension */
692694#endif
693695 convert_phys_for_tlb_insert20 %r26 /* convert phys addr to tlb insert format */
694- depd %r25, 63 ,22 , %r28 /* Form aliased virtual address 'to' */
696+ depd %r25, 63 ,TMPALIAS_SIZE_BITS , %r28 /* Form aliased virtual address 'to' */
695697 depdi 0 , 63 ,PAGE_SHIFT, %r28 /* Clear any offset bits */
696698#else
697699 extrw,u %r26, 24 ,25 , %r26 /* convert phys addr to tlb insert format */
698- depw %r25, 31 ,22 , %r28 /* Form aliased virtual address 'to' */
700+ depw %r25, 31 ,TMPALIAS_SIZE_BITS , %r28 /* Form aliased virtual address 'to' */
699701 depwi 0 , 31 ,PAGE_SHIFT, %r28 /* Clear any offset bits */
700702#endif
701703
@@ -767,11 +769,11 @@ ENTRY_CFI(flush_dcache_page_asm)
767769 depdi 0 , 31 ,32 , %r28 /* clear any sign extension */
768770#endif
769771 convert_phys_for_tlb_insert20 %r26 /* convert phys addr to tlb insert format */
770- depd %r25, 63 ,22 , %r28 /* Form aliased virtual address 'to' */
772+ depd %r25, 63 ,TMPALIAS_SIZE_BITS , %r28 /* Form aliased virtual address 'to' */
771773 depdi 0 , 63 ,PAGE_SHIFT, %r28 /* Clear any offset bits */
772774#else
773775 extrw,u %r26, 24 ,25 , %r26 /* convert phys addr to tlb insert format */
774- depw %r25, 31 ,22 , %r28 /* Form aliased virtual address 'to' */
776+ depw %r25, 31 ,TMPALIAS_SIZE_BITS , %r28 /* Form aliased virtual address 'to' */
775777 depwi 0 , 31 ,PAGE_SHIFT, %r28 /* Clear any offset bits */
776778#endif
777779
@@ -826,11 +828,11 @@ ENTRY_CFI(purge_dcache_page_asm)
826828 depdi 0 , 31 ,32 , %r28 /* clear any sign extension */
827829#endif
828830 convert_phys_for_tlb_insert20 %r26 /* convert phys addr to tlb insert format */
829- depd %r25, 63 ,22 , %r28 /* Form aliased virtual address 'to' */
831+ depd %r25, 63 ,TMPALIAS_SIZE_BITS , %r28 /* Form aliased virtual address 'to' */
830832 depdi 0 , 63 ,PAGE_SHIFT, %r28 /* Clear any offset bits */
831833#else
832834 extrw,u %r26, 24 ,25 , %r26 /* convert phys addr to tlb insert format */
833- depw %r25, 31 ,22 , %r28 /* Form aliased virtual address 'to' */
835+ depw %r25, 31 ,TMPALIAS_SIZE_BITS , %r28 /* Form aliased virtual address 'to' */
834836 depwi 0 , 31 ,PAGE_SHIFT, %r28 /* Clear any offset bits */
835837#endif
836838
@@ -885,11 +887,11 @@ ENTRY_CFI(flush_icache_page_asm)
885887 depdi 0 , 31 ,32 , %r28 /* clear any sign extension */
886888#endif
887889 convert_phys_for_tlb_insert20 %r26 /* convert phys addr to tlb insert format */
888- depd %r25, 63 ,22 , %r28 /* Form aliased virtual address 'to' */
890+ depd %r25, 63 ,TMPALIAS_SIZE_BITS , %r28 /* Form aliased virtual address 'to' */
889891 depdi 0 , 63 ,PAGE_SHIFT, %r28 /* Clear any offset bits */
890892#else
891893 extrw,u %r26, 24 ,25 , %r26 /* convert phys addr to tlb insert format */
892- depw %r25, 31 ,22 , %r28 /* Form aliased virtual address 'to' */
894+ depw %r25, 31 ,TMPALIAS_SIZE_BITS , %r28 /* Form aliased virtual address 'to' */
893895 depwi 0 , 31 ,PAGE_SHIFT, %r28 /* Clear any offset bits */
894896#endif
895897
0 commit comments