return 0;
 }
 
-static void get_cmxucr_reg(unsigned int ucc_num, __be32 **cmxucr,
+static void get_cmxucr_reg(unsigned int ucc_num, __be32 __iomem **cmxucr,
        unsigned int *reg_num, unsigned int *shift)
 {
        unsigned int cmx = ((ucc_num & 1) << 1) + (ucc_num > 3);
 
 int ucc_mux_set_grant_tsa_bkpt(unsigned int ucc_num, int set, u32 mask)
 {
-       __be32 *cmxucr;
+       __be32 __iomem *cmxucr;
        unsigned int reg_num;
        unsigned int shift;
 
 int ucc_set_qe_mux_rxtx(unsigned int ucc_num, enum qe_clock clock,
        enum comm_dir mode)
 {
-       __be32 *cmxucr;
+       __be32 __iomem *cmxucr;
        unsigned int reg_num;
        unsigned int shift;
        u32 clock_bits = 0;
 
        printk(KERN_INFO "uccm  : addr=0x%p, val=0x%08x\n",
                  &uccf->uf_regs->uccm, in_be32(&uccf->uf_regs->uccm));
        printk(KERN_INFO "uccs  : addr=0x%p, val=0x%02x\n",
-                 &uccf->uf_regs->uccs, uccf->uf_regs->uccs);
+                 &uccf->uf_regs->uccs, in_8(&uccf->uf_regs->uccs));
        printk(KERN_INFO "urfb  : addr=0x%p, val=0x%08x\n",
                  &uccf->uf_regs->urfb, in_be32(&uccf->uf_regs->urfb));
        printk(KERN_INFO "urfs  : addr=0x%p, val=0x%04x\n",
        printk(KERN_INFO "urtry : addr=0x%p, val=0x%08x\n",
                  &uccf->uf_regs->urtry, in_be32(&uccf->uf_regs->urtry));
        printk(KERN_INFO "guemr : addr=0x%p, val=0x%02x\n",
-                 &uccf->uf_regs->guemr, uccf->uf_regs->guemr);
+                 &uccf->uf_regs->guemr, in_8(&uccf->uf_regs->guemr));
 }
 EXPORT_SYMBOL(ucc_fast_dump_regs);
 
 
 void ucc_fast_enable(struct ucc_fast_private * uccf, enum comm_dir mode)
 {
-       struct ucc_fast *uf_regs;
+       struct ucc_fast __iomem *uf_regs;
        u32 gumr;
 
        uf_regs = uccf->uf_regs;
 
 void ucc_fast_disable(struct ucc_fast_private * uccf, enum comm_dir mode)
 {
-       struct ucc_fast *uf_regs;
+       struct ucc_fast __iomem *uf_regs;
        u32 gumr;
 
        uf_regs = uccf->uf_regs;
 int ucc_fast_init(struct ucc_fast_info * uf_info, struct ucc_fast_private ** uccf_ret)
 {
        struct ucc_fast_private *uccf;
-       struct ucc_fast *uf_regs;
+       struct ucc_fast __iomem *uf_regs;
        u32 gumr;
        int ret;
 
        uccf->stopped_tx = 0;
        uccf->stopped_rx = 0;
        uf_regs = uccf->uf_regs;
-       uccf->p_ucce = (u32 *) & (uf_regs->ucce);
-       uccf->p_uccm = (u32 *) & (uf_regs->uccm);
+       uccf->p_ucce = &uf_regs->ucce;
+       uccf->p_uccm = &uf_regs->uccm;
 #ifdef CONFIG_UGETH_TX_ON_DEMAND
-       uccf->p_utodr = (u16 *) & (uf_regs->utodr);
+       uccf->p_utodr = &uf_regs->utodr;
 #endif
 #ifdef STATISTICS
        uccf->tx_frames = 0;
 
 
 struct ucc_fast_private {
        struct ucc_fast_info *uf_info;
-       struct ucc_fast *uf_regs;       /* a pointer to memory map of UCC regs. */
-       u32 *p_ucce;            /* a pointer to the event register in memory. */
-       u32 *p_uccm;            /* a pointer to the mask register in memory. */
+       struct ucc_fast __iomem *uf_regs; /* a pointer to the UCC regs. */
+       u32 __iomem *p_ucce;    /* a pointer to the event register in memory. */
+       u32 __iomem *p_uccm;    /* a pointer to the mask register in memory. */
 #ifdef CONFIG_UGETH_TX_ON_DEMAND
-       u16 *p_utodr;           /* pointer to the transmit on demand register */
+       u16 __iomem *p_utodr;   /* pointer to the transmit on demand register */
 #endif
        int enabled_tx;         /* Whether channel is enabled for Tx (ENT) */
        int enabled_rx;         /* Whether channel is enabled for Rx (ENR) */