public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] MIPS: Fix compile warning in au1x00_eth.c
Date: Fri, 30 Jan 2009 09:27:23 +0900	[thread overview]
Message-ID: <4982496B.80607@necel.com> (raw)
In-Reply-To: <200901281737.36571.sr@denx.de>

Stefan Roese wrote:
>> skuribay at ubuntu:u-boot.git$ mips-linux-gnu-gcc --version
>> mips-linux-gnu-gcc (Sourcery G++ Lite 4.2-177) 4.2.3
>> Copyright (C) 2007 Free Software Foundation, Inc.
>> This is free software; see the source for copying conditions.  There is NO
>> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>>
>> skuribay at ubuntu:u-boot.git$
>> skuribay at ubuntu:u-boot.git$ CROSS_COMPILE=mips-linux-gnu- ./MAKEALL
>> dbau1000 Configuring for dbau1x00 board...
>> au1x00_eth.c: In function 'au1x00_send':
>> au1x00_eth.c:158: warning: passing argument 1 of 'virt_to_phys' discards
>> qualifiers from pointer target type au1x00_eth.c: In function
>> 'au1x00_recv':
>> au1x00_eth.c:211: warning: passing argument 1 of 'virt_to_phys' discards
>> qualifiers from pointer target type au1x00_eth.c: In function
>> 'au1x00_init':
>> au1x00_eth.c:252: warning: passing argument 1 of 'virt_to_phys' discards
>> qualifiers from pointer target type au1x00_eth.c: In function
>> 'au1x00_recv':
>> au1x00_eth.c:211: warning: passing argument 1 of 'virt_to_phys' discards
>> qualifiers from pointer target type au1x00_eth.c: In function
>> 'au1x00_init':
>> au1x00_eth.c:252: warning: passing argument 1 of 'virt_to_phys' discards
>> qualifiers from pointer target type au1x00_eth.c: In function
>> 'au1x00_send':
>> au1x00_eth.c:158: warning: passing argument 1 of 'virt_to_phys' discards
>> qualifiers from pointer target type text    data     bss     dec     hex
>> filename
>>  118780    5264   20648  144692   23534 ./u-boot
> 
> Those errors occur twice. Seems that you are compiling this file twice.
> Any idea why?

Probably it's due to the GCC 4.2.x minor version difference.

Googling[1][2] and playing for a while, I finally managed to quiet the
GCC with the following patch.

diff --git a/cpu/mips/au1x00_eth.c b/cpu/mips/au1x00_eth.c
index 6272a3a..c2c76ac 100644
--- a/cpu/mips/au1x00_eth.c
+++ b/cpu/mips/au1x00_eth.c
@@ -155,7 +155,7 @@ static int au1x00_send(struct eth_device* dev, volatile void *packet, int length
 
 	/* tx fifo should always be idle */
 	fifo_tx[next_tx].len = length;
-	fifo_tx[next_tx].addr = (virt_to_phys(packet))|TX_DMA_ENABLE;
+	fifo_tx[next_tx].addr = (virt_to_phys((void *)(unsigned long)packet))|TX_DMA_ENABLE;
 	au_sync();
 
 	udelay(1);
@@ -208,7 +208,7 @@ static int au1x00_recv(struct eth_device* dev){
 			NetReceive(NetRxPackets[next_rx], length - 4);
 		}
 
-		fifo_rx[next_rx].addr = (virt_to_phys(NetRxPackets[next_rx]))|RX_DMA_ENABLE;
+		fifo_rx[next_rx].addr = (virt_to_phys((void *)(unsigned long)NetRxPackets[next_rx]))|RX_DMA_ENABLE;
 
 		next_rx++;
 		if(next_rx>=NO_OF_FIFOS){
@@ -249,7 +249,7 @@ static int au1x00_init(struct eth_device* dev, bd_t * bd){
 	for(i=0;i<NO_OF_FIFOS;i++){
 		fifo_tx[i].len = 0;
 		fifo_tx[i].addr = virt_to_phys(&txbuf[0]);
-		fifo_rx[i].addr = (virt_to_phys(NetRxPackets[i]))|RX_DMA_ENABLE;
+		fifo_rx[i].addr = (virt_to_phys((void *)(unsigned long)NetRxPackets[i]))|RX_DMA_ENABLE;
 	}
 
 	/* Put mac addr in little endian */


Well, what will we do?  Are there any othrer desirable fixes?

[1] http://lists.denx.de/pipermail/u-boot/2008-December/044960.html
    [PATCH 01/11] powerpc: fix io.h build warning with CONFIG_PHYS_64BIT

[2] http://lkml.org/lkml/2009/1/27/67
    Interestingly, this only happens with gcc-4.2; gcc <= 4.1 and gcc-4.3 are OK.

-- 
Shinya Kuribayashi
NEC Electronics

  reply	other threads:[~2009-01-30  0:27 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-28  5:44 [U-Boot] [PATCH] MIPS: Fix compile warning in au1x00_eth.c Stefan Roese
2009-01-28 14:39 ` Shinya Kuribayashi
2009-01-28 16:37   ` Stefan Roese
2009-01-30  0:27     ` Shinya Kuribayashi [this message]
2009-01-30 10:22       ` Stefan Roese
2009-02-22  5:24         ` [U-Boot] MIPS: Fix GCC-4.2 'discards qualifiers from pointer target type' warnings Shinya Kuribayashi
2009-02-22 20:16           ` Wolfgang Denk

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4982496B.80607@necel.com \
    --to=shinya.kuribayashi@necel.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox