linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH -mm] sata_vsc gcc 4.1 warning fix
@ 2006-05-10  2:56 Daniel Walker
  2006-05-10  4:20 ` Tejun Heo
  0 siblings, 1 reply; 4+ messages in thread
From: Daniel Walker @ 2006-05-10  2:56 UTC (permalink / raw)
  To: akpm; +Cc: jeremy, linux-ide, linux-kernel

Fixes the following warning,

drivers/scsi/sata_vsc.c:152: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:153: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:154: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:155: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:156: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:158: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:159: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:160: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:161: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:162: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:166: warning: passing argument 2 of 'writeb' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c: In function 'vsc_sata_tf_read':
drivers/scsi/sata_vsc.c:178: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:179: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:180: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:181: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:182: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:183: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c: In function 'vsc_sata_setup_port':
drivers/scsi/sata_vsc.c:320: warning: passing argument 2 of 'writel' makes pointer from integer without a cast
drivers/scsi/sata_vsc.c:321: warning: passing argument 2 of 'writel' makes pointer from integer without a cast

Signed-Off-By: Daniel Walker <dwalker@mvista.com>

Index: linux-2.6.16/drivers/scsi/sata_vsc.c
===================================================================
--- linux-2.6.16.orig/drivers/scsi/sata_vsc.c
+++ linux-2.6.16/drivers/scsi/sata_vsc.c
@@ -149,21 +149,21 @@ static void vsc_sata_tf_load(struct ata_
 		vsc_intr_mask_update(ap, tf->ctl & ATA_NIEN);
 	}
 	if (is_addr && (tf->flags & ATA_TFLAG_LBA48)) {
-		writew(tf->feature | (((u16)tf->hob_feature) << 8), ioaddr->feature_addr);
-		writew(tf->nsect | (((u16)tf->hob_nsect) << 8), ioaddr->nsect_addr);
-		writew(tf->lbal | (((u16)tf->hob_lbal) << 8), ioaddr->lbal_addr);
-		writew(tf->lbam | (((u16)tf->hob_lbam) << 8), ioaddr->lbam_addr);
-		writew(tf->lbah | (((u16)tf->hob_lbah) << 8), ioaddr->lbah_addr);
+		writew(tf->feature | (((u16)tf->hob_feature) << 8), (void *)ioaddr->feature_addr);
+		writew(tf->nsect | (((u16)tf->hob_nsect) << 8), (void *)ioaddr->nsect_addr);
+		writew(tf->lbal | (((u16)tf->hob_lbal) << 8), (void *)ioaddr->lbal_addr);
+		writew(tf->lbam | (((u16)tf->hob_lbam) << 8), (void *)ioaddr->lbam_addr);
+		writew(tf->lbah | (((u16)tf->hob_lbah) << 8), (void *)ioaddr->lbah_addr);
 	} else if (is_addr) {
-		writew(tf->feature, ioaddr->feature_addr);
-		writew(tf->nsect, ioaddr->nsect_addr);
-		writew(tf->lbal, ioaddr->lbal_addr);
-		writew(tf->lbam, ioaddr->lbam_addr);
-		writew(tf->lbah, ioaddr->lbah_addr);
+		writew(tf->feature, (void *)ioaddr->feature_addr);
+		writew(tf->nsect, (void *)ioaddr->nsect_addr);
+		writew(tf->lbal, (void *)ioaddr->lbal_addr);
+		writew(tf->lbam, (void *)ioaddr->lbam_addr);
+		writew(tf->lbah, (void *)ioaddr->lbah_addr);
 	}
 
 	if (tf->flags & ATA_TFLAG_DEVICE)
-		writeb(tf->device, ioaddr->device_addr);
+		writeb(tf->device, (void *)ioaddr->device_addr);
 
 	ata_wait_idle(ap);
 }
@@ -175,12 +175,12 @@ static void vsc_sata_tf_read(struct ata_
 	u16 nsect, lbal, lbam, lbah, feature;
 
 	tf->command = ata_check_status(ap);
-	tf->device = readw(ioaddr->device_addr);
-	feature = readw(ioaddr->error_addr);
-	nsect = readw(ioaddr->nsect_addr);
-	lbal = readw(ioaddr->lbal_addr);
-	lbam = readw(ioaddr->lbam_addr);
-	lbah = readw(ioaddr->lbah_addr);
+	tf->device = readw((void *)ioaddr->device_addr);
+	feature = readw((void *)ioaddr->error_addr);
+	nsect = readw((void *)ioaddr->nsect_addr);
+	lbal = readw((void *)ioaddr->lbal_addr);
+	lbam = readw((void *)ioaddr->lbam_addr);
+	lbah = readw((void *)ioaddr->lbah_addr);
 
 	tf->feature = feature;
 	tf->nsect = nsect;
@@ -317,8 +317,8 @@ static void __devinit vsc_sata_setup_por
 	port->ctl_addr		= base + VSC_SATA_TF_CTL_OFFSET;
 	port->bmdma_addr	= base + VSC_SATA_DMA_CMD_OFFSET;
 	port->scr_addr		= base + VSC_SATA_SCR_STATUS_OFFSET;
-	writel(0, base + VSC_SATA_UP_DESCRIPTOR_OFFSET);
-	writel(0, base + VSC_SATA_UP_DATA_BUFFER_OFFSET);
+	writel(0, (void *)(base + VSC_SATA_UP_DESCRIPTOR_OFFSET));
+	writel(0, (void *)(base + VSC_SATA_UP_DATA_BUFFER_OFFSET));
 }
 
 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH -mm] sata_vsc gcc 4.1 warning fix
  2006-05-10  2:56 [PATCH -mm] sata_vsc gcc 4.1 warning fix Daniel Walker
@ 2006-05-10  4:20 ` Tejun Heo
  2006-05-10  4:38   ` Daniel Walker
  0 siblings, 1 reply; 4+ messages in thread
From: Tejun Heo @ 2006-05-10  4:20 UTC (permalink / raw)
  To: Daniel Walker; +Cc: akpm, jeremy, linux-ide, linux-kernel

Daniel Walker wrote:
> Fixes the following warning,
> 
> drivers/scsi/sata_vsc.c:152: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:153: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:154: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:155: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:156: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:158: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:159: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:160: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:161: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:162: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:166: warning: passing argument 2 of 'writeb' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c: In function 'vsc_sata_tf_read':
> drivers/scsi/sata_vsc.c:178: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:179: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:180: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:181: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:182: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:183: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c: In function 'vsc_sata_setup_port':
> drivers/scsi/sata_vsc.c:320: warning: passing argument 2 of 'writel' makes pointer from integer without a cast
> drivers/scsi/sata_vsc.c:321: warning: passing argument 2 of 'writel' makes pointer from integer without a cast
> 
> Signed-Off-By: Daniel Walker <dwalker@mvista.com>
> 

Hello, Daniel.

This fix comes up every so often and I have submitted almost identical 
patch several months ago.  Unfortunately, it's not the proper fix and 
won't be accepted.  All those read/writeX()'s and in/outX()'s are 
scheduled (for a looooong time) to be converted to new unified 
ioread/writeX()'s.  Things are in progress (well, or halt) in the #iomap 
branch of libata-dev devel tree.  libata needs some updates in host 
initialization part for this conversion to complete.

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH -mm] sata_vsc gcc 4.1 warning fix
  2006-05-10  4:20 ` Tejun Heo
@ 2006-05-10  4:38   ` Daniel Walker
  2006-05-10  4:45     ` Tejun Heo
  0 siblings, 1 reply; 4+ messages in thread
From: Daniel Walker @ 2006-05-10  4:38 UTC (permalink / raw)
  To: Tejun Heo; +Cc: akpm, jeremy, linux-ide, linux-kernel

On Wed, 2006-05-10 at 13:20 +0900, Tejun Heo wrote:
> Daniel Walker wrote:
> > Fixes the following warning,
> > 
> > drivers/scsi/sata_vsc.c:152: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:153: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:154: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:155: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:156: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:158: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:159: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:160: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:161: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:162: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:166: warning: passing argument 2 of 'writeb' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c: In function 'vsc_sata_tf_read':
> > drivers/scsi/sata_vsc.c:178: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:179: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:180: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:181: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:182: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:183: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c: In function 'vsc_sata_setup_port':
> > drivers/scsi/sata_vsc.c:320: warning: passing argument 2 of 'writel' makes pointer from integer without a cast
> > drivers/scsi/sata_vsc.c:321: warning: passing argument 2 of 'writel' makes pointer from integer without a cast
> > 
> > Signed-Off-By: Daniel Walker <dwalker@mvista.com>
> > 
> 
> Hello, Daniel.
> 
> This fix comes up every so often and I have submitted almost identical 
> patch several months ago.  Unfortunately, it's not the proper fix and 
> won't be accepted.  All those read/writeX()'s and in/outX()'s are 
> scheduled (for a looooong time) to be converted to new unified 
> ioread/writeX()'s.  Things are in progress (well, or halt) in the #iomap 
> branch of libata-dev devel tree.  libata needs some updates in host 
> initialization part for this conversion to complete.

I guess subconsciously I knew as much, but I've seen warning like these
during compiles for a very very very long time .. Considering how
trivial it is to silence them I don't see why it shouldn't be accepted .
The "right" fix should have arrived by now ..

Daniel


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH -mm] sata_vsc gcc 4.1 warning fix
  2006-05-10  4:38   ` Daniel Walker
@ 2006-05-10  4:45     ` Tejun Heo
  0 siblings, 0 replies; 4+ messages in thread
From: Tejun Heo @ 2006-05-10  4:45 UTC (permalink / raw)
  To: Daniel Walker; +Cc: akpm, jeremy, linux-ide, linux-kernel

Daniel Walker wrote:
> On Wed, 2006-05-10 at 13:20 +0900, Tejun Heo wrote:
>> Daniel Walker wrote:
>>> Fixes the following warning,
>>>
>>> drivers/scsi/sata_vsc.c:152: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:153: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:154: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:155: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:156: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:158: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:159: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:160: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:161: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:162: warning: passing argument 2 of 'writew' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:166: warning: passing argument 2 of 'writeb' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c: In function 'vsc_sata_tf_read':
>>> drivers/scsi/sata_vsc.c:178: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:179: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:180: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:181: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:182: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:183: warning: passing argument 1 of 'readw' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c: In function 'vsc_sata_setup_port':
>>> drivers/scsi/sata_vsc.c:320: warning: passing argument 2 of 'writel' makes pointer from integer without a cast
>>> drivers/scsi/sata_vsc.c:321: warning: passing argument 2 of 'writel' makes pointer from integer without a cast
>>>
>>> Signed-Off-By: Daniel Walker <dwalker@mvista.com>
>>>
>> Hello, Daniel.
>>
>> This fix comes up every so often and I have submitted almost identical 
>> patch several months ago.  Unfortunately, it's not the proper fix and 
>> won't be accepted.  All those read/writeX()'s and in/outX()'s are 
>> scheduled (for a looooong time) to be converted to new unified 
>> ioread/writeX()'s.  Things are in progress (well, or halt) in the #iomap 
>> branch of libata-dev devel tree.  libata needs some updates in host 
>> initialization part for this conversion to complete.
> 
> I guess subconsciously I knew as much, but I've seen warning like these
> during compiles for a very very very long time .. Considering how
> trivial it is to silence them I don't see why it shouldn't be accepted .
> The "right" fix should have arrived by now ..
> 

Well, it was Jeff's (the maintainer) call.  The warning messages bug me
too but I sort of understand Jeff's decision as the bugging actually
reminds me of the problem every time I build libata.  Well, let's hope
iomap gets completed in not too distant future

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-05-10  4:45 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-05-10  2:56 [PATCH -mm] sata_vsc gcc 4.1 warning fix Daniel Walker
2006-05-10  4:20 ` Tejun Heo
2006-05-10  4:38   ` Daniel Walker
2006-05-10  4:45     ` Tejun Heo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).