*/
 
 /* Ack all interrupt on CSR and IRQSTATUS_L0 */
-static void omap24xxcam_dmahw_ack_all(unsigned long base)
+static void omap24xxcam_dmahw_ack_all(void __iomem *base)
 {
        u32 csr;
        int i;
 }
 
 /* Ack dmach on CSR and IRQSTATUS_L0 */
-static u32 omap24xxcam_dmahw_ack_ch(unsigned long base, int dmach)
+static u32 omap24xxcam_dmahw_ack_ch(void __iomem *base, int dmach)
 {
        u32 csr;
 
        return csr;
 }
 
-static int omap24xxcam_dmahw_running(unsigned long base, int dmach)
+static int omap24xxcam_dmahw_running(void __iomem *base, int dmach)
 {
        return omap24xxcam_reg_in(base, CAMDMA_CCR(dmach)) & CAMDMA_CCR_ENABLE;
 }
 
-static void omap24xxcam_dmahw_transfer_setup(unsigned long base, int dmach,
+static void omap24xxcam_dmahw_transfer_setup(void __iomem *base, int dmach,
                                             dma_addr_t start, u32 len)
 {
        omap24xxcam_reg_out(base, CAMDMA_CCR(dmach),
                            | CAMDMA_CICR_DROP_IE);
 }
 
-static void omap24xxcam_dmahw_transfer_start(unsigned long base, int dmach)
+static void omap24xxcam_dmahw_transfer_start(void __iomem *base, int dmach)
 {
        omap24xxcam_reg_out(base, CAMDMA_CCR(dmach),
                            CAMDMA_CCR_SEL_SRC_DST_SYNC
                            | CAMDMA_CCR_SYNCHRO_CAMERA);
 }
 
-static void omap24xxcam_dmahw_transfer_chain(unsigned long base, int dmach,
+static void omap24xxcam_dmahw_transfer_chain(void __iomem *base, int dmach,
                                             int free_dmach)
 {
        int prev_dmach, ch;
  * controller may not be idle after this routine completes, because
  * the completion routines might start new transfers.
  */
-static void omap24xxcam_dmahw_abort_ch(unsigned long base, int dmach)
+static void omap24xxcam_dmahw_abort_ch(void __iomem *base, int dmach)
 {
        /* mask all interrupts from this channel */
        omap24xxcam_reg_out(base, CAMDMA_CICR(dmach), 0);
        omap24xxcam_reg_merge(base, CAMDMA_CCR(dmach), 0, CAMDMA_CCR_ENABLE);
 }
 
-static void omap24xxcam_dmahw_init(unsigned long base)
+static void omap24xxcam_dmahw_init(void __iomem *base)
 {
        omap24xxcam_reg_out(base, CAMDMA_OCP_SYSCONFIG,
                            CAMDMA_OCP_SYSCONFIG_MIDLEMODE_FSTANDBY
 }
 
 static void omap24xxcam_dma_init(struct omap24xxcam_dma *dma,
-                                unsigned long base)
+                                void __iomem *base)
 {
        int ch;
 
 }
 
 void omap24xxcam_sgdma_init(struct omap24xxcam_sgdma *sgdma,
-                           unsigned long base,
+                           void __iomem *base,
                            void (*reset_callback)(unsigned long data),
                            unsigned long reset_callback_data)
 {
 
 struct omap24xxcam_dma {
        spinlock_t lock;        /* Lock for the whole structure. */
 
-       unsigned long base;     /* base address for dma controller */
+       void __iomem *base;     /* base address for dma controller */
 
        /* While dma_stop!=0, an attempt to start a new DMA transfer will
         * fail.
 
        /*** hardware resources ***/
        unsigned int irq;
-       unsigned long mmio_base;
+       void __iomem *mmio_base;
        unsigned long mmio_base_phys;
        unsigned long mmio_size;
 
  *
  */
 
-static inline u32 omap24xxcam_reg_in(unsigned long base, u32 offset)
+static inline u32 omap24xxcam_reg_in(u32 __iomem *base, u32 offset)
 {
        return readl(base + offset);
 }
 
-static inline u32 omap24xxcam_reg_out(unsigned long base, u32 offset,
+static inline u32 omap24xxcam_reg_out(u32 __iomem *base, u32 offset,
                                          u32 val)
 {
        writel(val, base + offset);
        return val;
 }
 
-static inline u32 omap24xxcam_reg_merge(unsigned long base, u32 offset,
+static inline u32 omap24xxcam_reg_merge(u32 __iomem *base, u32 offset,
                                            u32 val, u32 mask)
 {
-       u32 addr = base + offset;
+       u32 __iomem *addr = base + offset;
        u32 new_val = (readl(addr) & ~mask) | (val & mask);
 
        writel(new_val, addr);
                            int len, sgdma_callback_t callback, void *arg);
 void omap24xxcam_sgdma_sync(struct omap24xxcam_sgdma *sgdma);
 void omap24xxcam_sgdma_init(struct omap24xxcam_sgdma *sgdma,
-                           unsigned long base,
+                           void __iomem *base,
                            void (*reset_callback)(unsigned long data),
                            unsigned long reset_callback_data);
 void omap24xxcam_sgdma_exit(struct omap24xxcam_sgdma *sgdma);