* [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).