aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pcmcia
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pcmcia')
-rw-r--r--drivers/pcmcia/cistpl.c4
-rw-r--r--drivers/pcmcia/electra_cf.c9
-rw-r--r--drivers/pcmcia/m8xx_pcmcia.c7
-rw-r--r--drivers/pcmcia/pcmcia_ioctl.c17
4 files changed, 27 insertions, 10 deletions
diff --git a/drivers/pcmcia/cistpl.c b/drivers/pcmcia/cistpl.c
index 60d428be0b07..8844bc3e3118 100644
--- a/drivers/pcmcia/cistpl.c
+++ b/drivers/pcmcia/cistpl.c
@@ -1531,7 +1531,7 @@ static ssize_t pccard_extract_cis(struct pcmcia_socket *s, char *buf,
1531} 1531}
1532 1532
1533 1533
1534static ssize_t pccard_show_cis(struct kobject *kobj, 1534static ssize_t pccard_show_cis(struct file *filp, struct kobject *kobj,
1535 struct bin_attribute *bin_attr, 1535 struct bin_attribute *bin_attr,
1536 char *buf, loff_t off, size_t count) 1536 char *buf, loff_t off, size_t count)
1537{ 1537{
@@ -1562,7 +1562,7 @@ static ssize_t pccard_show_cis(struct kobject *kobj,
1562} 1562}
1563 1563
1564 1564
1565static ssize_t pccard_store_cis(struct kobject *kobj, 1565static ssize_t pccard_store_cis(struct file *filp, struct kobject *kobj,
1566 struct bin_attribute *bin_attr, 1566 struct bin_attribute *bin_attr,
1567 char *buf, loff_t off, size_t count) 1567 char *buf, loff_t off, size_t count)
1568{ 1568{
diff --git a/drivers/pcmcia/electra_cf.c b/drivers/pcmcia/electra_cf.c
index 2e59fe947d28..f94d8281cfb0 100644
--- a/drivers/pcmcia/electra_cf.c
+++ b/drivers/pcmcia/electra_cf.c
@@ -185,7 +185,7 @@ static int __devinit electra_cf_probe(struct of_device *ofdev,
185 const struct of_device_id *match) 185 const struct of_device_id *match)
186{ 186{
187 struct device *device = &ofdev->dev; 187 struct device *device = &ofdev->dev;
188 struct device_node *np = ofdev->node; 188 struct device_node *np = ofdev->dev.of_node;
189 struct electra_cf_socket *cf; 189 struct electra_cf_socket *cf;
190 struct resource mem, io; 190 struct resource mem, io;
191 int status; 191 int status;
@@ -357,8 +357,11 @@ static const struct of_device_id electra_cf_match[] = {
357MODULE_DEVICE_TABLE(of, electra_cf_match); 357MODULE_DEVICE_TABLE(of, electra_cf_match);
358 358
359static struct of_platform_driver electra_cf_driver = { 359static struct of_platform_driver electra_cf_driver = {
360 .name = (char *)driver_name, 360 .driver = {
361 .match_table = electra_cf_match, 361 .name = (char *)driver_name,
362 .owner = THIS_MODULE,
363 .of_match_table = electra_cf_match,
364 },
362 .probe = electra_cf_probe, 365 .probe = electra_cf_probe,
363 .remove = electra_cf_remove, 366 .remove = electra_cf_remove,
364}; 367};
diff --git a/drivers/pcmcia/m8xx_pcmcia.c b/drivers/pcmcia/m8xx_pcmcia.c
index 41cc954a5ffe..1a648b90b634 100644
--- a/drivers/pcmcia/m8xx_pcmcia.c
+++ b/drivers/pcmcia/m8xx_pcmcia.c
@@ -1298,8 +1298,11 @@ static const struct of_device_id m8xx_pcmcia_match[] = {
1298MODULE_DEVICE_TABLE(of, m8xx_pcmcia_match); 1298MODULE_DEVICE_TABLE(of, m8xx_pcmcia_match);
1299 1299
1300static struct of_platform_driver m8xx_pcmcia_driver = { 1300static struct of_platform_driver m8xx_pcmcia_driver = {
1301 .name = driver_name, 1301 .driver = {
1302 .match_table = m8xx_pcmcia_match, 1302 .name = driver_name,
1303 .owner = THIS_MODULE,
1304 .match_table = m8xx_pcmcia_match,
1305 },
1303 .probe = m8xx_probe, 1306 .probe = m8xx_probe,
1304 .remove = m8xx_remove, 1307 .remove = m8xx_remove,
1305}; 1308};
diff --git a/drivers/pcmcia/pcmcia_ioctl.c b/drivers/pcmcia/pcmcia_ioctl.c
index ef0c5f133691..d007a2a03830 100644
--- a/drivers/pcmcia/pcmcia_ioctl.c
+++ b/drivers/pcmcia/pcmcia_ioctl.c
@@ -813,8 +813,7 @@ static u_int ds_poll(struct file *file, poll_table *wait)
813 813
814/*====================================================================*/ 814/*====================================================================*/
815 815
816static int ds_ioctl(struct inode *inode, struct file *file, 816static int ds_ioctl(struct file *file, u_int cmd, u_long arg)
817 u_int cmd, u_long arg)
818{ 817{
819 struct pcmcia_socket *s; 818 struct pcmcia_socket *s;
820 void __user *uarg = (char __user *)arg; 819 void __user *uarg = (char __user *)arg;
@@ -1021,13 +1020,25 @@ free_out:
1021 return err; 1020 return err;
1022} /* ds_ioctl */ 1021} /* ds_ioctl */
1023 1022
1023static long ds_unlocked_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
1024{
1025 int ret;
1026
1027 lock_kernel();
1028 ret = ds_ioctl(file, cmd, arg);
1029 unlock_kernel();
1030
1031 return ret;
1032}
1033
1034
1024/*====================================================================*/ 1035/*====================================================================*/
1025 1036
1026static const struct file_operations ds_fops = { 1037static const struct file_operations ds_fops = {
1027 .owner = THIS_MODULE, 1038 .owner = THIS_MODULE,
1028 .open = ds_open, 1039 .open = ds_open,
1029 .release = ds_release, 1040 .release = ds_release,
1030 .ioctl = ds_ioctl, 1041 .unlocked_ioctl = ds_unlocked_ioctl,
1031 .read = ds_read, 1042 .read = ds_read,
1032 .write = ds_write, 1043 .write = ds_write,
1033 .poll = ds_poll, 1044 .poll = ds_poll,