unicore32 i8042: adjust io funcs of i8042-unicore32io.h
authorGuanXuetao <gxt@mprc.pku.edu.cn>
Fri, 18 Feb 2011 10:38:33 +0000 (18:38 +0800)
committerGuanXuetao <gxt@mprc.pku.edu.cn>
Thu, 17 Mar 2011 01:19:18 +0000 (09:19 +0800)
replace inb/outb with readb/writeb in i8042-unicore32io.h
and correct typecasting of register and region macros
  -- by advice with Arnd Bergmann

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
drivers/input/serio/i8042-unicore32io.h

index 6a7e8b3ce61a4834945ac54dda240477d97714d1..2cdd8726446fc15131e3089b49633d19548ca654 100644 (file)
 /*
  * Register numbers.
  */
-#define I8042_COMMAND_REG      ((unsigned long)&PS2_COMMAND)
-#define I8042_STATUS_REG       ((unsigned long)&PS2_STATUS)
-#define I8042_DATA_REG         ((unsigned long)&PS2_DATA)
+#define I8042_COMMAND_REG      ((volatile void __iomem *)&PS2_COMMAND)
+#define I8042_STATUS_REG       ((volatile void __iomem *)&PS2_STATUS)
+#define I8042_DATA_REG         ((volatile void __iomem *)&PS2_DATA)
+
+#define I8042_REGION_START     (resource_size_t)(&PS2_DATA)
+#define I8042_REGION_SIZE      (resource_size_t)(16)
 
 static inline int i8042_read_data(void)
 {
-       return inb(I8042_DATA_REG);
+       return readb(I8042_DATA_REG);
 }
 
 static inline int i8042_read_status(void)
 {
-       return inb(I8042_STATUS_REG);
+       return readb(I8042_STATUS_REG);
 }
 
 static inline void i8042_write_data(int val)
 {
-       outb(val, I8042_DATA_REG);
+       writeb(val, I8042_DATA_REG);
 }
 
 static inline void i8042_write_command(int val)
 {
-       outb(val, I8042_COMMAND_REG);
+       writeb(val, I8042_COMMAND_REG);
 }
 
 static inline int i8042_platform_init(void)
 {
-       if (!request_region(I8042_DATA_REG, 16, "i8042"))
+       if (!request_region(I8042_REGION_START, I8042_REGION_SIZE, "i8042"))
                return -EBUSY;
 
        i8042_reset = 1;
@@ -64,7 +67,7 @@ static inline int i8042_platform_init(void)
 
 static inline void i8042_platform_exit(void)
 {
-       release_region(I8042_DATA_REG, 16);
+       release_region(I8042_REGION_START, I8042_REGION_SIZE);
 }
 
 #endif /* _I8042_UNICORE32_H */