Merge branch 'linux-2.6'
[powerpc.git] / arch / sparc64 / kernel / entry.S
index 5b28315..c9b0d7a 100644 (file)
@@ -429,16 +429,16 @@ do_ivec:
        stxa            %g0, [%g0] ASI_INTR_RECEIVE
        membar          #Sync
 
-       sethi           %hi(ivector_table), %g2
-       sllx            %g3, 3, %g3
-       or              %g2, %lo(ivector_table), %g2
+       sethi           %hi(ivector_table_pa), %g2
+       ldx             [%g2 + %lo(ivector_table_pa)], %g2
+       sllx            %g3, 4, %g3
        add             %g2, %g3, %g3
 
-       TRAP_LOAD_IRQ_WORK(%g6, %g1)
+       TRAP_LOAD_IRQ_WORK_PA(%g6, %g1)
 
-       lduw            [%g6], %g5              /* g5 = irq_work(cpu) */
-       stw             %g5, [%g3 + 0x00]       /* bucket->irq_chain = g5 */
-       stw             %g3, [%g6]              /* irq_work(cpu) = bucket */
+       ldx             [%g6], %g5
+       stxa            %g5, [%g3] ASI_PHYS_USE_EC
+       stx             %g3, [%g6]
        wr              %g0, 1 << PIL_DEVICE_IRQ, %set_softint
        retry
 do_ivec_xcall:
@@ -2357,8 +2357,9 @@ sun4v_ldc_unmap:
         nop
        .size   sun4v_ldc_unmap, .-sun4v_ldc_unmap
 
-       /* %o0: cookie
-        * %o1: mte_cookie
+       /* %o0: channel
+        * %o1: cookie
+        * %o2: mte_cookie
         *
         * returns %o0: status
         */
@@ -2570,3 +2571,25 @@ sun4v_svc_clrstatus:
        retl
         nop
        .size   sun4v_svc_clrstatus, .-sun4v_svc_clrstatus
+
+       .globl  sun4v_mmustat_conf
+       .type   sun4v_mmustat_conf,#function
+sun4v_mmustat_conf:
+       mov     %o1, %o4
+       mov     HV_FAST_MMUSTAT_CONF, %o5
+       ta      HV_FAST_TRAP
+       stx     %o1, [%o4]
+       retl
+        nop
+       .size   sun4v_mmustat_conf, .-sun4v_mmustat_conf
+
+       .globl  sun4v_mmustat_info
+       .type   sun4v_mmustat_info,#function
+sun4v_mmustat_info:
+       mov     %o0, %o4
+       mov     HV_FAST_MMUSTAT_INFO, %o5
+       ta      HV_FAST_TRAP
+       stx     %o1, [%o4]
+       retl
+        nop
+       .size   sun4v_mmustat_info, .-sun4v_mmustat_info