On Sat 30 May 2009 23:54, Zhang, Sonic pondered:
> Is this change to lower_to_irq14 necessary? CSYNC is executed before it
> is called and IVHW is enabled in evt14 handler as well.

There is no change to lower_to_irq14.

Only if #ifdef CONFIG_DEBUG_HWERR is turned on - otherwise it is exactly the 
same.

-Robin

> Sonic
> 
> 
> ________________________________
> 
>       From: [email protected]
> [mailto:[email protected]] On Behalf Of
> [email protected]
>       Sent: Sunday, May 31, 2009 6:20 AM
>       To: [email protected]
>       Subject: [Linux-kernel-commits] [6506]
> trunk/arch/blackfin/mach-common/entry.S: Tweak ENTRY/ENDPROC, fix a few
> comments, and add one more place for
>       
>       
> 
>               Revision 
>               6506
> <http://blackfin.uclinux.org/gf/project/linux-kernel/scmsvn/?action=brow
> se&path=/&view=rev&root=linux-kernel&revision=6506>  
>               Author 
>               rgetz <http://blackfin.uclinux.org/gf/user/rgetz/>  
>               Date 
>               2009-05-30 17:19:31 -0500 (Sat, 30 May 2009) 
> 
> 
>       Log Message
> 
>       Tweak ENTRY/ENDPROC, fix a few comments, and add one more place
> for
>       DEBUG_HWERR
> 
>       Modified Paths
> 
> 
>       *       trunk/arch/blackfin/mach-common/entry.S 
> 
> 
>       Diff
> 
>       
> 
>       Modified: trunk/arch/blackfin/mach-common/entry.S (6505 => 6506)
> 
>       
>       --- trunk/arch/blackfin/mach-common/entry.S     2009-05-30
> 15:06:56 UTC (rev 6505)
>       +++ trunk/arch/blackfin/mach-common/entry.S     2009-05-30
> 22:19:31 UTC (rev 6506)
>       @@ -866,7 +866,7 @@
>               p1.h = _schedule_and_signal;
>               [p0] = p1;
>               csync;
>       -       raise 15;               /* raise evt14 to do signal or
> reschedule */
>       +       raise 15;               /* raise evt15 to do signal or
> reschedule */
>        4:
>               r0 = syscfg;
>               bitclr(r0, 0);
>       @@ -946,10 +946,19 @@
>               r0.h = hi(SAFE_USER_INSTRUCTION);
>               reti = r0;
>        #endif
>       -       r0 = 0x401f;
>       +
>       +#ifdef CONFIG_DEBUG_HWERR
>       +       /* enable irq14 & hwerr interrupt, until we transition
> to _evt14_softirq */
>       +       r0 = (EVT_IVG14 | EVT_IVHW | EVT_IRPTEN | EVT_EVX |
> EVT_NMI | EVT_RST | EVT_EMU);
>       +#else
>       +       /* Only enable irq14 interrupt, until we transition to
> _evt14_softirq */
>       +       r0 = (EVT_IVG14 | EVT_IRPTEN | EVT_EVX | EVT_NMI |
> EVT_RST | EVT_EMU);
>       +#endif
>               sti r0;
>               raise 14;
>               rti;
>       +ENDPROC(_lower_to_irq14)
>       +
>        ENTRY(_evt14_softirq)
>        #ifdef CONFIG_DEBUG_HWERR
>               r0 = 0x3f;
>       @@ -960,8 +969,9 @@
>               [--sp] = RETI;
>               SP += 4;
>               rts;
>       +ENDPROC(_evt14_softirq)
>        
>       -_schedule_and_signal_from_int:
>       +ENTRY(_schedule_and_signal_from_int)
>               /* To end up here, vector 15 was changed - so we have to
> change it
>                * back.
>                */
>       @@ -994,8 +1004,9 @@
>               call _finish_atomic_sections;
>               sp += 12;
>               jump.s .Lresume_userspace;
>       +ENDPROC(_schedule_and_signal_from_int)
>        
>       -_schedule_and_signal:
>       +ENTRY(_schedule_and_signal)
>               SAVE_CONTEXT_SYSCALL
>               /* To end up here, vector 15 was changed - so we have to
> change it
>                * back.
>       @@ -1013,7 +1024,7 @@
>        1:
>               RESTORE_CONTEXT
>               rti;
>       -ENDPROC(_lower_to_irq14)
>       +ENDPROC(_schedule_and_signal)
>        
>        /* We handle this 100% in exception space - to reduce overhead
>         * Only potiential problem is if the software buffer gets
> swapped out of the
>       
> 
> 
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to