On Wed, 2009-04-29 at 10:26 +1000, Michael Neuling wrote:
> From: Milton Miller <milt...@bga.com>
> 
> powerpc: Enable MMU feature sections for inline asm
> 
> This adds the ability to do MMU feature sections for inline asm.
> 
> Signed-off-by: Milton Miller <milt...@bga.com>
> Signed-off-by: Michael Neuling <mi...@neuling.org>
> ---
> 
>  arch/powerpc/include/asm/feature-fixups.h |   25 ++++++++++++++++++++-----
>  1 file changed, 20 insertions(+), 5 deletions(-)
> 
> Index: linux-2.6-ozlabs/arch/powerpc/include/asm/feature-fixups.h
> ===================================================================
> --- linux-2.6-ozlabs.orig/arch/powerpc/include/asm/feature-fixups.h
> +++ linux-2.6-ozlabs/arch/powerpc/include/asm/feature-fixups.h
> @@ -8,8 +8,6 @@
>   * 2 of the License, or (at your option) any later version.
>   */
>  
> -#ifdef __ASSEMBLY__
> -
>  /*
>   * Feature section common macros
>   *
> @@ -23,10 +21,12 @@
>  /* 64 bits kernel, 32 bits code (ie. vdso32) */
>  #define FTR_ENTRY_LONG               .llong
>  #define FTR_ENTRY_OFFSET     .long 0xffffffff; .long
> +#elif defined(CONFIG_PPC64)
> +#define FTR_ENTRY_LONG               .llong
> +#define FTR_ENTRY_OFFSET     .llong
>  #else
> -/* 64 bit kernel 64 bit code, or 32 bit kernel 32 bit code */
> -#define FTR_ENTRY_LONG               PPC_LONG
> -#define FTR_ENTRY_OFFSET     PPC_LONG
> +#define FTR_ENTRY_LONG               .long
> +#define FTR_ENTRY_OFFSET     .long
>  #endif

This is a bit of a pity, I take it you can't nest stringify_in_c(). It
is probably worth a comment here about why you're not using PPC_LONG,
otherwise someone will try and "clean it up".

> @@ -141,6 +141,21 @@ label##5:                                                
> \
>  #define ALT_FW_FTR_SECTION_END_IFCLR(msk)    \
>       ALT_FW_FTR_SECTION_END_NESTED_IFCLR(msk, 97)
>  
> +#ifndef __ASSEMBLY__
> +
> +#define ASM_MMU_FTR_IF_X(string, estring, msk, val)          \
> +     stringify_in_c(BEGIN_MMU_FTR_SECTION)                   \
> +     string "; "                                             \
> +     stringify_in_c(MMU_FTR_SECTION_ELSE)                    \
> +     estring "; "                                            \
> +     stringify_in_c(ALT_MMU_FTR_SECTION_END((msk), (val)))

Just call it ASM_MMU_FTR_IF() ?  And "string" and "estring" don't mean
much to me.

cheers

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to