+ *----------------------------------------------------------------------------*/
+int dio_init(void);
+irqreturn_t dio_isr(int irq, void *dev_id, struct pt_regs *regs);
-+static int dio_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg);
++static long dio_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
+static int dio_open(struct inode *inode, struct file *file);
+static int dio_release(struct inode *inode, struct file *file);
+
+
+/*----------------------------------------------------------------------------
+ *----------------------------------------------------------------------------*/
-+static int
-+dio_ioctl(struct inode *inode, struct file *file, unsigned int cmd,
++static long
++dio_ioctl(struct file *file, unsigned int cmd,
+ unsigned long arg)
+{
+ unsigned long flags;
+ DEFINE_SPINLOCK(driver_lock);
+ int val, mask, err;
+
-+ if (MINOR(inode->i_rdev) != OMS400DIO_MINOR) {
++ if (iminor(file->f_path.dentry->d_inode) != OMS400DIO_MINOR) {
+ return (-ENODEV);
+ }
+
+ *----------------------------------------------------------------------------*/
+int psw_init(void);
+irqreturn_t psw_isr(int irq, void *dev_id);
-+static int psw_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg);
++static long psw_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
+static int psw_open(struct inode *inode, struct file *file);
+static int psw_release(struct inode *inode, struct file *file);
+
+
+/*----------------------------------------------------------------------------
+ *----------------------------------------------------------------------------*/
-+static int
-+psw_ioctl(struct inode *inode, struct file *file, unsigned int cmd,
++static long
++psw_ioctl(struct file *file, unsigned int cmd,
+ unsigned long arg)
+{
+ unsigned long flags;
+ DEFINE_SPINLOCK(driver_lock);
+
-+ if (MINOR(inode->i_rdev) != PUSHSW_MINOR) {
++ if (iminor(file->f_path.dentry->d_inode) != PUSHSW_MINOR) {
+ return (-ENODEV);
+ }
+
+
+struct eepromi2c_private eepromi2c_conf[]=
+{
-+ {0x50, 0x200, 16, 0, NULL, NULL, NULL},
++ {0x50, 0x200, 16, 0, NULL, NULL},
+};
+
+#define MAXEEPROMDEVS (sizeof(eepromi2c_conf)/ sizeof(struct eepromi2c_private))
+ return 0;
+}
+
-+static int eepromi2c_ioctl(struct inode *inode, struct file *file,
++static long eepromi2c_ioctl(struct file *file,
+ unsigned int cmd, unsigned long arg)
+{
+ return -ENOTTY;