static unsigned cardtype_c = 1;
 static unsigned tuner_c = 1;
 static unsigned radio_c = 1;
-static int mmio_ndelay_c = 1;
+static unsigned mmio_ndelay_c = 1;
 static char pal[] = "--";
 static char secam[] = "--";
 static char ntsc[] = "-";
 
 void cx18_memcpy_fromio(struct cx18 *cx, void *to,
                        const void __iomem *from, unsigned int len)
 {
-       const u8 *src = from;
+       const u8 __iomem *src = from;
        u8 *dst = to;
 
        /* Align reads on the CX23418's addresses */
 
 void cx18_memset_io(struct cx18 *cx, void __iomem *addr, int val, size_t count)
 {
-       u8 *dst = addr;
+       u8 __iomem *dst = addr;
        u16 val2 = val | (val << 8);
        u32 val4 = val2 | (val2 << 16);