aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/pcmcia/driver-changes.txt3
-rw-r--r--drivers/pcmcia/ds.c2
-rw-r--r--drivers/pcmcia/pcmcia_ioctl.c15
-rw-r--r--include/pcmcia/ds.h10
4 files changed, 6 insertions, 24 deletions
diff --git a/Documentation/pcmcia/driver-changes.txt b/Documentation/pcmcia/driver-changes.txt
index 3268a9ae7271..61bc4e943116 100644
--- a/Documentation/pcmcia/driver-changes.txt
+++ b/Documentation/pcmcia/driver-changes.txt
@@ -1,4 +1,7 @@
1This file details changes in 2.6 which affect PCMCIA card driver authors: 1This file details changes in 2.6 which affect PCMCIA card driver authors:
2* No dev_node_t (as of 2.6.35)
3 There is no more need to fill out a "dev_node_t" structure.
4
2* New IRQ request rules (as of 2.6.35) 5* New IRQ request rules (as of 2.6.35)
3 Instead of the old pcmcia_request_irq() interface, drivers may now 6 Instead of the old pcmcia_request_irq() interface, drivers may now
4 choose between: 7 choose between:
diff --git a/drivers/pcmcia/ds.c b/drivers/pcmcia/ds.c
index a2649c7b05bd..0e12d85dd723 100644
--- a/drivers/pcmcia/ds.c
+++ b/drivers/pcmcia/ds.c
@@ -371,8 +371,6 @@ static int pcmcia_device_remove(struct device *dev)
371 if (p_drv->remove) 371 if (p_drv->remove)
372 p_drv->remove(p_dev); 372 p_drv->remove(p_dev);
373 373
374 p_dev->dev_node = NULL;
375
376 /* check for proper unloading */ 374 /* check for proper unloading */
377 if (p_dev->_irq || p_dev->_io || p_dev->_locked) 375 if (p_dev->_irq || p_dev->_io || p_dev->_locked)
378 dev_printk(KERN_INFO, dev, 376 dev_printk(KERN_INFO, dev,
diff --git a/drivers/pcmcia/pcmcia_ioctl.c b/drivers/pcmcia/pcmcia_ioctl.c
index fe98aa9b1aef..a42a6c7be10a 100644
--- a/drivers/pcmcia/pcmcia_ioctl.c
+++ b/drivers/pcmcia/pcmcia_ioctl.c
@@ -571,7 +571,6 @@ static struct pci_bus *pcmcia_lookup_bus(struct pcmcia_socket *s)
571 571
572static int get_device_info(struct pcmcia_socket *s, bind_info_t *bind_info, int first) 572static int get_device_info(struct pcmcia_socket *s, bind_info_t *bind_info, int first)
573{ 573{
574 dev_node_t *node;
575 struct pcmcia_device *p_dev; 574 struct pcmcia_device *p_dev;
576 struct pcmcia_driver *p_drv; 575 struct pcmcia_driver *p_drv;
577 int ret = 0; 576 int ret = 0;
@@ -633,21 +632,13 @@ static int get_device_info(struct pcmcia_socket *s, bind_info_t *bind_info, int
633 goto err_put; 632 goto err_put;
634 } 633 }
635 634
636 if (first) 635 if (!first) {
637 node = p_dev->dev_node;
638 else
639 for (node = p_dev->dev_node; node; node = node->next)
640 if (node == bind_info->next)
641 break;
642 if (!node) {
643 ret = -ENODEV; 636 ret = -ENODEV;
644 goto err_put; 637 goto err_put;
645 } 638 }
646 639
647 strlcpy(bind_info->name, node->dev_name, DEV_NAME_LEN); 640 strlcpy(bind_info->name, dev_name(&p_dev->dev), DEV_NAME_LEN);
648 bind_info->major = node->major; 641 bind_info->next = NULL;
649 bind_info->minor = node->minor;
650 bind_info->next = node->next;
651 642
652 err_put: 643 err_put:
653 pcmcia_put_dev(p_dev); 644 pcmcia_put_dev(p_dev);
diff --git a/include/pcmcia/ds.h b/include/pcmcia/ds.h
index d18330b401b1..b4429f78b9c3 100644
--- a/include/pcmcia/ds.h
+++ b/include/pcmcia/ds.h
@@ -62,15 +62,6 @@ struct pcmcia_driver {
62int pcmcia_register_driver(struct pcmcia_driver *driver); 62int pcmcia_register_driver(struct pcmcia_driver *driver);
63void pcmcia_unregister_driver(struct pcmcia_driver *driver); 63void pcmcia_unregister_driver(struct pcmcia_driver *driver);
64 64
65/* Some drivers use dev_node_t to store char or block device information.
66 * Don't use this in new drivers, though.
67 */
68typedef struct dev_node_t {
69 char dev_name[DEV_NAME_LEN];
70 u_short major, minor;
71 struct dev_node_t *next;
72} dev_node_t;
73
74struct pcmcia_device { 65struct pcmcia_device {
75 /* the socket and the device_no [for multifunction devices] 66 /* the socket and the device_no [for multifunction devices]
76 uniquely define a pcmcia_device */ 67 uniquely define a pcmcia_device */
@@ -88,7 +79,6 @@ struct pcmcia_device {
88 struct list_head socket_device_list; 79 struct list_head socket_device_list;
89 80
90 /* deprecated, will be cleaned up soon */ 81 /* deprecated, will be cleaned up soon */
91 dev_node_t *dev_node;
92 u_int open; 82 u_int open;
93 io_req_t io; 83 io_req_t io;
94 config_req_t conf; 84 config_req_t conf;