On Tue, May 03, 2016 at 01:54:30PM +0530, Shreyas B. Prabhu wrote: > CHECK_HMI_INTERRUPT is used to check for HMI's in reset vector. Move > the macro to a common location (exception-64s.h) > This patch does not change any functionality. >
I suppose this code movement is to facilitate the invocation of CHECK_HMI_INTERRUPT in some later patch ? In this case you could add this to the commit message. Otherwise, Reviewed-by: Gautham R. Shenoy <e...@linux.vnet.ibm.com> > --- > arch/powerpc/include/asm/exception-64s.h | 18 ++++++++++++++++++ > arch/powerpc/kernel/idle_power7.S | 20 +------------------- > 2 files changed, 19 insertions(+), 19 deletions(-) > > diff --git a/arch/powerpc/include/asm/exception-64s.h > b/arch/powerpc/include/asm/exception-64s.h > index 93ae809..6a625af 100644 > --- a/arch/powerpc/include/asm/exception-64s.h > +++ b/arch/powerpc/include/asm/exception-64s.h > @@ -545,4 +545,22 @@ END_FTR_SECTION_IFSET(CPU_FTR_CAN_NAP) > #define FINISH_NAP > #endif > > +#define CHECK_HMI_INTERRUPT \ > + mfspr r0,SPRN_SRR1; \ > +BEGIN_FTR_SECTION_NESTED(66); > \ > + rlwinm r0,r0,45-31,0xf; /* extract wake reason field (P8) */ \ > +FTR_SECTION_ELSE_NESTED(66); \ > + rlwinm r0,r0,45-31,0xe; /* P7 wake reason field is 3 bits */ \ > +ALT_FTR_SECTION_END_NESTED_IFSET(CPU_FTR_ARCH_207S, 66); \ > + cmpwi r0,0xa; /* Hypervisor maintenance ? */ \ > + bne 20f; \ > + /* Invoke opal call to handle hmi */ \ > + ld r2,PACATOC(r13); \ > + ld r1,PACAR1(r13); \ > + std r3,ORIG_GPR3(r1); /* Save original r3 */ \ > + li r0,OPAL_HANDLE_HMI; /* Pass opal token argument*/ \ > + bl opal_call_realmode; \ > + ld r3,ORIG_GPR3(r1); /* Restore original r3 */ \ > +20: nop; > + > #endif /* _ASM_POWERPC_EXCEPTION_H */ > diff --git a/arch/powerpc/kernel/idle_power7.S > b/arch/powerpc/kernel/idle_power7.S > index 470ceeb..6b3404b 100644 > --- a/arch/powerpc/kernel/idle_power7.S > +++ b/arch/powerpc/kernel/idle_power7.S > @@ -19,6 +19,7 @@ > #include <asm/kvm_book3s_asm.h> > #include <asm/opal.h> > #include <asm/cpuidle.h> > +#include <asm/exception-64s.h> > #include <asm/book3s/64/mmu-hash.h> > > #undef DEBUG > @@ -257,25 +258,6 @@ _GLOBAL(power7_winkle) > b power7_powersave_common > /* No return */ > > -#define CHECK_HMI_INTERRUPT \ > - mfspr r0,SPRN_SRR1; \ > -BEGIN_FTR_SECTION_NESTED(66); > \ > - rlwinm r0,r0,45-31,0xf; /* extract wake reason field (P8) */ \ > -FTR_SECTION_ELSE_NESTED(66); \ > - rlwinm r0,r0,45-31,0xe; /* P7 wake reason field is 3 bits */ \ > -ALT_FTR_SECTION_END_NESTED_IFSET(CPU_FTR_ARCH_207S, 66); \ > - cmpwi r0,0xa; /* Hypervisor maintenance ? */ \ > - bne 20f; \ > - /* Invoke opal call to handle hmi */ \ > - ld r2,PACATOC(r13); \ > - ld r1,PACAR1(r13); \ > - std r3,ORIG_GPR3(r1); /* Save original r3 */ \ > - li r0,OPAL_HANDLE_HMI; /* Pass opal token argument*/ \ > - bl opal_call_realmode; \ > - ld r3,ORIG_GPR3(r1); /* Restore original r3 */ \ > -20: nop; > - > - > _GLOBAL(power7_wakeup_tb_loss) > ld r2,PACATOC(r13); > ld r1,PACAR1(r13) > -- > 2.4.11 > _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev