Re: [PATCH v2 1/9] powerpc/powernv: Move CHECK_HMI_INTERRUPT to exception-64s header
On 05/18/2016 10:05 AM, Gautham R Shenoy wrote: > 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. > Ok. I'll do that. > Otherwise, > Reviewed-by: Gautham R. Shenoy Thanks for the review. >> --- >> 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 >> #include >> #include >> +#include >> #include >> >> #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 >>
Re: [PATCH v2 1/9] powerpc/powernv: Move CHECK_HMI_INTERRUPT to exception-64s header
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 > --- > 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 > #include > #include > +#include > #include > > #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 >
[PATCH v2 1/9] powerpc/powernv: Move CHECK_HMI_INTERRUPT to exception-64s header
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. Signed-off-by: Shreyas B. Prabhu --- 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 #include #include +#include #include #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