fix the gpio_dev driver: remove existing forward port patches, use unlocked_ioctl on all platforms and fix the arguments to the ioctl handler (based on patch from #9198)

SVN-Revision: 27322
master
Felix Fietkau 13 years ago
parent 07abf4a81e
commit a41f80bca1
  1. 6
      target/linux/generic/files/drivers/char/gpio_dev.c
  2. 11
      target/linux/generic/patches-2.6.36/411-gpio_ioctl.patch
  3. 11
      target/linux/generic/patches-2.6.37/834-gpio_ioctl.patch
  4. 11
      target/linux/generic/patches-2.6.38/834-gpio_ioctl.patch
  5. 11
      target/linux/generic/patches-2.6.39/834-gpio_ioctl.patch
  6. 11
      target/linux/generic/patches-3.0/834-gpio_ioctl.patch

@ -32,6 +32,7 @@
#include <linux/device.h>
#include <linux/platform_device.h>
#include <linux/gpio_dev.h>
#include <linux/fs.h>
#define DRVNAME "gpiodev"
#define DEVNAME "gpio"
@ -42,8 +43,7 @@ static struct class *gpiodev_class;
/* third argument of user space ioctl ('arg' here) contains the <pin> */
static int
gpio_ioctl(struct inode * inode, struct file * file, unsigned int cmd,
unsigned long arg)
gpio_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
{
int retval = 0;
@ -114,7 +114,7 @@ gpio_close(struct inode * inode, struct file * file)
}
struct file_operations gpio_fops = {
ioctl: gpio_ioctl,
unlocked_ioctl: gpio_ioctl,
open: gpio_open,
release: gpio_close
};

@ -1,11 +0,0 @@
--- a/drivers/char/gpio_dev.c
+++ b/drivers/char/gpio_dev.c
@@ -114,7 +114,7 @@ gpio_close(struct inode * inode, struct
}
struct file_operations gpio_fops = {
- ioctl: gpio_ioctl,
+ unlocked_ioctl: gpio_ioctl,
open: gpio_open,
release: gpio_close
};

@ -1,11 +0,0 @@
--- a/drivers/char/gpio_dev.c
+++ b/drivers/char/gpio_dev.c
@@ -114,7 +114,7 @@ gpio_close(struct inode * inode, struct
}
struct file_operations gpio_fops = {
- ioctl: gpio_ioctl,
+ unlocked_ioctl: gpio_ioctl,
open: gpio_open,
release: gpio_close
};

@ -1,11 +0,0 @@
--- a/drivers/char/gpio_dev.c
+++ b/drivers/char/gpio_dev.c
@@ -114,7 +114,7 @@ gpio_close(struct inode * inode, struct
}
struct file_operations gpio_fops = {
- ioctl: gpio_ioctl,
+ unlocked_ioctl: gpio_ioctl,
open: gpio_open,
release: gpio_close
};

@ -1,11 +0,0 @@
--- a/drivers/char/gpio_dev.c
+++ b/drivers/char/gpio_dev.c
@@ -114,7 +114,7 @@ gpio_close(struct inode * inode, struct
}
struct file_operations gpio_fops = {
- ioctl: gpio_ioctl,
+ unlocked_ioctl: gpio_ioctl,
open: gpio_open,
release: gpio_close
};

@ -1,11 +0,0 @@
--- a/drivers/char/gpio_dev.c
+++ b/drivers/char/gpio_dev.c
@@ -114,7 +114,7 @@ gpio_close(struct inode * inode, struct
}
struct file_operations gpio_fops = {
- ioctl: gpio_ioctl,
+ unlocked_ioctl: gpio_ioctl,
open: gpio_open,
release: gpio_close
};
Loading…
Cancel
Save