AF:
NF:0
PS:10
SRH:1
SFN:
DSR:
MID:<20071126145443.3ff4d06c@ripper.onstor.net>
CFG:
PT:0
S:andy.sharp@onstor.com
RQ:
SSV:onstor-exch02.onstor.net
NSV:
SSH:
R:<tsbogend@alpha.franken.de>,<linux-mips@linux-mips.org>,<ralf@linux-mips.org>
MAID:1
X-Sylpheed-Privacy-System:
X-Sylpheed-Sign:0
SCF:#mh/Mailbox/sent
RMID:#mh/Mailbox/linux-mips	0	20071126223948.C7CB3C2B26@solo.franken.de
X-Sylpheed-End-Special-Headers: 1
Date: Mon, 26 Nov 2007 15:06:01 -0800
From: Andrew Sharp <andy.sharp@onstor.com>
To: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: linux-mips@linux-mips.org, ralf@linux-mips.org
Subject: Re: [PATCH] fix warning when using PHYS_TO_XKSEG_xx()
Message-ID: <20071126150601.2cd8efc0@ripper.onstor.net>
In-Reply-To: <20071126223948.C7CB3C2B26@solo.franken.de>
References: <20071126223948.C7CB3C2B26@solo.franken.de>
Organization: Onstor
X-Mailer: Sylpheed-Claws 2.6.0 (GTK+ 2.8.20; x86_64-pc-linux-gnu)
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

This is the basically the patch I submitted 10/31 and I believe is
queued for 2.6.25 ...

On Sun, 25 Nov 2007 11:28:03 +0100 Thomas Bogendoerfer
<tsbogend@alpha.franken.de> wrote:

> use CONST64 cast in PHYS_TO_XPHYS macro to avoid warning about shifts
> longer than the target type.
> 
> Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
> ---
>  arch/mips/lib/uncached.c     |    8 ++++----
>  include/asm-mips/addrspace.h |    2 +-
>  2 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/mips/lib/uncached.c b/arch/mips/lib/uncached.c
> index 58d14f4..b59b770 100644
> --- a/arch/mips/lib/uncached.c
> +++ b/arch/mips/lib/uncached.c
> @@ -46,8 +46,8 @@ unsigned long __init run_uncached(void *func)
>  	if (sp >= (long)CKSEG0 && sp < (long)CKSEG2)
>  		usp = CKSEG1ADDR(sp);
>  #ifdef CONFIG_64BIT
> -	else if ((long long)sp >= (long long)PHYS_TO_XKPHYS(0LL, 0)
> &&
> -		 (long long)sp < (long long)PHYS_TO_XKPHYS(8LL, 0))
> +	else if ((long long)sp >= (long long)PHYS_TO_XKPHYS(0, 0) &&
> +		 (long long)sp < (long long)PHYS_TO_XKPHYS(8, 0))
>  		usp = PHYS_TO_XKPHYS((long long)K_CALG_UNCACHED,
>  				     XKPHYS_TO_PHYS((long long)sp));
>  #endif
> @@ -58,8 +58,8 @@ unsigned long __init run_uncached(void *func)
>  	if (lfunc >= (long)CKSEG0 && lfunc < (long)CKSEG2)
>  		ufunc = CKSEG1ADDR(lfunc);
>  #ifdef CONFIG_64BIT
> -	else if ((long long)lfunc >= (long long)PHYS_TO_XKPHYS(0LL,
> 0) &&
> -		 (long long)lfunc < (long long)PHYS_TO_XKPHYS(8LL,
> 0))
> +	else if ((long long)lfunc >= (long long)PHYS_TO_XKPHYS(0, 0)
> &&
> +		 (long long)lfunc < (long long)PHYS_TO_XKPHYS(8, 0))
>  		ufunc = PHYS_TO_XKPHYS((long long)K_CALG_UNCACHED,
>  				       XKPHYS_TO_PHYS((long
> long)lfunc)); #endif
> diff --git a/include/asm-mips/addrspace.h
> b/include/asm-mips/addrspace.h index 0bb7a93..9002d66 100644
> --- a/include/asm-mips/addrspace.h
> +++ b/include/asm-mips/addrspace.h
> @@ -127,7 +127,7 @@
>  #define PHYS_TO_XKSEG_CACHED(p)
> PHYS_TO_XKPHYS(K_CALG_COH_SHAREABLE, (p)) #define
> XKPHYS_TO_PHYS(p)		((p) & TO_PHYS_MASK) #define
> PHYS_TO_XKPHYS(cm, a)		(_CONST64_(0x8000000000000000) |
> \
> -					 ((cm)<<59) | (a))
> +					 (_CONST64_(cm)<<59) | (a))
>  
>  /*
>   * The ultimate limited of the 64-bit MIPS architecture:  2 bits for
> selecting
