[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160317052140.GB4854@oak.ozlabs.ibm.com>
Date: Thu, 17 Mar 2016 16:21:40 +1100
From: Paul Mackerras <paulus@...abs.org>
To: "Shreyas B. Prabhu" <shreyas@...ux.vnet.ibm.com>
Cc: mpe@...erman.id.au, linuxppc-dev@...ts.ozlabs.org,
linux-kernel@...r.kernel.org, benh@...nel.crashing.org,
mahesh@...ux.vnet.ibm.com, maddy@...ux.vnet.ibm.com
Subject: Re: [PATCH 1/3] powerpc/powernv: Move CHECK_HMI_INTERRUPT to
exception-64s header
On Mon, Feb 29, 2016 at 05:52:58PM +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.
Comments below...
> diff --git a/arch/powerpc/include/asm/exception-64s.h b/arch/powerpc/include/asm/exception-64s.h
> index 93ae809fe5ea..0082290314eb 100644
> --- a/arch/powerpc/include/asm/exception-64s.h
> +++ b/arch/powerpc/include/asm/exception-64s.h
> @@ -254,6 +254,25 @@ do_kvm_##n: \
> #define KVM_HANDLER_SKIP(area, h, n)
> #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;
> +
> +
> #define NOTEST(n)
I'd rather keep NOTEST together with the definitions of KVMTEST etc.
I suggest you add this block at the end of exceptions-64s.h (just
before the final #endif).
Paul.
Powered by blists - more mailing lists