ide_ioreg_t arithmetic

From: Geert Uytterhoeven (geert@linux-m68k.org)
Date: Sun May 21 2000 - 14:51:29 EST


ide_ioreg_t may be a pointer, so we have to cast it to unsigned long before
or'ing it with 7. Present in all recent 2.3.x kernels.

--- drivers/ide/ide-probe.c.orig Sun Mar 19 22:15:57 2000
+++ drivers/ide/ide-probe.c Wed May 17 12:13:26 2000
@@ -428,8 +428,8 @@
 
 static void hwif_register (ide_hwif_t *hwif)
 {
- if ((hwif->io_ports[IDE_DATA_OFFSET] | 7) ==
- (hwif->io_ports[IDE_STATUS_OFFSET])) {
+ if (((unsigned long)hwif->io_ports[IDE_DATA_OFFSET] | 7) ==
+ ((unsigned long)hwif->io_ports[IDE_STATUS_OFFSET])) {
                 ide_request_region(hwif->io_ports[IDE_DATA_OFFSET], 8, hwif->name);
                 hwif->straight8 = 1;
                 goto jump_straight8;

Gr{oetje,eeting}s,

                                                Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue May 23 2000 - 21:00:20 EST