};
 
 struct resource kram_resources[] = {
-       { "Kernel code", 0, 0 },        /* These must be last in the array */
-       { "Kernel data", 0, 0 }         /* These must be last in the array */
+       /* These must be last in the array */
+       { .name = "Kernel code", .start = 0, .end = 0 },
+       /* These must be last in the array */
+       { .name = "Kernel data", .start = 0, .end = 0 }
 };
 
 struct resource xram_resources[] = {
 
                if (p + 32 >= e)        /* Better than nothing */
                        break;
                if ((nm = r->name) == 0) nm = "???";
-               p += sprintf(p, "%08lx-%08lx: %s\n", r->start, r->end, nm);
+               p += sprintf(p, "%08lx-%08lx: %s\n",
+                            (unsigned long)r->start,
+                            (unsigned long)r->end, nm);
        }
 
        return p-buf;
 
        h8300_sci_enable(port, sci_enable);
 #endif
 #elif defined(CONFIG_SUPERH64)
-       port->uartclk = current_cpu_info.module_clock * 16;
+       port->uartclk = current_cpu_data.module_clock * 16;
 #else
        {
                struct clk *clk = clk_get("module_clk");
 #if defined(__H8300H__) || defined(__H8300S__)
                        sciport->port.uartclk = CONFIG_CPU_CLOCK;
 #elif defined(CONFIG_SUPERH64)
-                       sciport->port.uartclk = current_cpu_info.module_clock * 16;
+                       sciport->port.uartclk = current_cpu_data.module_clock * 16;
 #else
                        struct clk *clk = clk_get("module_clk");
                        sciport->port.uartclk = clk_get_rate(clk) * 16;
 
 
 #include <asm/types.h>
 
-static __inline__ __const__ __u32 ___arch__swab32(__u32 x)
+static inline __attribute_const__ __u32 ___arch__swab32(__u32 x)
 {
        __asm__("byterev        %0, %0\n\t"
                "shari          %0, 32, %0"
        return x;
 }
 
-static __inline__ __const__ __u16 ___arch__swab16(__u16 x)
+static inline __attribute_const__ __u16 ___arch__swab16(__u16 x)
 {
        __asm__("byterev        %0, %0\n\t"
                "shari          %0, 48, %0"
 
 static inline void dma_sync_single_for_cpu(struct device *dev,
                                           dma_addr_t dma_handle, size_t size,
                                           enum dma_data_direction dir)
-       __attribute__ ((alias("dma_sync_single")));
+{
+       dma_sync_single(dev, dma_handle, size, dir);
+}
 
 static inline void dma_sync_single_for_device(struct device *dev,
                                           dma_addr_t dma_handle, size_t size,
                                           enum dma_data_direction dir)
-       __attribute__ ((alias("dma_sync_single")));
+{
+       dma_sync_single(dev, dma_handle, size, dir);
+}
 
 static inline void dma_sync_sg_for_cpu(struct device *dev,
                                       struct scatterlist *sg, int nelems,
                                       enum dma_data_direction dir)
-       __attribute__ ((alias("dma_sync_sg")));
+{
+       dma_sync_sg(dev, sg, nelems, dir);
+}
 
 static inline void dma_sync_sg_for_device(struct device *dev,
                                       struct scatterlist *sg, int nelems,
                                       enum dma_data_direction dir)
-       __attribute__ ((alias("dma_sync_sg")));
+{
+       dma_sync_sg(dev, sg, nelems, dir);
+}
 
 static inline int dma_get_cache_alignment(void)
 {
 
 void outsl(unsigned long port, const void *addr, unsigned long count);
 void insl(unsigned long port, void *addr, unsigned long count);
 
+#define __raw_readb            readb
+#define __raw_readw            readw
+#define __raw_readl            readl
+#define __raw_writeb           writeb
+#define __raw_writew           writew
+#define __raw_writel           writel
+
 void memcpy_toio(void __iomem *to, const void *from, long count);
 void memcpy_fromio(void *to, void __iomem *from, long count);
 
 
 #ifdef __KERNEL__
 #define user_mode(regs) (((regs)->sr & 0x40000000)==0)
 #define instruction_pointer(regs) ((regs)->pc)
-#define profile_pc(regs) instruction_pointer(regs)
+#define profile_pc(regs) ((unsigned long)instruction_pointer(regs))
 extern void show_regs(struct pt_regs *);
 #endif
 
 
 #define smp_read_barrier_depends()     do { } while (0)
 #endif /* CONFIG_SMP */
 
-#define set_rmb(var, value) do { xchg(&var, value); } while (0)
+#define set_rmb(var, value) do { (void)xchg(&var, value); } while (0)
 #define set_mb(var, value) set_rmb(var, value)
 
 /* Interrupt Control */
 
 
 #define __get_user_nocheck(x,ptr,size)                         \
 ({                                                             \
-       long __gu_addr = (long)(ptr);                           \
-       long __gu_err;                                          \
-       __typeof(*(ptr)) __gu_val;                              \
-       __asm__ ("":"=r" (__gu_val));                           \
-       __asm__ ("":"=r" (__gu_err));                           \
-       __get_user_size((void *)&__gu_val, __gu_addr, (size), __gu_err); \
-       (x) = (__typeof__(*(ptr))) __gu_val;                    \
+       long __gu_err, __gu_val;                                \
+       __get_user_size((void *)&__gu_val, (long)(ptr),         \
+                       (size), __gu_err);                      \
+       (x) = (__typeof__(*(ptr)))__gu_val;                     \
        __gu_err;                                               \
 })
 
 #define __get_user_check(x,ptr,size)                           \
 ({                                                             \
        long __gu_addr = (long)(ptr);                           \
-       long __gu_err = -EFAULT;                                \
-       __typeof(*(ptr)) __gu_val;                              \
-       __asm__ ("":"=r" (__gu_val));                           \
-       __asm__ ("":"=r" (__gu_err));                           \
+       long __gu_err = -EFAULT, __gu_val;                      \
        if (__access_ok(__gu_addr, (size)))                     \
-               __get_user_size((void *)&__gu_val, __gu_addr, (size), __gu_err); \
+               __get_user_size((void *)&__gu_val, __gu_addr,   \
+                               (size), __gu_err);              \
        (x) = (__typeof__(*(ptr))) __gu_val;                    \
        __gu_err;                                               \
 })